python v3.7.0
random.random()
生成一个随机的浮点数,范围是在0.0~1.0之间。
import random
a=random.random()
print(a)
0.4156918860673895
print('{0:.3f}'.format(a))
0.416
print(round(a,3))
0.416
random.uniform(a,b)
random.uniform()方法可以设定生成的随机浮点数的范围,两个参数其中一个是上限,一个是下限。如果a > b,则生成的随机数n: a <= n <= b。如果 a <b, 则 b <= n <= a。
print(random.uniform(1, 1))
1.0
print(random.uniform(1, 2))
1.222097652142283
print(random.uniform(10, 2))
3.2784286513984773
random.randint(a,b)
随机生一个整数int类型,可以指定这个整数的范围,同样有上限和下限值,取值区间包含上下限 ,即[a,b],和random.uniform()方法不同,当a>b的时候会抛出异常。
print(random.randint(1, 1))
1
print(random.randint(1, 2))
2
print(random.randint(2, 1))
ValueError: empty range for randrange() (2,2, 0)
random.choice(seq)
可以从列表,元组或字符串中选取 【一个】 随机的元素返回。
print(random.choice([1, 2, 'a']))
2
print(random.choice((3, 4, 5)))
4
print(random.choice("abc"))
c
random.shuffle(list)
随机打乱【列表】元素的位置;要注意,random.shuffle()会直接作用于seq本身,而不会返回任何值,如:
print(random.shuffle([1, 2, 3]))
None
a = [1, 2, 3]
b = a[:]
random.shuffle(b)
print(a, b)
[1, 2, 3] [1, 3, 2]
random.sample(seq,k)
可以从指定的序列中,随机选取指定长度的片断,并返回一个列表,k的取值范围是 [0,len(seq)]。
a = "abcdefg"
print(random.sample(a, len(a)))
['c', 'a', 'g', 'b', 'f', 'd', 'e']
print(a)
abcdefg
b = [1, 2, 3, "ab"]
print(random.sample(a, len(b) - 2))
['d', 'a']
print(random.sample(a, 0))
[ ]
网友评论