python - 输入以 0 开头的数字
python - inputting numbers that start with 0
我正在 python 制作程序。假设接收一个 GTIN 号码并放入一个列表中,然后检查它是否有效。该程序有效,但只要我输入以 0 开头的 GTIN 编号,我就会收到 "invalid token (, line 1)" 错误。我真的需要一个解决方案,因为有些产品的 GTIN 编号以 0 开头。
当我输入一个数字例如:
96080832
程序运行良好。
当我输入这样的数字时:
00256986
我得到一个错误:
invalid token (<string>, line 1)
指向这一行:
inputtedInt = int(input("Enter the gtin number: "))
整个定义:
def chooseOption(inputInt):
while(inputInt > 0 and inputInt < 4):
if(inputInt == 1):
print("you picked option number 1")
showOptions()
break
elif(inputInt == 2):
print(" ")
inputtedInt = int(input("Enter the gtin number: "))
gtin = map(int,str(inputtedInt))
checkValidity(gtin, 2)
print(" ")
showOptions()
break
elif(inputInt == 3):
print("you picked option number 3")
showOptions()
break
else:
option = int(input("Error - enter a number from 1 to 3. : "))
chooseOption(option)
提前致谢。
您似乎在使用 Python 2。在 Python 2 中,input
尝试将输入字符串计算为 Python 表达式,并且前导 [= Python 2 语法中数字文字上的 11=] 表示该数字在 octal 或基数 8 中。因为 8
和 9
不是基数 8 中的有效数字,此输入构成语法错误。
如果您应该使用 Python 3,请使用 Python 3。如果您应该使用 Python 2,请改用 raw_input
input
.
此外,如果您关心保留前导零之类的内容,则应将输入保留为字符串,并且仅在您想对其进行数学运算时才调用 int
作为整数。
出现错误是因为您在行中映射 str ant/to int:
gtin = map(int,str(inputtedInt))
例如,如果您输入 运行:
a = 005
您将收到以下错误:
File "<stdin>", line 1
a = 005
^
SyntaxError: invalid token
解决方案 -> 您应该使用字符串作为 GTIN 号码:)
我正在 python 制作程序。假设接收一个 GTIN 号码并放入一个列表中,然后检查它是否有效。该程序有效,但只要我输入以 0 开头的 GTIN 编号,我就会收到 "invalid token (, line 1)" 错误。我真的需要一个解决方案,因为有些产品的 GTIN 编号以 0 开头。
当我输入一个数字例如:
96080832
程序运行良好。
当我输入这样的数字时:
00256986
我得到一个错误:
invalid token (<string>, line 1)
指向这一行:
inputtedInt = int(input("Enter the gtin number: "))
整个定义:
def chooseOption(inputInt):
while(inputInt > 0 and inputInt < 4):
if(inputInt == 1):
print("you picked option number 1")
showOptions()
break
elif(inputInt == 2):
print(" ")
inputtedInt = int(input("Enter the gtin number: "))
gtin = map(int,str(inputtedInt))
checkValidity(gtin, 2)
print(" ")
showOptions()
break
elif(inputInt == 3):
print("you picked option number 3")
showOptions()
break
else:
option = int(input("Error - enter a number from 1 to 3. : "))
chooseOption(option)
提前致谢。
您似乎在使用 Python 2。在 Python 2 中,input
尝试将输入字符串计算为 Python 表达式,并且前导 [= Python 2 语法中数字文字上的 11=] 表示该数字在 octal 或基数 8 中。因为 8
和 9
不是基数 8 中的有效数字,此输入构成语法错误。
如果您应该使用 Python 3,请使用 Python 3。如果您应该使用 Python 2,请改用 raw_input
input
.
此外,如果您关心保留前导零之类的内容,则应将输入保留为字符串,并且仅在您想对其进行数学运算时才调用 int
作为整数。
出现错误是因为您在行中映射 str ant/to int:
gtin = map(int,str(inputtedInt))
例如,如果您输入 运行:
a = 005
您将收到以下错误:
File "<stdin>", line 1
a = 005
^
SyntaxError: invalid token
解决方案 -> 您应该使用字符串作为 GTIN 号码:)