我想使用python生成序列号,但是遇到了问题。
我有两种不同的方式来生成我想同时使用的序列号。 (下面的示例)。
charList = ["A", "B", "C", "D", "C", "E", "F", "G", "H", "I", "J", "K", "L", "M",
"O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "1", "2", "3", "4", "5"
"6", "7", "8", "9"]
serial1 = "200" + random.choice(charList)
serial2 = "300" + random.choice(charList)
for i in range (20):
print(serial1)
我希望打印输出的是serial1和serial2的混合输出,所以您可能会得到如下信息:
200A
200B
300K
300N
300Z
300C
2001
300K
答案 0 :(得分:3)
您可以尝试选择。
import random
charList = ["A", "B", "C", "D", "C", "E", "F", "G", "H", "I", "J", "K", "L", "M",
"O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "1", "2", "3", "4", "5"
"6", "7", "8", "9"]
def serial(charList):
return random.choice(["200", "300"]) + random.choice(charList)
for i in range (20):
print(serial(charList))
这将生成您的序列号列表。
答案 1 :(得分:2)
像这样吗?
import random
import string
def get_random_pattern():
return random.choice(["200", "300"])
for _ in range(20):
print(get_random_pattern() + random.choice(string.ascii_uppercase + string.digits))
这应该是您想要的结果。
string模块非常方便获得所有字母/数字的可迭代值:)
接着,您的代码违反了某些PEP8规则,例如您的命名约定。 在python中,相对于camelCase,我们更喜欢使用snake_case。