flip a coin(WLLN?)

本文通过Python代码实现硬币翻转的概率实验,展示了如何使用随机数生成和循环来模拟硬币翻转过程,并计算平均概率。实验结果显示随着翻转次数增加,平均概率趋向于0.5。
#quote from MIT 'introduction to computation and programming using python, Revised'
import random

def flip(numFlips):
    heads = 0.0
    for i in range(numFlips):
        if random.random() < 0.5:
            heads += 1
    return heads/numFlips
    
def flipSim(numFlipsPerTrial, numTrials):
    fracHeads = []
    for i in range(numTrials):
        fracHeads.append(flip(numFlipsPerTrial))
    print fracHeads
    mean = sum(fracHeads)/len(fracHeads)
    return mean


flipSim(100, 200)
[0.59, 0.58, 0.47, 0.39, 0.45, 0.43, 0.48, 0.52, 0.48, 0.5, 0.55, 0.5, 0.59, 0.52, 0.53, 0.5, 0.56, 0.55, 0.43, 0.45, 0.54, 0.46, 0.48, 0.59, 0.55, 0.5, 0.45, 0.47, 0.46, 0.38, 0.55, 0.54, 0.45, 0.47, 0.45, 0.56, 0.48, 0.45, 0.46, 0.54, 0.55, 0.54, 0.5, 0.51, 0.57, 0.48, 0.51, 0.51, 0.53, 0.53, 0.49, 0.52, 0.51, 0.52, 0.45, 0.47, 0.49, 0.46, 0.5, 0.5, 0.53, 0.55, 0.6, 0.5, 0.49, 0.43, 0.45, 0.56, 0.52, 0.37, 0.61, 0.52, 0.51, 0.51, 0.53, 0.55, 0.42, 0.48, 0.41, 0.5, 0.51, 0.58, 0.55, 0.56, 0.52, 0.59, 0.51, 0.58, 0.47, 0.54, 0.56, 0.56, 0.51, 0.51, 0.45, 0.54, 0.46, 0.5, 0.52, 0.45, 0.59, 0.53, 0.54, 0.44, 0.48, 0.44, 0.49, 0.46, 0.52, 0.52, 0.45, 0.46, 0.43, 0.45, 0.55, 0.52, 0.51, 0.55, 0.44, 0.48, 0.53, 0.36, 0.55, 0.56, 0.56, 0.47, 0.45, 0.51, 0.46, 0.6, 0.5, 0.55, 0.61, 0.46, 0.51, 0.53, 0.46, 0.43, 0.56, 0.59, 0.44, 0.57, 0.53, 0.49, 0.46, 0.41, 0.5, 0.52, 0.54, 0.46, 0.44, 0.5, 0.42, 0.47, 0.54, 0.52, 0.53, 0.51, 0.49, 0.43, 0.53, 0.46, 0.56, 0.51, 0.49, 0.43, 0.58, 0.49, 0.47, 0.5, 0.49, 0.42, 0.47, 0.49, 0.53, 0.5, 0.39, 0.53, 0.5, 0.53, 0.43, 0.45, 0.44, 0.5, 0.45, 0.44, 0.49, 0.53, 0.43, 0.58, 0.57, 0.48, 0.53, 0.47, 0.43, 0.46, 0.47, 0.54, 0.5, 0.55]
Out[9]: 0.50015


flipSim(100, 100)
[0.49, 0.5, 0.48, 0.52, 0.54, 0.49, 0.45, 0.47, 0.56, 0.38, 0.5, 0.57, 0.47, 0.41, 0.59, 0.51, 0.52, 0.52, 0.54, 0.55, 0.54, 0.5, 0.51, 0.56, 0.56, 0.49, 0.46, 0.42, 0.46, 0.45, 0.45, 0.49, 0.58, 0.47, 0.46, 0.51, 0.52, 0.45, 0.48, 0.45, 0.45, 0.44, 0.57, 0.53, 0.55, 0.44, 0.47, 0.51, 0.51, 0.53, 0.48, 0.43, 0.44, 0.46, 0.47, 0.4, 0.48, 0.38, 0.5, 0.57, 0.51, 0.56, 0.52, 0.48, 0.47, 0.58, 0.48, 0.5, 0.49, 0.46, 0.51, 0.38, 0.49, 0.48, 0.44, 0.49, 0.6, 0.55, 0.5, 0.51, 0.5, 0.55, 0.53, 0.54, 0.44, 0.54, 0.49, 0.48, 0.47, 0.39, 0.53, 0.5, 0.41, 0.37, 0.54, 0.49, 0.54, 0.49, 0.53, 0.5]
Out[10]: 0.49309999999999987


