【发布时间】:2015-02-19 13:14:27
【问题描述】:
我正在尝试编写一个程序来生成用于在我正在开发的游戏中注册帐户的密钥。
到目前为止,我的所有东西都可以处理打印,但是在尝试写入文件时遇到了困难。
这是我当前的代码:
import random
file = open('keys.txt', 'w')
chars = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
keys = 0
while keys <= 50:
for i in range(0,4):
print(random.choice(chars), end='')
print('-', end='')
for i in range(0,4):
print(random.choice(chars), end='')
print('-', end='')
for i in range(0,4):
print(random.choice(chars), end='')
print('-', end='')
for i in range(0,4):
print(random.choice(chars), end='')
print('')
keys += 1
file.close()
为了让它打印到文件中,我尝试在 for 循环中的 print 下面添加 file.write(random.choice(chars), end=''),但是我收到了一个 TypeError 说 write() takes no keyword arguments。
为了澄清,代码如下所示:
for i in range(0,4):
print(random.choice(chars), end='')
file.write(random.choice(chars), end='')
print('-', end='')
通过搜索,我认为问题与 file.write 中的 end='' 有关,但我不确定。有什么想法吗?
提前致谢。
【问题讨论】:
-
请注意,您的程序存在错误。
10不是单个字符。