python-随机操作(random)
random模块作用是返回随机数,只要跟随机元素相关的,都可以使用它。
Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。
1、random模块方法说明
random.random()函数是这个模块中最常用的方法了,它会生成一个随机的浮点数,范围是在0.0~1.0之间。
random.uniform(a,b)正好弥补了上面函数的不足,它可以设定浮点数的范围,一个是上限,一个是下限。
random.randint(a,b)随机生一个整数int类型,可以指定这个整数的范围,同样有上限和下限值(下限必须不大于上限)。
random.randrange([start], stop[, step])从指定范围内,按指定基数递增的集合(即等差数列)中获取一个随机数。与 random.choice(range([start], stop[, step]) 等效
random.choice(seq)可以从任何序列,比如list列表中,选取一个随机的元素返回,可以用于字符串、列表、元组等(不能用于元组,字典)。
random.shuffle(list)随机打乱列表元素,改变原列表。
random.sample(seq,k)从指定的序列seq中,随机选取k个元素,不改变原序列,可以用于元组、字典。注意:输出结果为列表(list)。seq为字典时,选取的是key。
2、实例
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2017/12/26 10:32
# @Author : Andes
# @Site :
import random print random.random() # 生成(0.0, 1.0)的随机数
print random.uniform(0, 100) # 生成随机浮点数 0<N<100
print random.randint(0, 100) # 生成随机整数 0<N<100
print random.randrange(0, 100, 3) # 随机生成一个1-100内3的倍数
print '******************************'
list1 = [1, 'a', 3.5, 'python', 'ha ha']
tuple1 = (1, 2.3, 5, 6, 7.0)
str1 = 'I am a Chinese!'
dict1 = {'a': 1, 'b': 2.0, '25': 50, 'd': 5.5, '12': 'he he'}
set1 = {1, 'a', 2, 'b', 3}
print random.choice(list1), list1 # 随机选择一个列表元素
print random.choice(tuple1), tuple1 # 随机选择一个元组元素
print random.choice(str1), str1 # 随机选择一个字符串元素
print '******************************'
a = random.sample(list1, 3)
print a, type(a), list1 b = random.sample(tuple1, 3)
print b, type(b), tuple1 c = random.sample(str1, 3)
print c, type(c), str1 d = random.sample(dict1, 3)
print d, type(d), dict1 e = random.sample(set1, 3)
print e, type(e), set1
print '******************************'
random.shuffle(list1)
print list1 输出结果:
0.0920955322102
70.2123410421
36
18
******************************
ha ha [1, 'a', 3.5, 'python', 'ha ha']
7.0 (1, 2.3, 5, 6, 7.0)
I I am a Chinese!
******************************
['a', 'ha ha', 3.5] <type 'list'> [1, 'a', 3.5, 'python', 'ha ha']
[7.0, 5, 2.3] <type 'list'> (1, 2.3, 5, 6, 7.0)
['e', 'h', ' '] <type 'list'> I am a Chinese!
['a', 'b', '25'] <type 'list'> {'a': 1, '25': 50, '12': 'he he', 'b': 2.0, 'd': 5.5}
['b', 1, 'a'] <type 'list'> set(['a', 1, 2, 'b', 3])
******************************
[3.5, 'python', 'a', 'ha ha', 1]
python-随机操作(random)的更多相关文章
- Python 随机(random)模块的不可预测之美
1 . 概念 1.1 真.伪随机数 大部分的计算机语言都会提供 API 生成随机数,此类 API 称为随机数生成器. 计算机可以用随机数模拟现实世界中的各种随机概率问题,没有随机生成器的编程语言不是& ...
- python 随机模块random
- python产生随机值-random模块
import random产生随机值的模块random.random() #获取一个随机的浮点值;help(random.random) #查看随机范围:0-1;random.uniform(1,10 ...
- 用python随机生成数据,再插入到postgresql中
用python随机生成学生姓名,三科成绩和班级数据,再插入到postgresql中. 模块用psycopg2 random import random import psycopg2 fname=[' ...
- Python模块操作
Exceptions 模块 该模块定义了以下标准异常: • Exception 是所有异常的基类. 强烈建议(但不是必须)自定义的异常异常也继承这个类. • SystemExit(Exception) ...
- media静态文件统一管理 操作内存的流 - StringIO | BytesIO PIL:python图片操作库 前端解析二进制流图片(了解) Admin自动化数据管理界面
一.media ''' 1. 将用户上传的所有静态文件统一管理 -- settings.py -- MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 2. 服务 ...
- Python中的random模块,来自于Capricorn的实验室
Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random()用于生成一个0到1的随机符点数: 0 < ...
- Python中的random模块
Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random()用于生成一个0到1的随机符点数: 0 < ...
- python学习之random模块
Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random()用于生成一个0到1的随机符点数: 0 < ...
- Python随机生成验证码的两种方法
Python随机生成验证码的方法有很多,今天给大家列举两种,大家也可以在这个基础上进行改造,设计出适合自己的验证码方法方法一:利用range Python随机生成验证码的方法有很多,今天给大家列举两种 ...
随机推荐
- Python协程笔记 - yield
生成器(yield)作为协程 yield实际上是生成器,在python 2.5中,为生成器增加了.send(value)方法.这样调用者可以使用send方法对生成器发送数据,发送的数据在生成器中会赋值 ...
- ElasticStack系列之二十 & 数据均衡、迁移、冷热分离以及节点自动发现原理与机制
1. 数据均衡 某个shard分配到哪个节点上,一般来说,是由 ELasticSearch 自行决定的.以下几种情况会触发分配动作: 新索引的建立 索引的删除 新增副本分片 节点增减引发的数据均衡 在 ...
- Http请求中Content-Type讲解以及在Spring MVC中的应用【转】
完全引用自: http://blog.csdn.net/blueheart20/article/details/45174399#t1 此文讲得很清晰,赞! 引言: 在Http请求中,我们每天都在 ...
- Hystrix介绍以及服务的降级限流熔断
(dubbo熔断,Hystrix问的少) 无论是缓存层还是存储层都会有出错的概率,可以将它们视同为资源.作为并发量较大的系统,假如有一个资源不可用,可能会造成线程全部 hang (挂起)在这个资源上, ...
- HDU - 5419 Victor and Toys(组合计数)
http://acm.hdu.edu.cn/showproblem.php?pid=5419 题意 n个物品,标号1-n,物品i有权值wi.现在有m个区间[l,r],从中任意选三个区间i,j,k,求物 ...
- Forth 语言概要 - Forth: An underview
Forth 语言概要 - Forth: An underview 原作者 Peter Knaggs 原文标题< Forth: An underview > 译者: 未知 译文链接: htt ...
- Python复习笔记(三)函数进阶
问题 1:在函数内部,针对参数使用 赋值语句,会不会影响调用函数时传递的 实参变量? —— 不会! 无论传递的参数是 可变 还是 不可变 只要 针对参数 使用 赋值语句,会在 函数内部 修改 局部变量 ...
- 解决iOS10下Meta设置user-scalable=no无效问题
苹果为了提高Safari中网站的辅助功能,屏蔽了Meta下的user-scalable=no功能 所以在iOS10下面,就算加上user-scalable=no,Safari浏览器也能支持手动缩放 解 ...
- 8.SpringBoot 模板引擎 Thymeleaf
1.模板引擎原理 JSP.Velocity.Freemarker.Thymeleaf 都是模板引擎.SpringBoot推荐的Thymeleaf:语法更简单,功能更强大: Thymeleaf模板引擎 ...
- Visual Studio 各版本下载
http://baike.baidu.com/link?url=guN2bFtq-TvtdH-iDSiYFDJ-HF8R4_12qz6QRjxKxP2Nz8jK0p70KlmudolZOg-C3umq ...