'str' object is not callable 是什么问题
print(".........SHL..........")temp = input("猜一个数字:")
guess = int(temp)
if guess == 4:
print = ("恭喜你答对啦!")
else:
print = ("猜错啦")
print("游戏结束")
运行后是这种问题
Traceback (most recent call last):
File "E:/桌面/个人相关文件/ssssss/ssss.py", line 8, in <module>
print("游戏结束")
TypeError: 'str' object is not callable
这是哪里错了呢?
print("恭喜你答对啦!")
print("猜错啦")
print() 中间没有等号 print = ("恭喜你答对啦!")
这里把print变成了一个字符串变量,同时失去print函数的身份
那么下面你再试图调用print函数,就会出现这个错误 print(".........SHL..........")
temp = input("猜一个数字:")
guess = int(temp)
if guess == 4:
print("恭喜你答对啦!")
else:
print("猜错啦")
print("游戏结束") 你把print赋值了 print = ("恭喜你答对啦!")
print = ("猜错啦")
这两行代码你直接就将print这个系统内置函数给赋值成一个字符串了
我去掉括号你可能会看的更明白一些
print = "恭喜你答对啦!"
print = "猜错啦"
你看,明显的赋值语句
后面你再调用print("游戏结束")时,因为print是一个字符串,而你却用调用函数的方式去调用一个字符串,所以会报出类型错误
要将代码改成这样:
print(".........SHL..........")
temp = input("猜一个数字:")
guess = int(temp)
if guess == 4:
print("恭喜你答对啦!")
else:
print("猜错啦")
print("游戏结束") 避免将build-in函数赋值,一量被赋值,原函数就失效,转而变成一个变量名。
页:
[1]