Alan6 发表于 2017-1-24 20:55:10

Python问题:随机产生一个8位数,每位数字可以是1到6中的任意一个整数。

请在Python中写出这个表达式随机产生一个8位数,每位数字可以是1到6中的任意一个整数。
谢谢
~

24790955@qq.com 发表于 2017-1-26 10:11:45

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-1-26 22:52:18

本帖最后由 sd小舅子 于 2017-2-21 13:26 编辑

>>> import random
>>> for i in range(8):
        a = random.randint(1,7)
        print(a,end = '')

君笨笨 发表于 2017-1-29 19:20:56

random.randint(10000000,99999999)

冬雪雪冬 发表于 2017-1-31 20:02:06

import functools, random
n = functools.reduce(lambda x, y: 10 * x + y, )

lubcat 发表于 2017-2-7 22:11:54

君笨笨 发表于 2017-1-29 19:20
random.randint(10000000,99999999)

加个import random先

五行缺五行 发表于 2017-2-8 08:20:41

3楼的代码简洁,不错

spiranthes 发表于 2017-2-9 08:15:51

看回帖也是思路发散的过程啊

漫步Roam 发表于 2017-2-9 08:43:19

import random
a=0
for i in range(8):
    a += random.randint(1,6)*10**i

n9vakin 发表于 2017-2-10 11:12:08

好多发散思路~学习

jackche0214 发表于 2017-2-14 10:51:36

看到很多值得学习的思路

你没有未来 发表于 2017-2-14 11:16:33

简单暴力 !! {:5_97:}

Z.H. 发表于 2017-2-14 17:24:17

from random import randint
s = ''
for i in range(8):
    s += str(randint(1,6))
m = int(s)
print(m)

truefact 发表于 2017-12-21 17:07:59

import random
print ''.join(str(random.choice(range(1,7))) for _ in range(8))
页: [1]
查看完整版本: Python问题:随机产生一个8位数,每位数字可以是1到6中的任意一个整数。