gpt4 book ai didi

python - 为什么我的字符串会删除多个字符?

转载 作者:行者123 更新时间:2023-11-30 23:05:12 24 4
gpt4 key购买 nike

我在这里注意到一个非常奇怪的现象。我已经实例化了一个全局变量 (usrPIN),并将其与局部变量 (c) 进行比较。当我输入一个值(在本例中为四个零)时,该值将被截断,创建一个只有一个字符长的字符串。为什么?

usrPIN
...
def login():
global usrPIN
...
c = str(input("Enter PIN"))
print usrPIN
print str(c)
if usrPIN == c:
mainMenu()
else:
print "Incorrect PIN"
login()

enter image description here

到底发生了什么?

最佳答案

在 Python 2.x 中 input() 进行自动评估。这意味着当我这样做时:

input(0.2757)

Python 将其计算为 float 。同样,在您的情况下, 0000 被评估为整数,并且由于四个零与一个零相同,因此它会将它们删除。在 Python 2.x 中,为了安全起见,通常建议使用 raw_input()

注意:Python 2.x 中的 raw_input() 始终返回一个字符串。

关于python - 为什么我的字符串会删除多个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33284683/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com