我需要在python中生成随机字符串,即在01-12的范围内。如果数字低于10,那么零必须在前面。所以基本上我需要函数返回类似05或09的东西或者11.我能以某种方式使用随机类吗?或者我只是定义和包含这12个字符串的数组并从那里随机索引?
答案 0 :(得分:7)
>>> import random
>>> "%02d"%random.randrange(1, 13)
'07'
或
>>> format(random.randrange(1, 13), '02')
'06'
或
>>> str(random.randrange(1, 13)).zfill(2)
'12'
或
>>> '000000000111123456789012'[random.randrange(12)::12]
'04'
答案 1 :(得分:5)
>>> import random
>>> format(random.randint(1, 12), '02')
'07'
答案 2 :(得分:1)
from random import randint
print '%02d' % randint(1, 12)
答案 3 :(得分:0)
我认为最好的方法是构建数组并使用random.choice。
random.choice(['0' + str(i) if i<10 else str(i) for i in range(13)])