Warum bekomme ich einen Tab-Error?
Hallo,
wie muss ich folgenden Code richtig einrücken? Ich erhalte immer folgenden Fehler:
TabError: inconsistent use of tabs and spaces in indentation
/opt/test/philips-xml$ python3 testhl7.py
File "testhl7.py", line 7
komp_string.append('|')
^
Quellcode:
def forhl7(komp_anz, komp_name):
komp_value = [komp_name]
for komp in range(1, (komp_anz + 1)):
if komp > (komp_anz - 1):
print("b is greater than a")
komp_value.append('')
else:
print(komp)
komp_value.append('|')
return komp_value
a = forhl7(5, "MSH")
print(a)
2 Antworten
Zwei Tipps am Rande:
- Anstatt deinen Code als Antwort nochmal zu posten, kannst du auch nochmal deine Frage bearbeiten
- Bitte benutze beim nächsten Mal die Code-Funktion, die dir GF bereitstellt.
Du wirst wohl irgendwo in deinem Code Tabs mit Spaces vermischt haben. Darauf musst du achten. Deine IDE sollte für Python am besten so eingestellt sein, dass Tabs automatisch in Spaces umgesetzt werden. Zudem, wenn deine IDE das unterstützt, solltest du für Spaces und Tabs andere Größeneinheiten benutzen.
Z.B:
- 4 Spaces für die Indentation
- 8 Spaces für Tabs
Dann sollte dir recht schnell auffallen, was in deinem Code falsch eingerückt ist.
falsche Syntax:
Korrekter Code lautet:
def forhl7(komp_anz,komp_name):
komp_value=[komp_name]
for komp in range(1, (komp_anz+1)):
if komp > (komp_anz-1):
print("b is greater than a")
komp_value.append('')
else:
print(komp)
komp_value.append('|')
return komp_value
a=forhl7(5,"MSH")
print(a)