zoukankan      html  css  js  c++  java
  • random 随机模块

    # ### random 随机模块
    import random
    #random() 获取随机0-1之间的小数(左闭右开)
    res = random.random()  # 0<= x < 1
    print(res)
    
    #randrange() 随机获取指定范围内的整数(包含开始值,不包含结束值,间隔值)
    res = random.randrange(2)  # 0,1
    print(res)
    
    res = random.randrange(1,6) # 1,2,3,4,5
    print(res)
    
    res = random.randrange(1,7,3) # 1 4 
    print(res)
    
    #randint() 随机产生指定范围内的随机整数
    # randint 目前是唯一一个高位值可以去得到的函数 (不推荐使用)
    res = random.randint(1,2)
    print(res)
    # res = random.randint(2,6,2) # 没有间隔值参数 功能不如randrange
    # print(res)
    
    #uniform() 获取指定范围内的随机小数(左闭右开)
    res = random.uniform(2,4) # 2<=x < 4
    print(res)
    res = random.uniform(4,-2)
    print(res)
    
    '''
    a = 4 , b = -2
    return a + (b-a) * self.random()
    
    4+(-2-4) * (0~1)
    4+-6*(0~1) =>  当取0时  4
    4+-6*(0~1) =>  当取1时  -2 (1是取不到的)
    所以:
    -2 < x <=4
    '''
    
    #choice()  随机获取序列中的值(多选一)
    listvar = ["周杰伦","王文","周润发","周星驰"]
    res = random.choice(listvar)
    print(res)
    
    # 自定义choice
    def mychoice():
    	num = random.randrange(0,len(listvar))
    	res = listvar[num]
    	return res
    
    print(mychoice())
    
    #sample()  随机获取序列中的值(多选多) [返回列表]
    listvar = ["周杰伦","王文","周润发","周星驰"]
    res = random.sample(listvar,2)
    print(res)
    
    #shuffle() 随机打乱序列中的值(直接打乱原序列)
    listvar = ["周杰伦","王文","周润发","周星驰"]
    random.shuffle(listvar)
    print(listvar)
    
    # 随机4位验证码
    def yanzhengma():
    	strvar = ""
    	for i in range(4):
    		# 产生大写字母A~Z
    		bchr = chr(random.randrange(65,91))
    		# 产生小写字母a~z
    		schr = chr(random.randrange(97,123))
    		# 数字0~9
    		num = str(random.randrange(0,10))
    		# 把所有随机值得种类塞到列表里
    		listvar = [bchr,schr,num]
    		# 随机选取一个
    		res = random.choice(listvar)
    		# 拼接字符串
    		strvar += res
    	# 返回字符串
    	return strvar
    res = yanzhengma()
    print(res)
    

      

  • 相关阅读:
    Nginx和PHP-FPM的启动、重启、停止脚本分享
    [Linux]Fedora19修复被Windows干掉的引导
    [Linux]RHEL/CentOS6配置tomcat使用80端口(与httpd整合)
    [Linux]SAMBA共享打印机
    [Linux]配置Logwatch使用第三方smtp发送电子邮件
    [oVirt]在双网卡网络环境下使用oVirt LiveCD
    走进Linux世界主题讲座纪录
    mysql用户及权限复制
    记一次失败的K8S安装部署
    HTTP状态码与爬虫
  • 原文地址:https://www.cnblogs.com/huangjiangyong/p/10920490.html
Copyright © 2011-2022 走看看