产生随机数字和字符串
1.来源及方法
random模块
1.1 获取随机数字常见方法
- print(random.randint(1,10) ) ------------------产生 1 到 10 的一个
整数
型随机数 - print(random.random() )-----------------------产生 0 到 1 之间的随机
浮点数
- print(random.uniform(1.1,5.4))---------------产生 1.1 到 5.4 之间的随机
浮点数
,区间可以不是整数
- print(random.choice(‘tomorrow’))------------从
序列
中随机选取一个
元素 - print(random.randrange(1,100,2))-----------从1到100的
间隔为2
的随机整数
1.2 获取随机字符或字符串方法
- print(random.choice(‘abcdefghijklmnopqrstuvwxyz!@#$%^&*()’))------随机输出
1
个字符
- print (random.sample(‘zyxwvutsrqponmlkjihgfedcba’,5)) -----------------从
多个字符
里随机输出5
个字符
- print(’’.join(random.sample(string.ascii_letters + string.digits, 3)))------从
a-z A-Z 0-9
生成指定数量
的随机字符
- print(’’.join(random.sample([‘z’,‘y’,‘x’,‘w’,‘v’,‘u’,‘t’,‘s’,‘r’,‘q’,‘p’,‘o’,‘n’,‘m’,‘l’,‘k’,‘j’,‘i’,‘h’,‘g’,‘f’,‘e’,‘d’,‘c’,‘b’,‘a’], 5)))------------------------------------------------------------------从多个
字符中
选取指定数量的字符组成新字符串
- print (random.choice([‘剪刀’, ‘石头’, ‘布’,1,6,4]))------------------------------------随机选取
字符串
1.3 打乱排序
把一个序列随机打乱
>>> items = ['a', 'f', 3, 4, 5, 6, 7, 8, 9, 0]
>>> random.shuffle(items)
>>> print(items)
[6, 9, 4, 7, 3, 0, 'f', 8, 'a', 5]
2.简单案例
数字
产生 1 到 10 的一个整数型随机数
>>> print(random.randint(1,10) )
2
产生 0 到 1 之间的随机浮点数
>>> print(random.random() )
0.4494605019674972
产生 1.1 到 5.4 之间的随机浮点数,区间可以不是整数
>>> print(random.uniform(1.1,5.4))
1.2741378733057525
从序列中随机选取一个元素
>>> print(random.choice('tomorrow'))
w
从1到100的间隔为2的随机整数
>>> print(random.randrange(0,101,2))
74
字符
随机输出1个字符
>>> print(random.choice('abcdefghijklmnopqrstuvwxyz!@#$%^&*()'))
@
从多个字符里随机输出5个字符
>>> print (random.sample('zyxwvutsrqponmlkjihgfedcba',5))
['b', 'm', 'i', 'g', 'r']
从a-z A-Z 0-9生成指定数量的随机字符
>>> print(''.join(random.sample(string.ascii_letters + string.digits, 3)))
zP2
字符串
从多个字符中选取指定数量的字符组成新字符串
>>> print(''.join(random.sample(['z','y','x','w','v','u','t','s','r','q','p','o','n','m','l','k','j','i','h','g','f','e','d','c','b','a'], 5)))
wmlui
随机选取字符串
>>> print (random.choice(['剪刀', '石头', '布',1,6,4]))
1