我有以下字典:
self.info("check_reg_min_max")
self.info(pprint.pformat(check_reg_min_max))
{
'TXH1DH50_DD70_03062018_FULL': [60398572, 60399376],
'TXH2DH50_DD70_03062018_FULL': [5071407, 5071709],
'TXH3DH50_DD70_03062018_FULL': [2822010, 2822116],
'TXH4DH50_DD70_03062018_FULL': [52148625, 52148782],
'TXH5DH50_DD70_03062018_FULL': [6764732, 6764766]
}
我想要做的是将每个数字范围写入文件,所以我这样做:
for filename in check_reg_min_max:
jc.write(range(check_reg_min_max[filename][0], check_reg_min_max[filename][1] + 1))
我不断收到的错误信息是:
argument 1 must be string or read-only character buffer, not list
我的理解是range
采用两个整数,因为它是包含的,我添加+1
来获取结束值。
任何想法我做错了什么?
编辑:我抓错了错误信息。错误消息已更新。答案 0 :(得分:0)
write()方法需要一个字符串。你不能直接通过它,它不知道该怎么做。这不会起作用:
f = open('test.txt', 'w')
f.write(range(1,10))
f.close()
您需要做一些事情才能将该范围转换为字符串。如果您想要以逗号分隔的值列表,这是如何执行此操作的一个示例:
f = open('test.txt', 'w')
f.write(','.join([str(x) for x in range(1,10)]))
f.close()