Python 动手练: 生成随机数_python生成随机数的代码

liftword4个月前 (02-05)技术文章28

本练习题重点介绍如何使用 random 模块和 secrets 模块生成随机数。

「建议:根据提示完成练习后,再参考文末示例代码。」

练习 1:随机生成 3 个能被 5 整除的整数

编写一个程序,生成 3 个介于 100 和 999 之间的随机整数,该整数可被 5 整除。

「提示」

使用 random 模块的randrange() 方法。

randrange() 方法返回指定递增基数集合中的一个随机数。

randrange() 方法的语法:

import random

random.randrange ([start,] stop [,step])

参数:

start -- 指定范围的开始值,包含在范围内。

stop -- 指定范围的结束值,不包含在范围内。

step -- 指定递增基数。

练习 2:幸运号码

编写一个程序,随机生成 100 个十位数字,并从中挑选两个作为幸运号码。

号码的长度必须为10位数字。

所有 100 个号码必须是唯一的。

「提示」

使用 randrange() 生成一个包含 100 个随机数字的列表。

然后使用 sample() 方法挑选 2 张幸运号码。

sample() 从序列中选择指定数量的唯一元素。用于无重复的随机抽样。

练习 3:随机密码

编写一个程序,使用 secrets 模块生成一个高度加密的六位随机数。

「提示」

伪随机数模块random生成的随机数并不随机,大多数情况下,如果不设置随机数种子,会按照系统时间来生成种子,进而生成随机数,若是用random生成的随机数当密码,那被破解的几率应该是很高的。

secrets是python3.6加入到标准库的,使用secrets模块,可以生成适用于处理机密信息(如密码,帐户身份验证,安全令牌)的加密强随机数。

SystemRandom() 使用OS提供的最高质量源生成随机数的类。

练习 4:随机选择一个字符

编写一个程序,从给定字符串中随机选择一个字符。

「提示」

choice() 方法返回一个列表,元组或字符串的随机项。

语法:

import random

random.choice( seq )

参数:

seq -- 可以是一个列表,元组或字符串。

练习 5:生成六位验证码

编写一个程序来生成六位验证码,验证码由大小写字母组成。

「提示」

使用 string 模块的 string.ascii_letters 常量,获取所有大小写字母。

使用 for 循环,通过 choice() 随机选择一个字符。

使用 join() 进行连接。

# 练习 1
import random
for n in range(3):
    num = random.randrange(100, 1000, 5)
    print(num)
# 练习 2
import random
list1 = []
for i in range(100):
    list1.append(random.randrange(1000000000, 10000000000))
Lucky = random.sample(list1, 2)
print("幸运号码:", Lucky)
# 练习 3
import secrets
secretsGenerator = secrets.SystemRandom()
pws = secretsGenerator.randrange(100000, 999999)
print("随机密码:", pws)
# 练习 4
import random
str1 = 'zbxx.net'
char = random.choice(str1)
print("随机字符是:", char)
# 练习 5
import random
import string
str1 = ''
letters = string.ascii_letters
for i in range(6):
    str1=str1+''.join(random.choice(letters)) 
print("验证码:", str1)

文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈!

相关文章

掌握Python中choice函数的用法:随机选择与random模块

知识星球:写代码那些事如果你有收获|欢迎|点赞|关注|转发这里会定期更新|大厂的开发|架构|方案设计这里也会更新|如何摸鱼|抓虾Python教程:Python中choice函数用法欢迎来到写代码那些事...

Python生成随机数_python生成随机数并判断奇偶

生成一个Python随机数 6 分钟阅读Python有一个内置的随机模块来实现此目的。它公开了几个方法,如randrange(),randint(),random(),seed(),uniform()...

Python获取随机数方法汇总_python语言如何获取随机整数

1. random.random()作用:随机生成一个[0,1)之间的浮点数import random print(f'随机生成一个[0,1)之间的浮点数={random.random()}')2....

Python 随机字符串_python 生成随机字符

在很多时候我们可能需要生成一些随机字符串。Python 也为我们提供了生成随机字符串的方法和函数。这个函数是在 random 库中定义的函数 choice。通常 choice 将会从给定的字符串中挑选...

Python随机抽查部分学生,手把手教你学会random

疫情期间的网课上你有被熊孩子气到炸吗网线的两端,是不是这样巧合呢复课后的课堂上你有被熊孩子气到疯吗等下,跑题了,下面言归正传关键知识点:random库、判断、循环、列表、异常处理、文件的读取等。开发环...

在PLC中生成随机数_在plc中生成随机数的代码

有时为了某些测试需求,需要仿真产生一些数据。这时,我们可以通过调取指令或自行编写程序来生成这些随机数据。以下以博途为例,简要说明了随机数产生的几种方式:一、读取系统时间的纳秒作为随机数以固定周期直接将...