这可能是重复的,但我找不到有关它的任何帖子,因此,如果有,请将我链接到该帖子。
如果我在ipython笔记本中有一段代码:
input = input("enter some info")
然后,当我重新运行相同的代码块时,它将给我错误
TypeError: 'str' object is not callable
即使我重命名了变量名,我仍然会遇到相同的错误。如何无需重新启动整个jupyter笔记本而恢复input
方法的原始功能?
谢谢
答案 0 :(得分:2)
最佳做法是不使用任何系统名称,例如input
,min
,max
等。而应完全使用另一个名称,或者至少在其后加下划线:{{1 }},input_
,min_
。但是,如果不可避免的话:
IPython的max_
将重设所有名称。用法示例:
reset
答案 1 :(得分:0)
不建议在内置函数后命名变量。但是,如果您坚持要为原始功能做一个占位符。
input_function = input # save the input function to another variable
input = input("enter some info")
# do something with the user's input with the input variable (string)
input = input_function # restore it back