from random import Random
def random_str(randomlength=8)://固定长度8
str = ''//str初始为空
chars = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz0123456789'
length = len(chars) - 1
random = Random() //random模块用于生成随机数
for i in range(randomlength)://循环生成随机字符串
str+=chars[random.randint(0, length)]
return str
楼主看看下面的方法吧,也许能为你开阔思路思想很简单,从一个列表里选取字符,选中的字母就从列表中删除,这样就可以避免重复了
去掉##就可以了
##import random
##
##def getstr(n):
## al=list('abcdefghijklmnopqrstuvwxyz')
## st=''
## for i in range(n):
## index = random.randint(0,len(al))
## st = st + al[index]
## del al[index]
## return st
过程如图所示:
获取1~100以内的随机数有两种方法:
方法1:可以通过Math类中的random方法获取随机数,再乘以100加1,然后转换为int类型即可。
方法2:可以通过Random类中的nextInt方法获取随机数。
扩展资料
函数使用补充说明
1、random是用于生成随机数的,可以利用它随机生成数字或者选择字符串。
random.random(),用于生成一个随机浮点数:range[0.0,1.0)。
random.uniform(a,b),用于生成一个指定范围内的随机浮点数,a,b为上下限,只要a!=b,就会生成介于两者之间的一个浮点数,若a=b,则生成的浮点数就是a。
random.randint(a,b),用于生成一个指定范围内的整数,a为下限,b为上限,生成的随机整数a<=n<=b若a=b,则n=a;若a>b,报错。
random.randrange([start], stop [,step]),从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1。
random.choice(sequence),从序列中获取一个随机元素,参数sequence表示一个有序类型,并不是一种特定类型,泛指list,tuple,字符串等。
random.shuffle(x[,random]),用于将一个列表中的元素打乱。
random.sample(sequence,k),从指定序列中随机获取k个元素作为一个片段返回,sample函数不会修改原有序列。
2、Python中有join()和os.path.join()两个函数,具体作用如下:
join():连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串。
os.path.join():将多个路径组合后返回。