Python random模块(获取随机数)常用方法和使用例子

random.random
random.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0

random.uniform
random.uniform(a, b),用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。如果a > b,则生成的随机数n: a <= n <= b。如果 a <b, 则 b <= n <= a


代码如下:

print random.uniform(10, 20)
print random.uniform(20, 10)
# 18.7356606526
# 12.5798298022

random.randint
random.randint(a, b),用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数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([start], stop[, step]),从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数。random.randrange(10, 100, 2)在结果上与 random.choice(range(10, 100, 2) 等效

random.choice
random.choice从序列中获取一个随机元素。其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。有关sequence可以查看python手册数据模型这一章。下面是使用choice的一些例子:


代码如下:

print random.choice("学习Python")
print random.choice(["JGood", "is", "a", "handsome", "boy"])
print random.choice(("Tuple", "List", "Dict"))

random.shuffle
random.shuffle(x[, random]),用于将一个列表中的元素打乱。如:


代码如下:

p = ["Python", "is", "powerful", "simple", "and so on..."]
random.shuffle(p)
print p
# ['powerful', 'simple', 'is', 'Python', 'and so on...']

random.sample
random.sample(sequence, k),从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列


代码如下:

list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
slice = random.sample(list, 5)  # 从list中随机获取5个元素,作为一个片断返回
print slice
print list  # 原有序列并没有改变

随机整数:


代码如下:

>>> 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) ).replace(" ","")
# '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]

时间: 2014-05-10

python 生成不重复的随机数的代码

复制代码 代码如下: import random print 'N must >K else error' n=int(raw_input("n=")) k=int(raw_input("k=")) result=[] x=range(n) for i in range(k): t=random.randint(i,n-1) temp=x[i] x[i]=x[t] x[t]=temp result.append(x[i]) print result raw_i

python生成指定长度的随机数密码

复制代码 代码如下: #!/usr/bin/env python# -*- coding:utf-8 -*- #导入random和string模块import random, string def GenPassword(length):    #随机出数字的个数    numOfNum = random.randint(1,length-1)    numOfLetter = length - numOfNum    #选中numOfNum个数字    slcNum = [random.cho

python简单实现获取当前时间

说起计算机中的时间,还有一些比较有意思的事,比如我们经常听到的Unix时间戳,UTC时间,格林威治时间等,从表示上来讲他们基本属于同一个东西,因为他们的时间表示都是从1970年.1月.1日开始到现在的秒数,到这有人就有问题了,为毛是从这个时间点开始的呢?因为这天呀发生了一件大事,UNIX操作系统诞生了,这UNIX诞生可有来历,他是一个歪果仁利用老婆孩子外出度假的时间来完成的,我假设大家了解操作系统的复杂性,那么我们预估他老婆要外出几年才能完成UNIX系统的编写?3年?5年? 错,人家老婆就去了一

Python编程实现生成特定范围内不重复多个随机数的2种方法

本文实例讲述了Python编程实现生成特定范围内不重复多个随机数的2种方法.分享给大家供大家参考,具体如下: 在近期进行的一个实验中,需要将数据按一定比例随机分割为两个部分.这一问题的核心其实就是产生不重复随机数的问题.首先想到的递归的方法,然后才发现Python中居然已经提供了此方法的函数,可以直接使用.具体代码如下: #生成某区间内不重复的N个随机数的方法 import random; #1.利用递归生成 resultList=[];#用于存放结果的List A=1; #最小随机数 B=10

Python常用时间操作总结【取得当前时间、时间函数、应用等】

本文实例讲述了Python常用时间操作.分享给大家供大家参考,具体如下: 我们先导入必须用到的一个module >>> import time 设置一个时间的格式,下面会用到 >>>ISOTIMEFORMAT='%Y-%m-%d %X' 看一下当前的时间,和其他很多语言相似这是从epoch(1970 年 1 月 1 日 00:00:00)开始到当前的秒数. >>> time.time() 1180759620.859 上面的看不懂,换个格式来看看 &g

Python生成随机数的方法

