赞
踩
我们的行为符合自然定律,那么我们今天这些“巧合的成果”也必定是自然规律支配的结果。
如果我们的巧合只是纯粹的巧合,而并不是自然规律作用的结果,实际上是将人类放在了自然规律之外
言外之意,就是我们相信人类的行为(至少是思维)并不遵循自然规律,在人的脑子里,或者意识里,存在着另一个世界,这个世界的规律和真实世界只存在某种巧合的关系,而非响应的关系。
首先,程序的运行结果具有确定性,这个是公认的。
对于同一算法,给定相同的输入一定得到相同的输出。由于程序没办法做到对于给定的输入得到不同的输出,所以现有的随机算法,考虑的都是使得输入随机,从而最后的结果也是随机的。
程序都是固定的,所以对于一个没有输入的程序,无论用什么算法,只能让每次执行的不同随机数随机,却不能让不同次执行的数随机。
所以一般随机数都需要一些随机种子,一般这种子可能是时间、或者某快内存的当前值,这些数值的分布明显是不随机的,所以目前的计算机无法生成真正的随机数。
我认为这个是当前计算机的体系决定的,跟你后面那个问题无关,既不能佐证,也不能否定。
random()是Python中生成随机数的函数,是由random模块控制,random()函数不能直接访问,需要导入random 模块,然后再通过相应的静态对象调用该方法才能实现相应的功能。
random.random()方法返回一个随机数,其在0至1的范围之内,以下是其具体用法:
- import random
- print ("随机数: ", random.random())
- 输出结果:0.22867521257116
random.uniform()是在指定范围内生成随机数,其有两个参数,一个是范围上限,一个是范围下线,具体用法如下:
- import random
- print (random.uniform(2, 6))
- 输出结果:3.62567571297255
random.randint()是随机生成指定范围内的整数,其有两个参数,一个是范围上限,一个是范围下线,具体用法如下:
- import random
- print (random.randint(6,8))
-
- 输出结果:8
- # 每次结果都有随机
random.randrange()是在指定范围内,按指定基数递增的集合中获得一个随机数,有三个参数,前两个参数代表范围上限和下限,第三个参数是递增增量,具体用法如下:
- import random
- print (random.randrange(6, 28, 3))
- 输出结果:15
random.choice()是从序列中获取一个随机元素,具体用法如下:
- import random
- print (random.choice("www.520m.com"))
- 输出结果:2
-
- print (random.choice(["石头", "剪刀", "布"]))
- 输出结果:布
`
random.shuffle()函数是将一个列表中的元素打乱,随机排序,具体用法如下:
- import random
- num = [1, 2, 3, 4, 5]
- random.shuffle(num)
- print (num)
-
- 输出结果:[3, 5, 2, 4, 1]
random.sample()函数是从指定序列中随机获取指定长度的片段,原有序列不会改变,有两个参数,第一个参数代表指定序列,第二个参数是需获取的片段长度,具体用法如下:
- import random
- num = [1, 2, 3, 4, 5]
- sli = random.sample(num, 3)
- print (sli)
- 输出结果:[2, 4, 5]
random是伪随机数,或称伪乱数,是使用一个确定性的算法计算出来的似乎是随机的数序,因此伪随机数实际上并不随机。
Python其实没有那么难。
作者:大雄
链接:https://www.zhihu.com/question/20263819/answer/14536057
作者:余天升
链接:https://www.zhihu.com/question/20263819/answer/14537663
亲,需要你的“分享”和“在看”
IT入门 感谢关注 | 程序员题库→ 程序员用的单词表→ 练习地址:www.520mg.com/it |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。