用Python生成连续数字

2024-04-26 11:17:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我想使用python生成序列号,并将它们保存在.txt文档中,但我无法以我想要的格式生成数字

我想要的格式:

(000,000,000)
(000,000,001)
(000,000,002)
(000,000,003)
...
(000,000,100)
...
(000,001,000)
...
(001,000,000)
...
(100,000,000)
...
(255,255,255)

注意:数字必须介于0-255之间

我的代码:

file = open("numbers.txt","w")
numbers = [i for i in range(256)]
file.write(numbers)
file.close()

Tags: 代码in文档txtforclose格式range
2条回答

这可以满足你的要求。请注意,这将生成一个相当大的文件(有256^3个可能的值,超过1600万)

import itertools


with open("numbers.txt", "w") as f:
    for color in itertools.product(range(256), repeat=3):
        f.write("({:03d}, {:03d}, {:03d})\n".format(*color))

请注意,您应该使用^{}块上下文管理器来读取和写入文件,因为它会在之后自动关闭文件

您可以简单地使用三个嵌套循环来实现这一点:

for a in range(256):
    for b in range(256):
        for c in range(256):
            print("(%03i,%03i,%03i)" % (a,b,c))

请注意前导零的格式。还有{}更有效的方法:

import itertools
for item in itertools.product(range(256), repeat=3):
    print("(%03i,%03i,%03i)" % item)

相关问题 更多 >