[英]How do I generate a ranndom number or letter with certain rules in python
我正在尝试生成一个具有一定规则的随机数。 前11个数字是00000001008
所以我只是将其制成字符串并打印到屏幕上,然后在字符串之后,下一个数字是随机数字或字母,因此我正在使用random and string模块生成随机数数字或字母。 在随机生成的数字之后,我想要一组三个1,所以我像对前11个值一样将它们打印为字符串。 但是在这里,我很困惑,在三个三个1的集合之后,我想生成另一个随机数或字母,但我无法弄清楚,我尝试了与随机变量相同的代码行,并使用了新的变量名然后我尝试将其与print语句中的新变量连接起来,这给了我一个错误。 如何在三个1之后生成另一个随机数?
import random
import string
random = ''.join([random.choice(string.ascii_letters + string.digits) for n in xrange(1)])
print ("00000001008")+ random + ("111")
00000001008U111
00000001008(random)111(random)1(random)
import random
import string
random = ''.join([random.choice(string.ascii_letters + string.digits) for n in xrange(1)])
random1 = ''.join([random.choice(string.ascii_letters + string.digits) for n in xrange(1)])
print ("00000001008")+ random + ("111") + random1
random1 =''.join([xrange(1)中n的(random.choice(string.ascii_letters + string.digits)为n)])AttributeError:'str'对象没有属性'choice'
您可以简单地使用字符串格式和3个随机值
import random
import string
def gen():
return random.choice(string.ascii_letters + string.digits)
print('00000001008%s111%s1%s' % (gen(), gen(), gen()))
代码无法正常工作的唯一问题是,您将变量命名为random ,这使得模块无法访问random ,因此错误来自您的random.choice调用,该调用现在引用了string 。 将变量重命名为“ random_string”和“ random_string1”,一切都会好起来。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.