【问题标题】:Python : TaberrorPython:标签错误
【发布时间】:2018-06-29 22:53:24
【问题描述】:

我有一个爱沙尼亚语脚本,但它给了我错误:

    Sorry: TabError: inconsistent use of tabs and spaces in indentation (function sheet1.py, line 8)
[Finished in 0.2s with exit code 1]

代码是:

import sys
import datetime
end = False
while end == False:
def contin01():
    print("Kas soovid jätkata?")
    exit = input("Vali [1] - JAH // Vali [2] - EI: ")
    if exit[0] == "1":
        print("********* Beginning of Line ********* ")
    elif exit[0] == "2":
        sys.exit()
def sina():
    nimi = input("Kirjuta enda nimi: ")
def guest_name():
    Guest_Name = input("Sisesta kliendi nimi: ")
def guest_arrival():
    Arrival = input("Sisesta kliendi saabumiskuupäev: ")
def guest_dep():
    Departure = input("Sisesta kliendi lahkumiskuupäev: ")
def room():
    Room_number = input("Sisesta kliendi toa number ")
def special():
    req = input("Kirjuta kliendi erisoovid, kui puuduvad pane "-": ")
def WU():
    wake = input("Kirjuta mis kell soovib klient äratust")
def date():
    päev = datetime.datetime.now().strftime("%d-%m-%Y T%H:%M")

找不到问题 - 尝试删除并重试,但没有任何变化

【问题讨论】:

  • 顶部 while 循环下的所有内容都不是问题的正确意图

标签: python python-3.x syntax indentation


【解决方案1】:

规范化您的源代码。根据Python PEP8,“每个缩进级别使用 4 个空格”。如果您在一个缩进上下文(例如函数)中混合制表符和空格,您将收到警告,您提到了。

以下源代码格式错误(其中<SPACE> 代表空格字符,<TAB> 代表水平制表符):

def func(x):
<SPACE><SPACE><SPACE><SPACE>if x == 6:
<TAB><TAB>return 1
<SPACE><SPACE><SPACE><SPACE>return 42

会报如下错误:

  File "test.py", line 3
    return 1
           ^
TabError: inconsistent use of tabs and spaces in indentation

而下面的程序是正确的:

def func(x):
<SPACE><SPACE><SPACE><SPACE>if x == 6:
<SPACE><SPACE><SPACE><SPACE><SPACE><SPACE><SPACE><SPACE>return 1
<SPACE><SPACE><SPACE><SPACE>return 42

顺便说一句,while end == False 应该写成while not end 并且需要在下一行中增加一个缩进级别。

【讨论】:

  • 另外值得一提的是,理想情况下,函数不应在循环中定义
猜你喜欢
  • 2016-03-18
  • 2019-01-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-16
  • 1970-01-01
相关资源
最近更新 更多