如何用Python生成包含大写字母和数字的随机字符串?
可以使用random.choice(list_of_choices)方法获取随机字符。然后循环获取一个列表,最后将此列表连接成字符串。此处的选择列表包括大写字母和数字。比如:
import string
import random
def get_random_string(length):
random_list = []
for i in xrange(length):
random_list.append(random.choice(string.ascii_uppercase + string.digits))
return ''.join(random_list)
print get_random_string(10)
这将得到以下输出:
'35WO8ZYKFV'
同样地,这也可以通过单行代码实现:
>>> ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in xrange(10))
'35WO8ZYKFV'
在Python 3中,我们可以使用random.choices方法,该方法可以使用第二个参数指定随机字符串的长度。它可以用来获取更短的随机字符串:
>>> ''.join(random.choices(string.ascii_uppercase + string.digits), k=10)
'35WO8ZYKFV'
阅读更多:Python 教程
极客教程