TypeError:“ str”对象不可用于用户输入

时间:2019-06-17 11:00:07

标签: python string typeerror

当尝试在我的第一个if语句中获取用户输入时,我总是得到“ TypeError:'str'对象不可调用”。

我尝试过在线搜索和关于stackoverflow的搜索,但是只发现了对我不起作用的修复程序,例如确保“()”在正确的位置。

import os
from uuid import uuid4

f = open("address.txt","w+")

input = input("Do you already have an address (y/n): ")

if input == "y":
    address = input("Please enter your address: ")
    f.write(address)
    f.close() 

if input == "n":
    address = "some default address"
    f.write(address)
    f.close() 

奇怪的是,第一个输入有效,没有任何错误,对于第9行(地址= ...),我得到“ TypeError:'str'对象不可调用”。

2 个答案:

答案 0 :(得分:2)

因为您正在将str分配给与input函数冲突的input()变量。

尝试这样:

import os
from uuid import uuid4

f = open("address.txt","w+")

my_input = input("Do you already have an address (y/n): ")

if my_input == "y":
    address = input("Please enter your address: ")
    f.write(address)
    f.close() 

if my_input == "n":
    address = "some default address"
    f.write(address)
    f.close() 

答案 1 :(得分:1)

您不能使用单词“ input”作为变量名:

尝试将input = input("Do you already have an address (y/n): ")更改为 inpt = input("Do you already have an address (y/n): ")