我已经生成了一个带for循环的str,但是我无法在for循环之外显示相同的内容,也无法将结果写入文本文件中
我目前正在使用phyton 3.7.4
r = open('book_list.txt','r')
lines = r.readlines()
books = dict((line.strip().split(':') for line in lines))
r.close()
for k,v in books.items() :
remain = str(k+':'+v)
print(remain)
代替显示所有键和值,它只显示最后一个键和值
您将在for循环的每次迭代中覆盖remain
变量。这就是为什么只显示最后一个。您应该将每个新的键值对附加到字符串之后。由于您没有提供book_list.txt
的内容,因此我为自己制作了一个伪造的词典来对其进行测试。
books = {
"key1": "value1",
"key2": "value2",
"key3": "value3"
}
remain = ""
for k,v in books.items():
remain = remain + str(k+':'+v) + '\n'
print(remain)
这将打印:
key3:value3
key2:value2
key1:value1