Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 类型错误:';str';对象不能使用输入()调用_Python_Input_Error Handling - Fatal编程技术网

Python 类型错误:';str';对象不能使用输入()调用

Python 类型错误:';str';对象不能使用输入()调用,python,input,error-handling,Python,Input,Error Handling,我有下面的代码,它应该询问用户2的文件名。我在第二个函数中的input()出现错误,但在第一个函数中没有,我不明白。。。 以下是错误: output=getOutputFile() getOutputFile中第22行的文件“splitRAW.py” 文件名=输入(“\t=>”) TypeError:“str”对象不可调用 这是我的主要观点: : Python 2: var = raw_input("Please enter something: ") print "you entered",

我有下面的代码,它应该询问用户2的文件名。我在第二个函数中的input()出现错误,但在第一个函数中没有,我不明白。。。 以下是错误:

output=getOutputFile() getOutputFile中第22行的文件“splitRAW.py” 文件名=输入(“\t=>”) TypeError:“str”对象不可调用

这是我的主要观点:

:

Python 2:

var = raw_input("Please enter something: ")
print "you entered", var
或者对于Python 3:

var = input("Please enter something: ")
print("You entered: " + var)

问题是当您说
input=getInputFile()

更具体地说:

  • 程序进入
    getInputFile()
    函数,并且
    input
    尚未分配。这意味着Python解释器将按照您的预期使用内置的
    输入
  • 返回
    filename
    并退出
    getInputFile()
    。解释器现在将名称
    输入
    覆盖为该字符串
  • getOutputFile()
    现在尝试使用
    input
    ,但它已被替换为文件名字符串。您不能调用字符串,因此解释器会告诉您并抛出一个错误
  • 尝试用其他变量替换
    input=getInputFile()
    ,如
    fileIn=getInputFile()


    另外,您的
    getOutputFile()
    没有返回任何内容,因此您的
    output
    变量中只包含
    None

    下次只需“重新启动内核”“类型错误:'str'对象不可调用-重新启动内核及其属性已消失。您可以开始了。

    您可能正在用其他内容覆盖输入名称

    如果需要在笔记本电脑中重新初始化输入功能:

    from builtin import input
    

    在代码的某个地方,您定义了
    input=something\u这里
    。根据您的IDE,它可能位于不同的文件或控制台中。谢谢!!不,这不是问题所在。他们践踏了
    输入
    内置,因为错误传递了第一个需要将变量名输入更改为其他变量,因为python解释器很混乱,然后重新启动kernelTake-away消息是,不要命名与函数名类似的变量。
    var = input("Please enter something: ")
    print("You entered: " + var)
    
    from builtin import input