以排序方式从字典写入文本文件(python)

时间:2016-09-20 19:00:15

标签: python

我有一个代码,我需要按顺序将字典写入.txt文件。

with open("Items.txt", "w+") as file:
    for item in sorted(orders):
        file.write(item + "," + ",".join(map(str,orders[item])) + "\n")
        file.close      

        print("New stock level to file complete.")

这里的命令是我的字典,我想写入Items.txt

每次我运行这个时都会出现类似错误:

TypeError: unsupported operand type(s) for +: 'int' and 'str'

我的词典内容是:

orders[int(code)] = [str(name),int(current_stock),int(re_order),int(target_stock),float(price)]

有人可以帮我解决这个问题。我怀疑所有内容都不是字符串,但我不知道如何将字典中的内容更改为字符串。

PS:我无法将字典中的内容更改为字符串,因为我需要稍后使用整数。

1 个答案:

答案 0 :(得分:1)

由于item将是int,因此您无法在字符串(+)上使用,运算符。 Python是一种强类型语言。使用:

file.write(str(item) + "," + ",".join(map(str,orders[item])) + "\n")

代替。