import random
#每轮抛100次硬币,求出硬币朝上的次数
def coin_trial():
head = 0 #硬币朝上次数初始化为0
for i in range(100):
if random.random() <= 0.5: #random随机产生0到1之间的数字
head += 1
return head #返回硬币朝上的次数
def simulation(n): #模拟抛n轮硬币,每轮100次,看看现实和理论的关系:现实足够多次,就接近理论,朝上和朝下结果一样
trial = [] #储存0-n轮硬币朝上的次数
for i in range(n):
trial.append(coin_trial())
if n < 16:
print(trial)
return sum(trial)/n #返回n轮训练硬币朝上的的平均次数
print('simulation(10) is: ',simulation(10))
print('simulation(100) is: ',simulation(100))
print('simulation(10000) is: ',simulation(1000))
print('simulation(100000) is: ',simulation(10000))
'''
print('simulation(1000000) is: ',simulation(100000))
print('simulation(10000000) is: ',simulation(1000000))
'''
输出:
[55, 49, 51, 40, 45, 51, 40, 47, 47, 48]
simulation(10) is: 47.3
simulation(100) is: 49.72
simulation(10000) is: 50.101
simulation(100000) is: 50.0528
[Finished in 0.2s]
结论:进行10000轮就可以达到理论状况,所以,人工智能的数据只要足够多,就可以接近理想效果