Python问题:随机产生一个8位数,每位数字可以是1到6中的任意一个整数。
请在Python中写出这个表达式随机产生一个8位数,每位数字可以是1到6中的任意一个整数。谢谢
~
import random
a = str(random.randint(1,6))
b = str(random.randint(1,6))
c = str(random.randint(1,6))
d = str(random.randint(1,6))
e = str(random.randint(1,6))
f = str(random.randint(1,6))
g = str(random.randint(1,6))
h = str(random.randint(1,6))
string = a + b + c + d + e + f + g + h
print(int(string))
原理是生成八个单独的随机数,把它们转化为字符串,这样可以直接相加合并,再转化为整形,回答的有点晚,我也是初学,希望能帮助你 本帖最后由 sd小舅子 于 2017-2-21 13:26 编辑
>>> import random
>>> for i in range(8):
a = random.randint(1,7)
print(a,end = '') random.randint(10000000,99999999) import functools, random
n = functools.reduce(lambda x, y: 10 * x + y, )
君笨笨 发表于 2017-1-29 19:20
random.randint(10000000,99999999)
加个import random先 3楼的代码简洁,不错 看回帖也是思路发散的过程啊 import random
a=0
for i in range(8):
a += random.randint(1,6)*10**i 好多发散思路~学习 看到很多值得学习的思路 简单暴力 !! {:5_97:} from random import randint
s = ''
for i in range(8):
s += str(randint(1,6))
m = int(s)
print(m) import random
print ''.join(str(random.choice(range(1,7))) for _ in range(8))
页:
[1]