如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与random模块中最常用的几个函数的关系,希望你会有所收获,以下就是这篇文章的介绍. random.random()用于生成 用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限.如果a > b,则生成随机数 n: a <= n <= b.如果 a <b, 则 b <= n <= a. print random.uniform(

Python使用当前时间、随机数产生一个唯一数字的方法

本文实例讲述了Python使用当前时间.随机数产生一个唯一数字的方法.分享给大家供大家参考,具体如下: Python生成当前时间很简单,比Java的代码简短多了,Java产生时间可参考<Java获取当前系统事件System.currentTimeMillis()方法> 具体代码如下: #-*-coding:utf-8-*- import datetime now = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")

Python获取当前时间的方法

我有的时候写程序要用到当前时间,我就想用python去取当前的时间,虽然不是很难,但是老是忘记,用一次丢一次,为了能够更好的记住,我今天特意写下获取当前时间的方法,如果你觉的对你有用的话,可以收藏下. 取得时间相关的信息的话,要用到python time模块,python time模块里面有很多非常好用的功能,你可以去官方文档了解下,要取的当前时间的话,要取得当前时间的时间戳,时间戳好像是1970年到现在时间相隔的时间. 你可以试下下面的方式来取得当前时间的时间戳:import timeprin

Python实现基于权重的随机数2种方法

问题: 例如我们要选从不同省份选取一个号码,每个省份的权重不一样,直接选随机数肯定是不行的了,就需要一个模型来解决这个问题. 简化成下面的问题: 字典的key代表是省份,value代表的是权重,我们现在需要一个函数,每次基于权重选择一个省份出来 {"A":2, "B":2, "C":4, "D":10, "E": 20} 解决: 这是能想到和能看到的最多的版本,不知道还没有更高效好用的算法. #!/usr/

python获取当前时间对应unix时间戳的方法

本文实例讲述了python获取当前时间对应unix时间戳的方法.分享给大家供大家参考.具体分析如下: Unix timestamp:是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒 import datetime import time print time.mktime(datetime.datetime.now().timetuple()) 输出为: 1431674373.0 PS:这里再为大家推荐一个本站Unix时间戳转换工具,附带了各种语言下Unix时间戳的操作

iOS获取当前时间和当前时间戳的方法

//获取当前的时间 +(NSString*)getCurrentTimes{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; // ----------设置你想要的格式,hh与HH的区别:分别表示12小时制,24小时制 [formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"]; //现在时间,你可以输出来看下是什么格式 NSDate *datenow = [NSDate d

python正常时间和unix时间戳相互转换的方法

本文实例讲述了python正常时间和unix时间戳相互转换的方法.分享给大家供大家参考.具体分析如下: 这段代码可以用来转换常规时间格式为unix时间戳,也可以将unix时间戳转换回来, 例如:1332888820 格式转换成 2012-03-28 06:53:40的形式 # -*- coding: utf-8 -*- import time def timestamp_datetime(value): format = '%Y-%m-%d %H:%M:%S' # value为传入的值为时间戳(

JavaScript输出当前时间Unix时间戳的方法

本文实例讲述了JavaScript输出当前时间Unix时间戳的方法.分享给大家供大家参考.具体如下: 下面的代码通过Date对象的getTime()放回unix时间戳,即从1970年1月1日到当前时间的秒数 <!DOCTYPE html> <html> <body> <p id="demo"> Click the button to display the number of milliseconds since midnight, Ja

讲Perl中的本地时间与UNIX时间戳间相互转换的方法

当你的Perl脚本需要解决时间信息,这里有两种方法来表示和处理日期和时间.一种方法是易读的时间表示(例,"Sat Mar 14 10:14:05 EDT 2015"),另外一种是使用UNIX时间戳(也叫"新纪元时间"),这是从1970年1月1日到今所经过的时间秒数.每一种方法都有它自己的优劣势,取决于你的需要,也许也就需要转换一种格式到另一种. Perl中转换本地时间到UNIX时间戳 为了从日期字符串中获得UNIX时间,可以使用Date::Parse模块中str2t

JavaScript获取当前时间向前推三个月的方法示例

本文实例讲述了JavaScript获取当前时间向前推三个月的方法.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"&g

python获取从命令行输入数字的方法

本文实例讲述了python获取从命令行输入数字的方法.分享给大家供大家参考.具体如下: #---------------------------------------- # Name: numerical_input.py # Author: Kevin Harris # Last Modified: 02/13/04 # Description: This Python script demonstrates # how to get numerical input # from the c

python获取一组汉字拼音首字母的方法

本文实例讲述了python获取一组汉字拼音首字母的方法.分享给大家供大家参考.具体实现方法如下: #!/usr/bin/env python # -*- coding: utf-8 -*- def multi_get_letter(str_input): if isinstance(str_input, unicode): unicode_str = str_input else: try: unicode_str = str_input.decode('utf8') except: try:

Python获取文件所在目录和文件名的方法

实例如下: import os if __name__ == "__main__": file_path = 'D:/test/test.apk' parent_path = os.path.dirname(file_path) print('parent_path = %s' % parent_path) file_name = os.path.split(file_path)[-1] print('file_name = %s' % file_name) 输出: 以上就是小编为大家

Python获取网页上图片下载地址的方法

本文实例讲述了Python获取网页上图片下载地址的方法.分享给大家供大家参考.具体如下: 这里获取网页上图片的下载地址是正在写的数据采集中的一段,代码如下: 复制代码 代码如下: #!/user/bin/python3 import urllib2 from HTMLParser import HTMLParser class MyHtmlParser(HTMLParser):     links = []     def handle_starttag(self, tag, attrs):