前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python模块--random

python模块--random

作者头像
py3study
发布2020-01-14 01:32:08
4920
发布2020-01-14 01:32:08
举报
文章被收录于专栏:python3

random模块                                                                                                                                                 

    random顾名思义,用于生成随机字符串,具体用法如下

代码语言:javascript
复制
import random
lis = [1,2,3,4,5,6,7,8,9,10]

#随机生成浮点数
print(random.random())          #随机返回0~1之间的浮点数
print(random.uniform(1,10))     #随机返回1~10之间的浮点数

#随机生成整数
print(random.randint(1,10))         #随机生成1~10之间的整数
print(random.randrange(0,10,2))     #随机生成0~10之间的偶数
print(random.randrange(1,10,2))     #随机生成1~10之间的基数

#操作序列、字符串
##从序列、字符串中随机返回一个元素
print(random.choice(lis))
print(random.choice('abcdefg'))

##随机截取序列、字符串中指定长度片段
print(random.sample(lis,2))
print(random.sample('abcdefg',2))

##打乱一个序列
random.shuffle(lis)
print(lis)

打印结果如下:

代码语言:javascript
复制
0.47626693393991737
4.0844448042717225
8
8
1
4
g
[9, 4]
['f', 'a']
[7, 6, 1, 2, 10, 3, 4, 8, 5, 9]

例子:

代码语言:javascript
复制
#-*- coding:utf-8 -*-
#随机密码生成器,必须含有大小写字母、数字和符号
'''
(ASCII码)
数字:[48,57]
小写字母:[97,122]
大写字母:[65,90]
符号:[33,47]
'''
import random
pass_num = int(input("请输入密码长度:"))
my_num = pass_num-4
mast_list = []      #用于随机收集大小写字母、数字和符号的ASCII码各一个
ascii_list = []     #用于随机收集剩下的密码字符对应的ASCII码
passwd_list = []    #用于收集由ASCII码转换后的字符
number = range(48,58)
s_letter = range(97,123)
b_letter = range(65,91)
symbol = range(35,38)

def creat_mast(lis):
    a = random.choice(lis)
    mast_list.append(a)

creat_mast(number)
creat_mast(s_letter)
creat_mast(b_letter)
creat_mast(symbol)
random.shuffle(mast_list)

def creat_list(lis):
    for i in lis:
        ascii_list.append(i)

creat_list(number)
creat_list(s_letter)
creat_list(b_letter)
creat_list(symbol)

ascii_list = random.sample(ascii_list,my_num) + mast_list

for i in ascii_list:
    a = chr(i)
    passwd_list.append(a)

my_pass = "".join(passwd_list)
print('随机密码为:%s'%(my_pass))
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/07/16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档