和java中的random()函数一样,在python中也有类似的模块random,即随机数

下面是我做的demo

运行效果:

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

代码部分:

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

 #python random

 import random

 def get_random():
'''get a random number.
return Random float x, 0.0 <= x < 1.0'''
return random.random() def get_uniform(a, b):
'''Return a random floating point number N such that
a <= N <= b for a <= b and b <= N <= a for b < a.
The end-point value b may or may not be included in the
range depending on floating-point rounding in the
equation a + (b-a) * random().
'''
return random.uniform(a, b) def get_randrange(n):
'''return an Integer from 0 to n
and the number n must be greater than 0
or n > 0
'''
return random.randrange(n) def get_randrange_ex(start, stop, step):
'''返回一个从start开始到stop结束,步长为step的随机数'''
return random.randrange(start, stop, step) def choice(s):
'''从一个字符串中随机获取一个字符串,传入的参数s是不能为空或者不能为None'''
if s != '' and s != None:
return random.choice(s)
else:
print('the param is empty or equals None!') def shuffle(items):
'''对一个序列进行洗牌的操作'''
random.shuffle(items)
return items def sample(items, n):
'''从一个序列中随机抽出n个数,当然,在这n个数中,可能出现有重复的数'''
return random.sample(items, n) def main():
r = get_random()
print('获取一个0.0-1.0之间的随机数:{}'.format(r))
r = get_uniform(2, 100)
print('获取一个2.0-100.0之间的随机数:{}'.format(r))
r = get_randrange(100)
print('获取一个0-100之间的随机数:{}'.format(r))
r = get_randrange_ex(3, 100, 25)
print('获取一个3-100之间的随机数:{}'.format(r))
tem_str = 'this is a test message!'
r = choice(tem_str)
print('从[{}]中随机取出一个字符:{}'.format(tem_str, r))
tem_items = [1, 2, 3, 4, 5, 6, 7]
tem_r = tem_items[:]
shuffle(tem_items)
print('对序列{}进行洗牌操作:{}'.format(tem_r, tem_items)) tem_list = sample(tem_r, 3)
print('从{}中随机抽出3个数:{}'.format(tem_r, tem_list)) if __name__ == '__main__':
main()

python开发_random的更多相关文章

  1. python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...

  2. 【Machine Learning】Python开发工具:Anaconda+Sublime

    Python开发工具:Anaconda+Sublime 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现 ...

  3. Python开发工具PyCharm个性化设置(图解)

    Python开发工具PyCharm个性化设置,包括设置默认PyCharm解析器.设置缩进符为制表符.设置IDE皮肤主题等,大家参考使用吧. JetBrains PyCharm Pro 4.5.3 中文 ...

  4. Python黑帽编程1.2 基于VS Code构建Python开发环境

    Python黑帽编程1.2  基于VS Code构建Python开发环境 0.1  本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Atta ...

  5. Eclipse中Python开发环境搭建

    Eclipse中Python开发环境搭建  目 录  1.背景介绍 2.Python安装 3.插件PyDev安装 4.测试Demo演示 一.背景介绍 Eclipse是一款基于Java的可扩展开发平台. ...

  6. Python开发:环境搭建(python3、PyCharm)

    Python开发:环境搭建(python3.PyCharm) python3版本安装 PyCharm使用(完全图解(最新经典))

  7. Python 开发轻量级爬虫08

    Python 开发轻量级爬虫 (imooc总结08--爬虫实例--分析目标) 怎么开发一个爬虫?开发一个爬虫包含哪些步骤呢? 1.确定要抓取得目标,即抓取哪些网站的哪些网页的哪部分数据. 本实例确定抓 ...

  8. Python 开发轻量级爬虫07

    Python 开发轻量级爬虫 (imooc总结07--网页解析器BeautifulSoup) BeautifulSoup下载和安装 使用pip install 安装:在命令行cmd之后输入,pip i ...

  9. Python 开发轻量级爬虫06

    Python 开发轻量级爬虫 (imooc总结06--网页解析器) 介绍网页解析器 将互联网的网页获取到本地以后,我们需要对它们进行解析才能够提取出我们需要的内容. 也就是说网页解析器是从网页中提取有 ...

随机推荐

  1. 大图片上传(ImageIO,注意有的图片不能上传时因为他是tiff格式)

    一下是必要的: 1.enctype="multipart/form-data" 2. //不要使用myeclipse自动生成的get.set方法(struts2中的用法) publ ...

  2. Web安全的三个攻防姿势

    原文地址:https://segmentfault.com/a/1190000011601837 作者: zwwill_木羽 关于Web安全的问题,是一个老生常谈的问题,作为离用户最近的一层,我们大前 ...

  3. [MySQL] gap lock/next-key lock浅析

    当InnoDB在判断行锁是否冲突的时候, 除了最基本的IS/IX/S/X锁的冲突判断意外, InnoDB还将锁细分为如下几种子类型: record lock (RK) 记录锁, 仅仅锁住索引记录的一行 ...

  4. python实现链式调用

    在python中实现链式调用只需在函数返回对象自己就行了. class Person: def name(self, name): self.name = name return self def a ...

  5. ansible command模块将返回值写入变量

    ansible 中command模块支持 register参数将远程命令执行的输出结果存储在变量中,后续可以在when中对该变量进行检索确定下一步任务. --- - name: cat /etc/re ...

  6. CGI、FastCGI和php-fpm的概念和区别

    CGI是HTTP Server和一个独立的进程之间的协议,把HTTP Request的Header设置成进程的环境变量,HTTP Request的正文设置成进程的标准输入,而进程的标准输出就是HTTP ...

  7. POJ 2337 Catenyms(欧拉回(通)路:路径输出+最小字典序)

    题目链接:http://poj.org/problem?id=2337 题目大意:给你n个字符串,只有字符串首和尾相同才能连接起来.请你以最小字典序输出连接好的单词. 解题思路:跟POJ1386一个意 ...

  8. JavaWeb知识回顾-Servlet常用类、接口及其方法

    今天主要把servlet的一些常用的类.接口和方法简单回顾一下. javax.servlet包 1.javax.servlet.Servlet接口 接口用于开发servlet,所有的servlet都要 ...

  9. MINIBASE源代码阅读笔记之heapfile

    Heapfile 用来管理heap file里的dir page们 成员 _firstDirPageId:这个文件的第一个dir page _ftype:文件类型 _file_deleted:删除的时 ...

  10. Java Hibernate和.Net EntityFramework 如何在提交事务之前 就拿到需要新增实体的Id

    在Hibernate中很容易做到这一点,因为hibernate在事务commit之前  还有一个save方法,这个save方法就可以持久化并且拿到Id. 但是EF并不可以呀,EF是将对象标记为新增状态 ...