Python3浅谈string.ascii_letters & string.digits

Posted ZSYL

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python3浅谈string.ascii_letters & string.digits相关的知识,希望对你有一定的参考价值。

浅谈:string.ascii_letters & string.digits

Test:string.ascii_letters & string.digits

本文介绍Python3String模块ascii_lettersdigits方法,其中ascii_letters是生成所有字母,从a-z和A-Z,digits是生成所有数字0-9.

示例如下:

>>> chars = string.ascii_letters + string.digits

>>> print(chars)

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789

生成所有字母和数字干什么?在哪个场景中会用到呢,举个例子:比如生成激活码(优惠券),激活码一般都是字母和数字组成的,首先要有一个所有字母和数字的字符串,然后随机取出几个字母或数字。

import random, string

def rand_str(num, length=7):

    f = open('Activation_code.txt', 'w')

    for i in range(num):

        chars = string.ascii_letters + string.digits

        s = [random.choice(chars) for i in range(length)]

        f.write('{0}\\n'.format(''.join(s)))

    f.close()

if __name__ == '__main__':

    rand_str(100)
    

生成了一个Activation_code.txt文件,内容如下:

NkjmMrL
L3Z5BjZ
WSTaprg
cneoNCQ
EtYRNZX
gYY14GK
hEhhgRM
VGD35Vo
krtzuHD
SLk1D37
68TnbAv
RtceKWE
cOx7l87
71uT0o6
ClUfT5Q
O6nmQWD
M2b3sx0
NsCkFKO
r6Jh5LM
KY57KL0
LpJJweL
fHK9ONG
SAfZBkc
ycmiTla
7IRJHQR
83PhGhP
FOKgT8a
rHMoCuc
sLd1J2C
.....

Additional

String模块中的常量:

  • string.digits:数字0~9

  • string.ascii_letters:所有字母(大小写)

  • string.lowercase:所有小写字母

  • string.printable:可打印字符的字符串

  • string.punctuation:所有标点

  • string.uppercase:所有大写字母

参考:Link Link

以上是关于Python3浅谈string.ascii_letters & string.digits的主要内容,如果未能解决你的问题,请参考以下文章

Python3浅谈string.ascii_letters & string.digits

python3实现YUV(黑白图像转RGB图像)转Jpg图片方法浅谈

python -- 字符串列表元组字典操作

浅谈Python中的编码规则

浅谈virtualenv(虚拟环境)

浅谈virtualenv(虚拟环境)