This article summarizes the most commonly used methods of generating random numbers in the random module in Python. Let’s give a chestnut first:
The code is as follows
随机整数: >>> import random >>> random.randint(0,99) 21 随机选取0到100间的偶数: >>> import random >>> random.randrange(0, 101, 2) 42 随机浮点数: >>> import random >>> random.random() 0.85415370477785668 >>> random.uniform(1, 10) 5.4221167969800881 随机字符: >>> import random >>> random.choice('abcdefg&#%^*f') 'd' 多个字符中选取特定数量的字符: >>> import random random.sample('abcdefghij',3) ['a', 'd', 'b'] 多个字符中选取特定数量的字符组成新字符串: >>> import random >>> import string >>> string.join(random.sample(['a','b','c','d','e','f','g','h','i','j'], 3)).r eplace(" ","") 'fih' 随机选取字符串: >>> import random >>> random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] ) 'lemon' 洗牌: >>> import random >>> items = [1, 2, 3, 4, 5, 6] >>> random.shuffle(items) >>> items [3, 2, 5, 6, 4, 1]
For those in need You can take a look.
The following introduces some of the most commonly used functions in the random module
random.random
random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0
random.uniform
The function prototype of random.uniform is: random.uniform(a, b), which is used to generate a random number of symbol points within a specified range. One of the two parameters is the upper limit. , one is the lower limit. If a > b, the generated random number n: a <= n <= b. If a print random.uniform(10, 20)
print random.uniform(20, 10)
#---- 结果(不同机器上的结果不一样)
#18.7356606526
#12.5798298022
random.randint
The function prototype of random.randint() is: random.randint(a, b), which is used to generate an integer within a specified range . The parameter a is the lower limit, the parameter b is the upper limit, and the generated random number n: a <= n <= b
print random.randint(12, 20) #生成的随机数n: 12 <= n <= 20 print random.randint(20, 20) #结果永远是20 #print random.randint(20, 10) #该语句是错误的。下限必须小于上限。
random.randrange
random.randrange The function prototype is: random.randrange([start], stop[, step]), which obtains a random number from a set in the specified range that increases by the specified base. For example: random.randrange(10, 100, 2), the result is equivalent to obtaining a random number from the sequence [10, 12, 14, 16, ... 96, 98]. random.randrange(10, 100, 2) is equivalent in result to random.choice(range(10, 100, 2).
random.choice
Random.choice gets a random element from the sequence. Its function prototype is: random.choice(sequence). The parameter sequence represents an ordered type. It should be noted here: sequence is not a specific type in python. It generally refers to a series of types. List, tuple, and string all belong to sequence. For information about sequence, you can see the chapter of python manual data model. Here are some examples of using choice:
print random.choice("学习Python") print random.choice(["JGood", "is", "a", "handsome", "boy"]) print random.choice(("Tuple", "List", "Dict"))
##random. shuffle
The function prototype of random.shuffle is: random.shuffle(x[, random]), which is used to shuffle the elements in a list, such as:p = ["Python", "is", "powerful", "simple", "and so on..."] random.shuffle(p) print p #---- 结果(不同机器上的结果可能不一样。) #['powerful', 'simple', 'is', 'Python', 'and so on...']
The function prototype of random.sample is: random.sample(sequence, k). The sample function randomly obtains a fragment of the specified length from the specified sequence without modifying the original sequence. .
list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] slice = random.sample(list, 5) #从list中随机获取5个元素,作为一个片断返回 print slice print list #原有序列并没有改变。
The above methods are the most commonly used in the random module. Interested friends can learn more about them in the Python manual.
[Related recommendations]
1.
The above is the detailed content of Share an example tutorial on how to generate random numbers using the random module in Python. For more information, please follow other related articles on the PHP Chinese website!