打印一系列数字 - 包括最终价值

时间:2018-03-08 16:45:39

标签: python python-2.7

我有以下字典:

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来获取结束值。

任何想法我做错了什么?

编辑:我抓错了错误信息。错误消息已更新。

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()