';str';对象不支持python中的项分配?

';str';对象不支持python中的项分配?,python,python-2.7,file,readline,readlines,Python,Python 2.7,File,Readline,Readlines,我想逐行读取input.txt,并将其作为请求发送到服务器,然后分别保存响应。如何逐行读写数据? 我下面的代码只适用于input.txt中的一个输入(例如:我饿了)。你能帮我怎么做多重输入吗? 我做的如下。现在抛出一个错误:文件“tts.py”,第198行,在 文本到读取[“tts\U输入”]=行 TypeError:“str”对象不支持项分配 我的代码: TEXT_TO_READ = """{ "tts_type": "text", "tts_input": "DUMMY"

我想逐行读取input.txt,并将其作为请求发送到服务器,然后分别保存响应。如何逐行读写数据? 我下面的代码只适用于input.txt中的一个输入(例如:我饿了)。你能帮我怎么做多重输入吗? 我做的如下。现在抛出一个错误:文件“tts.py”,第198行,在 文本到读取[“tts\U输入”]=行 TypeError:“str”对象不支持项分配

我的代码:

TEXT_TO_READ = """{

    "tts_type": "text",

    "tts_input": "DUMMY"

}"""
TEXT_TO_READ = json.loads(TEXT_TO_READ)
scriptPath = os.path.abspath(__file__)
scriptPath = os.path.dirname(scriptPath)
fileInput = os.path.join(scriptPath, "input.txt")
try:
    content = open(fileInput, "r")
except IOError:
    print "error message"
    Error_Status = 1
    sys.exit(Error_Status)
for line in content.readlines():
    if len(line):
        TEXT_TO_READ["tts_input"]=line.strip('\n')
        TEXT_TO_READ = json.dumps(TEXT_TO_READ)
        print TEXT_TO_READ

request = Request()

您使用JSON字符串将
文本\u替换为\u READ

TEXT_TO_READ = json.dumps(TEXT_TO_READ)
在下一次迭代中,您不再拥有字典,而是一个字符串,因此分配失败:

TEXT_TO_READ["tts_input"]=line.strip('\n')

对于编码的JSON数据和字典,不要使用相同的变量。

您用JSON字符串替换了
TEXT\u TO\u READ

TEXT_TO_READ = json.dumps(TEXT_TO_READ)
在下一次迭代中,您不再拥有字典,而是一个字符串,因此分配失败:

TEXT_TO_READ["tts_input"]=line.strip('\n')

不要对编码的JSON数据和字典使用相同的变量。

我应该在这里修改什么?@sam:你想实现什么?如果您只想将json编码写入stdout,那么只需执行
打印json.dumps(TEXT-TO-READ)
。这避免了将
TEXT\u设置为\u READ
的情况。从input.txt读取第一行后,再向服务器发送请求,然后再次读取第二行并发送请求。但这里的输入是tts_输入。要访问tts_输入,我们使用json LOADSY您只使用
json.loads()
在脚本开头加载硬编码字符串。如果目标是这样的话,你没有在文件内容上使用它。不,不是真的。我只能告诉你为什么会出错。我应该在这里修改什么?@sam:你想达到什么目的?如果您只想将json编码写入stdout,那么只需执行
打印json.dumps(TEXT-TO-READ)
。这避免了将
TEXT\u设置为\u READ
的情况。从input.txt读取第一行后,再向服务器发送请求,然后再次读取第二行并发送请求。但这里的输入是tts_输入。要访问tts_输入,我们使用json LOADSY您只使用
json.loads()
在脚本开头加载硬编码字符串。如果目标是这样的话,你没有在文件内容上使用它。不,不是真的。我只能告诉你为什么会出错。请不要故意破坏你的问题。对不起。你能告诉我怎么修吗?请不要故意破坏你的问题。对不起。你能告诉我怎么修吗?