繁体   English   中英

覆盖不同数据类型 python 中的变量是不好的做法吗

[英]is it bad practice to overwrite a variable in a different datatype python

我想知道当我在 python 中输入验证时,用不同的数据类型覆盖变量是否是一种好习惯,例如:

x = "initialise"
while x == "initialise":
    try:
        x = int(input("what is the number "))
    except ValueError:
        print ("it has to be a number\n")

print (x)

如果这是不好的做法,那么你能告诉我一种不同的输入方式吗?如果可以的话,你可以帮助我吗? 谢谢。

在您的特定示例中,您应该在初始化没有值的变量时使用特殊的None关键字。

一般来说,尽量不要将同一个变量用于多种数据类型。

这是你打算做的..?

x = "initialise"
guess_value = None
while guess_value != x:
    try:
        guess_value = eval(input("what is the number: "))
    except NameError:
        print ("it has to be a number\n")
print (guess_value)

关于覆盖数据类型,将变量名分配给新数据类型并不重要。 您唯一需要确保的是新数据类型适用于您的程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM