Python 随机生成三位数字


描述:

  1. 以整数17为随机数种子,获取用户输入整数N为长度,产生3个长度为N位的密码,密码的每位是一个数字。每个密码单独一行输出。
  2. 产生密码采用random.randint()函数。

方法1:

通过randint(a,b)范围来生成随机密码;
通过random.seed()来定义随机数种子;

import random

def genpwd(length):
    a = 10**(length-1) #定义随机数范围下限
    b = 10**length - 1 #定义随机数范围上限
    return "{}".format(random.randint(a, b)) 

length = eval(input())
random.seed(17) #设置随机数种子
for i in range(3):
    print(genpwd(length))`

方法2:

使用列表推导式,把数字列表转换成字符串列表
使用.join()函数,将序列中的元素以指定的字符连接生成一个新的字符串。

import random

def genpwd(length):
    l=[str(random.randint(0,9)) for i in range(length)] #列表推导,生成字符串列表
    return eval(''.join(l)) 列表元素连接生成字符串,并用eval输出

length = eval(input())
random.seed(17)
for i in range(3):
    print(genpwd(length))

(以上题学到了三个知识点:)

  1. 10(length-1),10length-1来根据长度确定上下限问题;
  2. 数值列表转换字符列表办法。
  3. .join()函数的用法,只适用于字符串列表的重新排列生成

以上内容是参加国家精品在线开放课"Python语言程序设计"(中国大学MOOC平台)对应的实践课程练习,第15次开课。嵩天 老师


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM