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实现网络测试的脚本分享

前言 最近同学让我帮忙写一个测试网络的工具。由于工作上的事情,断断续续地拖了很久才给出一个相对完整的版本。其实,我Python用的比较少,所以基本都是边查资料边写程序。 程序的主要逻辑如...

Python 判断文件或目录是否存在的实例代码

使用 os 模块 判断文件是否存在 os.path.isfile(path) 判断目录是否存在 os.path.isdir(path) 判断路径是否存在 # 使用 path 模块 o...

Python实现E-Mail收集插件实例教程

Python实现E-Mail收集插件实例教程

__import__函数 我们都知道import是导入模块的,但是其实import实际上是使用builtin函数import来工作的。在一些程序中,我们可以动态去调用函数,如果我们知道...

浅谈pycharm下找不到sqlalchemy的问题

浅谈pycharm下找不到sqlalchemy的问题

平台: windows 10 pycharm 2016.2 python 2.7.12 问题始于我在pycharm下建了一个flask工程,然后导入sqlalchemy的包: fro...

Python基于SMTP协议实现发送邮件功能详解

Python基于SMTP协议实现发送邮件功能详解

本文实例讲述了Python基于SMTP协议实现发送邮件功能。分享给大家供大家参考,具体如下: SMTP(Simple Mail Transfer Protocol),即简单邮件传输协议,...