【Python自学笔记】随机函数random

https://blog.csdn.net/u013116760/article/details/79958699

随机数生成是日常工作中经常使用的功能。下面简要介绍下Python的随机数生成标准库random

random是内建(built-in)函数,作用是产生随机数,使用较多.

首先是导入模块:

import random

接着就可以调用random模块下的函数了。

最常用的函数有如下:

===============================================================================

1— random.random()

生成一个0到1之间的随机浮点数,包括0但不包括1,也就是[0.0, 1.0)。

2— random.randint(start, end)

语句的含义是产生1至100,即[1,100],的一个随机数, start 和 end 必须是整数。

random.randint(1, 100)  # 54

3— random.uniform(a, b)

生成a、b之间的一个随机浮点数。不过与randint不同的是,a、b无需是整数,也不用考虑ab哪个大哪个小。

4— random.choice(seq)

从序列中随机选取一个元素。seq需要是一个序列,比如list、元组、字符串。

random.choice([1, 2, 3, 5, 8, 13]) #list 5
random.choice('hello') #字符串  h
random.choice(['hello', 'world']) #字符串组成的list  'world'
random.choice((1, 2, 3)) #元组 3

5— random.randrange(start, stop, step)

生成一个从start到stop(不包括stop),间隔为step的一个随机数。start、stop、step都要为整数,且start

6— random.sample(population, k)

从population序列中,随机获取k个元素,生成一个新序列。sample不改变原来序列。且新序列的顺序和原序列相同。

7— random.shuffle(x)

把序列x中的元素顺序打乱。shuffle直接改变原有的序列。

8— random.seed() 

seed()方法改变随机数生成器的种子,可以在调用其他随机模块函数之前调用此函数, 注意其实是伪随机数,只要初始值一样,得到的结果会是一样的,在python中,默认用系统时间作为seed。你也可以手动调用random.seed(x)来指定seed。
 

常用场景

def get_proxies(self):
        page = random.randint(1,10)
        page_stop = page + self.page
        while page < page_stop:
            url = 'http://www.xicidaili.com/nt/%d' % page
            html = requests.get(url, headers=self.headers).content
            soup = BeautifulSoup(html, 'lxml')
            ip_list = soup.find(id='ip_list')
            for odd in ip_list.find_all(class_='odd'):
                protocol = odd.find_all('td')[5].get_text().lower()+'://'
                self.proxies.append(protocol + ':'.join([x.get_text() for x in odd.find_all('td')[1:3]]))
            page += 1

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(python库,python,random,随机函数python,随机函数random)