如何用Python生成包含大写字母和数字的随机字符串?

如何用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 教程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程