当尝试在我的第一个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'对象不可调用”。
答案 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): ")