求解
为啥第一次错后面不管怎么打都是错的 你把print给赋值成了name,也就赋值成了name所代表的值("老乌龟"),此时的print就变成了一个字符串,而不是内置函数,也就无法调用。解决方法:重新打开IDLE 本帖最后由 jackz007 于 2022-12-23 18:57 编辑
这一句
print=(name)
把 BIF print() 给污染掉了,任何时候都不可以为一个 BIF 的标识符赋值
这个问题无法解决,只能放弃这个 IDLE,另启一个新的 IDLE 环境。 本帖最后由 isdkz 于 2022-12-23 21:20 编辑
你把 print 给赋值成 name 了,print 原本是一个函数对象,函数对象可以调用,你给他赋值成字符串对象 name 了,
所以 print 成了一个字符串对象,字符串对象是不可调用的,你去调用一个字符串对象当然会报错了,
你只需要把字符串对象 print 给删掉就好,删掉之后他又会恢复成内置的函数对象了,
所以并不需要重新打开 idle,执行一下 del print 就好 tommyyu 发表于 2022-12-23 18:06
你把print给赋值成了name,也就赋值成了name所代表的值("老乌龟"),此时的print就变成了一个字符串,而不 ...
感谢! 感谢! jackz007 发表于 2022-12-23 18:54
这一句
把 BIF print() 给污染掉了,任何时候都不可以为一个 BIF 的标识符赋值
感谢! isdkz 发表于 2022-12-23 21:13
你把 print 给赋值成 name 了,print 原本是一个函数对象,函数对象可以调用,你给他赋值成字符串对象 name ...
感谢! 不要把 print 给赋值成 name ,print 原本是一个函数对象,函数对象可以调用,你给他赋值成字符串对象 name 了,
所以 print 成了一个字符串对象,字符串对象是不可调用的,你去调用一个字符串对象当然会报错了,
你只需要把字符串对象 print 给删掉就好,删掉之后他又会恢复成内置的函数对象了,
可以重新打开 idle,或者执行一下 del print 就好
del print 这一句话有问题
print=(name)
您把print函数赋值了,它就不能调用了
解决办法:1.重新打开IDLE
2.del print
页:
[1]