


Schauen Sie sich einige Fehler an, die selbst Python-Experten nicht schreiben können
Für diejenigen, die gerade erst mit Pythonista beginnen, werden sie beim Ausführen des Codes während des Lernprozesses mehr oder weniger auf einige Fehler stoßen, was zunächst schwierig erscheinen kann. Wenn sich die Menge an Code ansammelt, macht Übung den Meister und Sie können das ursprüngliche Problem schnell lokalisieren, wenn Laufzeitfehler auftreten. Hier sind einige 17 häufige Fehler. Wenn der von Ihnen geschriebene Code diese Fehler nicht aufweist, werden Ihre Python-Kenntnisse ein höheres Niveau erreichen. Mit anderen Worten: Wenn Sie ein qualifizierter Python-Entwickler werden, sind Sie möglicherweise nicht in der Lage, Fehler wie „kann nicht einmal schreiben“ zu machen.
Kostenlose Lernempfehlung: Python-Video-Tutorial
1,
Vergessen, :
am Ende von if, for, def, elif, else, class und anderen Anweisungen hinzuzufügen, führt zu „SyntaxError: ungültige Syntax“ wie folgt:
if spam == 42 print('Hello!')
2,
Die Verwendung von = anstelle von ==
führt auch zu „SyntaxError: ungültige Syntax“
= ist ein Zuweisungsoperator und == ist eine Gleichheitsvergleichsoperation . Dieser Fehler tritt im folgenden Code auf:
if spam = 42: print('Hello!')
3,
Eine falsche Verwendung der Einrückung
führt zu „IndentationError: unerwarteter Einzug“, „IndentationError: unindent entspricht keiner äußeren Einrückungsebene“ und „Einrückungsfehler: erwartet Eingerückter Block“
Denken Sie daran, dass die Einrückungserhöhung erst nach der Anweisung verwendet wird, die mit: endet, und dann auf das vorherige Einrückungsformat zurückgesetzt werden muss. Dieser Fehler tritt im folgenden Code auf:
print('Hello!') print('Howdy!')
oder:
if spam == 42: print('Hello!') print('Howdy!')
4,
Das Vergessen, len() in der for-Schleifenanweisung aufzurufen, führt zu „TypeError: ‚list‘-Objekt kann nicht als Ganzzahl interpretiert werden „
Normalerweise möchten Sie die Elemente einer Liste oder Zeichenfolge nach Index iterieren, was den Aufruf der Funktion range() erfordert. Denken Sie daran, den len-Wert anstelle der Liste zurückzugeben.
Dieser Fehler tritt im folgenden Code auf:
spam = ['cat', 'dog', 'mouse'] for i in range(spam): print(spam[i])
Der Versuch, den Wert der Zeichenfolge
zu ändern, führt zu „TypeError: 'str'-Objekt unterstützt keine Elementzuweisung“
String ist ein unveränderlicher Datenwert Geben Sie ein, dieser Fehler tritt im folgenden Code auf:
spam = 'I have a pet cat.' spam[13] = 'r' print(spam)
Der richtige Ansatz ist:
spam = 'I have a pet cat.' spam = spam[:13] + 'r' + spam[14:] print(spam)
Der Versuch, einen Nicht-String-Wert mit einem String
zu verketten, führt zu „TypeError: Kann nicht konvertiert werden“ int' object to str implicitly"
Dieser Fehler tritt im folgenden Code auf:
numEggs = 12 print('I have ' + numEggs + ' eggs.')
Der richtige Ansatz ist:
numEggs = 12 print('I have ' + str(numEggs) + ' eggs.') numEggs = 12 print('I have %s eggs.' % (numEggs))
Das Vergessen, am Anfang und Ende der Zeichenfolge Anführungszeichen hinzuzufügen
führt zu „SyntaxError: EOL while scanning string literal“
Dieser Fehler tritt im folgenden Code auf:
print(Hello!') print('Hello!) myName = 'Al' print('My name is ' + myName + . How are you?')
Der Variablen- oder Funktionsname ist falsch geschrieben
was zu „NameError: name 'fooba' is not definiert "
Dieser Fehler tritt im folgenden Code auf:
foobar = 'Al' print('My name is ' + fooba) spam = ruond(4.2) spam = Round(4.2)
Der Methodenname ist falsch geschrieben
, was zu „AttributeError: 'str' object has no attribute 'lowerr'" führt.
Dieser Fehler tritt in auf folgender Code:
spam = 'THIS IS IN LOWERCASE.' spam = spam.lowerr()
Referenzen überschreiten den maximalen Listenindex
führt zu „IndexError: Listenindex außerhalb des gültigen Bereichs“
Dieser Fehler tritt im folgenden Code auf:
spam = ['cat', 'dog', 'mouse'] print(spam[6])
Using Ein nicht vorhandener Wörterbuchschlüsselwert
führt zu „KeyError: 'spam'“
Dieser Fehler tritt im folgenden Code auf:
spam = {'cat': 'Zophie', 'dog': 'Basil', 'mouse': 'Whiskers'} print('The name of my pet zebra is ' + spam['zebra'])
Der Versuch, ein Python-Schlüsselwort als Variablennamen zu verwenden
Ergebnisse in „SyntaxError: invalid syntax“
Python-Schlüssel kann nicht als Variablenname verwendet werden, dieser Fehler tritt im folgenden Code auf:
class = 'algebra' Python3的关键字有:and, as, assert, break, class, continue, def, del, elif, else, except, False, finally, for, from, global, if, import, in, is, lambda, None, nonlocal, not, or, pass, raise, return, True, try, while, with, yield
Die Verwendung des Inkrementoperators
in einer neuen Variablendefinition führt zu „ NameError: Name 'foobar' ist nicht definiert"
Verwenden Sie keine 0- oder Nullzeichen, wenn Sie Variablen String als Anfangswert deklarieren, sodass der Satz spam += 1 unter Verwendung des Inkrementoperators gleich spam = spam + 1 ist bedeutet, dass Spam einen gültigen Anfangswert angeben muss.
Dieser Fehler tritt im folgenden Code auf:
spam = 0 spam += 42 eggs += 42
Verwendung lokaler Variablen in einer Funktion vor der Definition lokaler Variablen (zu diesem Zeitpunkt gibt es eine globale Variable mit demselben Namen wie die lokale Variable)
Ergebnis in „UnboundLocalError: Auf die lokale Variable ‚foobar‘ wird vor der Zuweisung verwiesen“
Es ist sehr kompliziert, wenn eine lokale Variable in einer Funktion verwendet wird und gleichzeitig eine globale Variable mit demselben Namen vorhanden ist. Die Verwendungsregel lautet: Wenn überhaupt in der Funktion definiert, wenn sie nur in der Funktion verwendet wird, handelt es sich um eine lokale Variable, andernfalls handelt es sich um eine globale Variable.
Das bedeutet, dass Sie es nicht als globale Variable in einer Funktion verwenden können, bevor Sie es definiert haben.
Der Fehler tritt in Code auf wie:
someVar = 42 def myFunction(): print(someVar) someVar = 100 myFunction()
Der Versuch, mit range() eine Liste von Ganzzahlen zu erstellen
führt zu „TypeError: 'range'-Objekt unterstützt keine Elementzuweisung“
Manchmal auch Ich möchte eine geordnete Liste von Ganzzahlen erhalten, daher scheint range() eine gute Möglichkeit zu sein, diese Liste zu generieren. Sie müssen jedoch bedenken, dass range() ein „Range-Objekt“ zurückgibt, nicht den tatsächlichen Listenwert.
Dieser Fehler tritt im folgenden Code auf:
spam = range(10) spam[4] = -1 正确写法: spam = list(range(10)) spam[4] = -1
(注意:在 Python 2 中 spam = range(10) 是能行的,因为在 Python 2 中 range() 返回的是list值,但是在 Python 3 中就会产生以上错误)
16、
不存在 ++ 或者 -- 自增自减操作符。
导致“SyntaxError: invalid syntax”
如果你习惯于例如 C++ , Java , PHP 等其他的语言,也许你会想要尝试使用 ++ 或者 -- 自增自减一个变量。在Python中是没有这样的操作符的。
该错误发生在如下代码中:
spam = 1spam++ 正确写法: spam = 1spam += 1
17、
忘记为方法的第一个参数添加self参数
导致“TypeError: myMethod() takes no arguments (1 given)”
该错误发生在如下代码中:
class Foo(): def myMethod(): print('Hello!') a = Foo() a.myMethod()
相关免费学习推荐:python教程(视频)
Das obige ist der detaillierte Inhalt vonSchauen Sie sich einige Fehler an, die selbst Python-Experten nicht schreiben können. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen





PHP ist hauptsächlich prozedurale Programmierung, unterstützt aber auch die objektorientierte Programmierung (OOP). Python unterstützt eine Vielzahl von Paradigmen, einschließlich OOP, funktionaler und prozeduraler Programmierung. PHP ist für die Webentwicklung geeignet, und Python eignet sich für eine Vielzahl von Anwendungen wie Datenanalyse und maschinelles Lernen.

PHP eignet sich für Webentwicklung und schnelles Prototyping, und Python eignet sich für Datenwissenschaft und maschinelles Lernen. 1.PHP wird für die dynamische Webentwicklung verwendet, mit einfacher Syntax und für schnelle Entwicklung geeignet. 2. Python hat eine kurze Syntax, ist für mehrere Felder geeignet und ein starkes Bibliotheksökosystem.

Python eignet sich besser für Anfänger mit einer reibungslosen Lernkurve und einer kurzen Syntax. JavaScript ist für die Front-End-Entwicklung mit einer steilen Lernkurve und einer flexiblen Syntax geeignet. 1. Python-Syntax ist intuitiv und für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet. 2. JavaScript ist flexibel und in Front-End- und serverseitiger Programmierung weit verbreitet.

VS -Code kann zum Schreiben von Python verwendet werden und bietet viele Funktionen, die es zu einem idealen Werkzeug für die Entwicklung von Python -Anwendungen machen. Sie ermöglichen es Benutzern: Installation von Python -Erweiterungen, um Funktionen wie Code -Abschluss, Syntax -Hervorhebung und Debugging zu erhalten. Verwenden Sie den Debugger, um Code Schritt für Schritt zu verfolgen, Fehler zu finden und zu beheben. Integrieren Sie Git für die Versionskontrolle. Verwenden Sie Tools für die Codeformatierung, um die Codekonsistenz aufrechtzuerhalten. Verwenden Sie das Lining -Tool, um potenzielle Probleme im Voraus zu erkennen.

VS -Code -Erweiterungen stellen böswillige Risiken dar, wie das Verstecken von böswilligem Code, das Ausbeutetieren von Schwachstellen und das Masturbieren als legitime Erweiterungen. Zu den Methoden zur Identifizierung böswilliger Erweiterungen gehören: Überprüfung von Verlegern, Lesen von Kommentaren, Überprüfung von Code und Installation mit Vorsicht. Zu den Sicherheitsmaßnahmen gehören auch: Sicherheitsbewusstsein, gute Gewohnheiten, regelmäßige Updates und Antivirensoftware.

PHP entstand 1994 und wurde von Rasmuslerdorf entwickelt. Es wurde ursprünglich verwendet, um Website-Besucher zu verfolgen und sich nach und nach zu einer serverseitigen Skriptsprache entwickelt und in der Webentwicklung häufig verwendet. Python wurde Ende der 1980er Jahre von Guidovan Rossum entwickelt und erstmals 1991 veröffentlicht. Es betont die Lesbarkeit und Einfachheit der Code und ist für wissenschaftliche Computer, Datenanalysen und andere Bereiche geeignet.

VS -Code kann unter Windows 8 ausgeführt werden, aber die Erfahrung ist möglicherweise nicht großartig. Stellen Sie zunächst sicher, dass das System auf den neuesten Patch aktualisiert wurde, und laden Sie dann das VS -Code -Installationspaket herunter, das der Systemarchitektur entspricht und sie wie aufgefordert installiert. Beachten Sie nach der Installation, dass einige Erweiterungen möglicherweise mit Windows 8 nicht kompatibel sind und nach alternativen Erweiterungen suchen oder neuere Windows -Systeme in einer virtuellen Maschine verwenden müssen. Installieren Sie die erforderlichen Erweiterungen, um zu überprüfen, ob sie ordnungsgemäß funktionieren. Obwohl VS -Code unter Windows 8 möglich ist, wird empfohlen, auf ein neueres Windows -System zu upgraden, um eine bessere Entwicklungserfahrung und Sicherheit zu erzielen.

Im VS -Code können Sie das Programm im Terminal in den folgenden Schritten ausführen: Erstellen Sie den Code und öffnen Sie das integrierte Terminal, um sicherzustellen, dass das Codeverzeichnis mit dem Terminal Working -Verzeichnis übereinstimmt. Wählen Sie den Befehl aus, den Befehl ausführen, gemäß der Programmiersprache (z. B. Pythons Python your_file_name.py), um zu überprüfen, ob er erfolgreich ausgeführt wird, und Fehler auflösen. Verwenden Sie den Debugger, um die Debugging -Effizienz zu verbessern.