flipSim(1000, 100)
[0.49, 0.49, 0.502, 0.509, 0.521, 0.491, 0.52, 0.504, 0.502, 0.494, 0.484, 0.51, 0.508, 0.485, 0.487, 0.489, 0.524, 0.503, 0.5, 0.504, 0.515, 0.492, 0.502, 0.502, 0.5, 0.507, 0.527, 0.5, 0.479, 0.508, 0.499, 0.466, 0.509, 0.517, 0.506, 0.49, 0.51, 0.49, 0.51, 0.516, 0.509, 0.512, 0.481, 0.462, 0.511, 0.498, 0.501, 0.501, 0.509, 0.477, 0.491, 0.514, 0.497, 0.486, 0.49, 0.503, 0.516, 0.523, 0.497, 0.521, 0.522, 0.487, 0.487, 0.534, 0.509, 0.517, 0.516, 0.512, 0.503, 0.504, 0.522, 0.5, 0.491, 0.511, 0.498, 0.504, 0.521, 0.511, 0.499, 0.484, 0.536, 0.503, 0.507, 0.486, 0.54, 0.509, 0.515, 0.505, 0.486, 0.514, 0.499, 0.478, 0.486, 0.483, 0.504, 0.518, 0.488, 0.482, 0.513, 0.496]
Out[11]: 0.50241


flipSim(10000, 100)
[0.5039, 0.5067, 0.5041, 0.5051, 0.4989, 0.5, 0.4975, 0.4994, 0.5026, 0.51, 0.4983, 0.5008, 0.4982, 0.5036, 0.5064, 0.5022, 0.5042, 0.5042, 0.4951, 0.4983, 0.505, 0.4967, 0.5082, 0.5064, 0.5012, 0.4949, 0.4958, 0.4971, 0.505, 0.506, 0.5034, 0.5027, 0.4977, 0.5091, 0.5029, 0.505, 0.5032, 0.5042, 0.4998, 0.5059, 0.4954, 0.4902, 0.4976, 0.5053, 0.4897, 0.4852, 0.5052, 0.5005, 0.4997, 0.5097, 0.4957, 0.5018, 0.4972, 0.5003, 0.4975, 0.495, 0.5025, 0.5021, 0.4978, 0.4963, 0.5035, 0.5008, 0.5091, 0.5027, 0.5013, 0.5133, 0.4934, 0.4956, 0.4982, 0.5022, 0.5031, 0.4983, 0.499, 0.5024, 0.5097, 0.5, 0.5009, 0.505, 0.4981, 0.4908, 0.5075, 0.501, 0.4916, 0.5109, 0.4986, 0.4892, 0.5004, 0.5025, 0.5007, 0.5036, 0.5066, 0.504, 0.4996, 0.5036, 0.5072, 0.4962, 0.4966, 0.4981, 0.508, 0.5066]
Out[12]: 0.5011430000000001


flipSim(10, 100)
[0.4, 0.4, 0.2, 0.5, 0.4, 0.3, 0.2, 0.4, 0.7, 0.6, 1.0, 0.3, 0.8, 0.6, 0.3, 0.3, 0.4, 0.5, 0.8, 0.6, 0.4, 0.7, 0.7, 1.0, 0.9, 0.6, 0.5, 0.6, 0.6, 0.4, 0.7, 0.4, 0.6, 0.3, 0.4, 0.5, 0.5, 0.5, 0.8, 0.6, 0.8, 0.2, 0.5, 0.6, 0.5, 0.5, 0.6, 0.6, 0.5, 0.6, 0.5, 0.5, 0.5, 0.5, 0.4, 0.7, 0.7, 0.5, 0.5, 0.5, 0.7, 0.4, 0.5, 0.4, 0.4, 0.7, 0.4, 0.2, 0.4, 0.5, 0.7, 0.2, 0.6, 0.6, 0.7, 0.3, 0.1, 0.6, 0.6, 0.8, 0.8, 0.4, 0.3, 0.8, 0.5, 0.5, 0.2, 0.8, 0.4, 0.4, 0.5, 0.5, 0.8, 0.7, 0.6, 0.4, 0.6, 0.5, 0.5, 0.7]
Out[13]: 0.528

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值