Häufige Fehler in Python:
0. Vergessen, Doppelpunkte
in if-, elif-, else-, for-, while-, class- und def-Anweisungen zu schreiben Das Vergessen, „
if spam == 42 print('Hello!')
“ hinzuzufügen, führt später zu: SyntaxError: ungültige Syntax
2. Falsche Einrückung verwenden
Python verwendet Einrückungen, um Codeblöcke zu unterscheiden, häufige falsche Verwendungen:
print('Hello!') print('Howdy!')
führt zu: IndentationError: unerwarteter Einzug. Jede Codezeile im selben Codeblock muss eine konsistente Einrückung beibehalten
if spam == 42: print('Hello!') print('Howdy!')
Ursache: IndentationError: unindent stimmt mit keiner äußeren Einrückungsebene überein. Nachdem der Codeblock beendet ist, kehrt die Einrückung zur ursprünglichen Position
if spam == 42: print('Hello!')
zurück, was zu Folgendem führt: IndentationError: erwarteter eingerückter Block, „:“ muss von Einrückung gefolgt werden
3. Die Variable ist nicht definiert
if spam == 42: print('Hello!')
Ergebnisse: NameError: Name 'Spam' ist nicht definiert
4. Beim Abrufen der Indexposition des Listenelements vergessen Sie, die len-Methode
< aufzurufen 🎜>Wenn Sie das Element über die Indexposition abrufen, vergessen Sie, die Len-Funktion zu verwenden, um die Länge der Liste abzurufen.spam = ['cat', 'dog', 'mouse'] for i in range(spam): print(spam[i])
Der richtige Ansatz ist:
spam = ['cat', 'dog', 'mouse'] for i in range(len(spam)): print(spam[i])
spam = ['cat', 'dog', 'mouse'] for i, item in enumerate(spam): print(i, item)
spam = 'I have a pet cat.' spam[13] = 'r' print(spam)
spam = 'I have a pet cat.' spam = spam[:13] + 'r' + spam[14:] print(spam)
num_eggs = 12 print('I have ' + num_eggs + ' eggs.')
num_eggs = 12 print('I have ' + str(num_eggs) + ' eggs.')
num_eggs = 12 print('I have %s eggs.' % (num_eggs))
spam = ['cat', 'dog', 'mouse'] print(spam[3])
spam = {'cat': 'Zophie', 'dog': 'Basil', 'mouse': 'Whiskers'} print('The name of my pet zebra is ' + spam['zebra'])
spam = {'cat': 'Zophie', 'dog': 'Basil', 'mouse': 'Whiskers'} print('The name of my pet zebra is ' + spam.get('zebra'))
9. Die Verwendung von Schlüsselwörtern als Variablennamen
class = 'algebra'
>>> import keyword >>> print(keyword.kwlist) ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
someVar = 42 def myFunction(): print(someVar) someVar = 100 myFunction()
spam = 0 spam++
spam = 0 spam += 1
class Foo: def method1(): print('m1') def method2(self): print("m2") a = Foo() a.method1()
Das obige ist der detaillierte Inhalt vonEinige häufige Fehler in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!