Python random模块用法解析及简单示例

yipeiwu_com6年前Python基础

用法示例:

import random
# 1)随机小数
print(random.random()) # 获取大于0且小于1 之间的小数  random.random()
print(random.uniform(1, 4))   # 获取大于1小于3的小数
# 2)随机整数
print(random.randint(1, 9))   # 获取大于等于1且小于等于9之间的整数
print(random.randrange(1, 9))  # 获取大于等于1且小于9之间的整数
print(random.randrange(1, 9, 2))# 获取大于等于1且小于9之间的奇数
# 3)随机选择一个返回值
print(random.choice([1, '23', [4, 5]]))  # 返回1或者23或者[1,5]
# 4)随机选择多个返回值,返回的个数为函数的第二个参数
print(random.sample([1, '23', [4, 5]],2)) # 返回列表元素任意2个组合作为一个列表
# 5)打乱列表顺序
lis = [1, 2, 3, 4, 5, 6]
random.shuffle(lis)        # shuffle 打乱顺序
print(lis)
lis1 = [5, 1, 3, 7, 9]
random.shuffle(lis1)
print(lis1)

生成一个六位随机验证码

# 傻瓜式纯数字实现
import random
ran = random.randint(100000, 999999)
# ran = random.randrange(100000, 1000000)
print(ran)
# 常规实现
import random
l = []
for i in range(6):
   rand_num = random.randint(0, 9)
   l.append(str(rand_num))
print(''.join(l))

结果:

# 进阶实现

import random
l = []
for i in range(6):
  alpha = chr(random.randint(65, 90))       # random.randrange(65,91)
  alpha_lower = chr(random.randint(97, 122))   # random.randrange(65.91)
  num = str(random.randint(0, 9))
  ret = random.choice([alpha,num,alpha_lower])
  l.append(ret)
print(''.join(l))

结果展示:

总结

以上就是本文关于Python random模块用法解析及简单示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

你真的了解Python的random模块吗?

Python3 Random模块代码详解

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

python代理工具mitmproxy使用指南

python代理工具mitmproxy使用指南

前言 mitmproxy 是 man-in-the-middle proxy 的简称,译为中间人代理工具,可以用来拦截、修改、保存 HTTP/HTTPS 请求。以命令行终端形式呈现,操作...

flask-socketio实现WebSocket的方法

【flask-socektio】 之前不知道在哪个场合下提到过如何从web后台向前台推送消息。听闻了反向ajax技术这种模式之后,大呼神奇,试了一下之后发现也确实可以用。不过,反向aj...

python pandas cumsum求累计次数的用法

python pandas cumsum求累计次数的用法

本文主要是针对 cumsum函数的一些用法。具体应用场景看下面的数据集。 第一列是userID,第二列是安装的时间,第三列是安装的次数。 我们现在想做一件事情。就是统计用户在某一天前...

selenium python 实现基本自动化测试的示例代码

selenium python 实现基本自动化测试的示例代码

安装selenium 打开命令控制符输入:pip install -U selenium 火狐浏览器安装firebug:www.firebug.com,调试所有网站语言,调试功能 Sel...

简单了解python gevent 协程使用及作用

简介 没有切换开销。因为子程序切换不是线程切换,而是由程序自身控制,没有线程切换的开销,因此执行效率高, 不需要锁机制。因为只有一个线程,也不存在同时写变量冲突,在协程中控制共享资源...