最近找遍了python的各个函数发现无法直接生成随机的二维数组,其中包括random()相关的各种方法,都没有得到想要的结果。最后在一篇博客中受到启发,通过列表解析的方法得到随机的二维数组。
具体如下:
a = [[random.randint(1, 4) for j in range(1, 3)] for i in range(1, 11)]
print(array(a))
其中random.randint(1, 4)用来产生一个随机整数。此时创建了一个10行2列的数组。
[[1 3]
[1 2]
[3 1]
[1 2]
[1 2]
[3 3]
[3 1]
[1 3]
[1 2]
[3 3]]
然后对random()中的各种方法做一个总结,具体如下:
1、choice()
从序列中获取一个随机元素
random.choice(['a','b','c'])
结果为‘b'
2、randint()
用于生成一个指定范围内的整数,能取到边界的值
random.randint(1, 2)
结果为‘1'
3、random()
用于生成一个0到1的随机符点数: 0 <= n < 1.0
random.random()
结果为‘0.29892210378218154'
4、randrange()
从序列中获取一个随机数
random.randrange(10,100,2)
<