Python随机产生大写字母和数字的字符串

简单产生随机字符串

如果不求随机字符串的安全性,可以简单实现如下:

''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(N))

Python 3.6使用random.choices():

''.join(random.choices(string.ascii_uppercase + string.digits, k=N))

安全产生随机字符串

如果对随机生成的字符串有安全性要求,可以使用random.SystemRandom():

''.join(random.SystemRandom().choice(string.ascii_uppercase + string.digits) for _ in range(N))

定义为函数

可以把它们定义为一个函数:

>>> import string
>>> import random
>>> def id_generator(size=6, chars=string.ascii_uppercase + string.digits):
... return ''.join(randomSystemRandom().choice(chars) for _ in range(size))
...
>>> id_generator()
'A5G74AF'
>>> id_generator(3, "8793PVIO")
'O9U'

版权声明:著作权归作者所有。

相关推荐

Python对数字字符串补全0

Python有两个方法都可以用来对字符串补全:zfill 和 rjust/ljust。如果对数字补全0:>>> '99'.zfill(5) '00099' >>> '99'.rjust(5,'0') '00099' 如果要右补全,可以使用ljust():>>> '99'.ljust(5,'0')

Python判断字符串是否为数字

Python判断一个字符串是否为数字,可以分为两种情况考虑。字符为纯数字如果需要检测的数字为纯数字,不包括负号,小数点等,可以使用字符串的isdigit()函数来判断>>> a = "001" >>> a.isdigit() True >>> a = &q

Python:字符串和datetime的转换

Python的字符串和时间的转换可以分别使用strptime和strftime。strptime(string parse time)datetime.strptime(date_string, format),根据format指定的时间格式解析用于表示时间的字符串date_string。>>>from datetime import&nb

TypeScript:字符串转换为数字

在TypeScript,String转换为Number有以下方式:Number构造函数(推荐)let n = Number('1234') // 1234 let nan = Number('abcd') // NaN +号操作符let n = +'1234'