我遇到了int()函数的问题。 我尝试在一个简单的程序中使用它,但仍然无法正常工作。 这是我的短节目。 我使用int()将str中的变量转换为int。 并使用它来与2.竞争。但它返回一个错误,因为我 t仍然被视为str 。发生了什么?
a = '4'
int (a)
if a > 2:
print( "It's working" )
答案 0 :(得分:2)
int(a)
不会改变a
,它会创建一个新对象并将其返回。试试这个:
a = '4'
i = int(a)
if i > 2:
print("It's working")
请注意,我在第2行创建的新变量的名称与我在第1行创建的名称不同。它不必。实际上,有时重用名称可以更具可读性:
a = '4' # Now `a` is a `str`
a = int(a) # Now `a` is an `int`
if a > 2:
print("It's working")
答案 1 :(得分:0)
# or mutate the a by redefining a:
a = '4'
a = int(a)
if a > 2:
print("It's working")
答案 2 :(得分:0)
在 for循环之前,不是类型转换,而是将“a”保留为 str 然后只需将其强制转换为for in for循环。这将保留您的 str dataype ,同时您将获得所需的输出。
a = '4'
if int(a) > 2:
print( "It's working" )
在你的程序中。您只是为该实例将str转换为int。你不是把它存放在任何地方。所以你的变量a 指向在类型转换之前存储的str。