python基础例题
随机验证码
import random as r
zmb = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz'
r.seed(1)#用seed(1)初始化随机函数,保证后面产生的随机数跟标准答案的一致
code = ''
for i in range(4):
code += r.choice(zmb)
print(code)
seed(1) 相同的种子数,产生的随机数相同,(即标记随机数)
random()
random.random()用于生成一个0到1的随机浮点数
uniform(a,b)
用于生成a~b范围内的随机浮点数
return a + (b-a)*random()
randint(a,b)
用于生成a~b范围内随机整数
randrange(start,stop=None,step=1)
从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数。
print(random.ranrange(20))
# <<<5
# 如果没有stop默认从0~start随机取值,step=1
choice(sequence)
random.choice从序列中获取一个随机元素。参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。
shuffle(x)
用于将一个列表中的元素打乱,无返回值
p = ["Python", "is", "powerful", "simple", "and so on..."]
random.shuffle(p)
print(p)
# ['powerful', 'simple', 'is', 'Python', 'and so on...']
sample(population,k)
从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列。用于随机抽样法。
list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
slice = random.sample(list, 5) #从list中随机获取5个元素,作为一个片断返回
print(slice)
print(list) #原有序列并没有改变。
# [7, 4, 5, 2, 10]
# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]