python概率计算器实例分析

yipeiwu_com6年前Python基础

本文实例讲述了python概率计算器实现方法。分享给大家供大家参考。具体实现方法如下:

from random import randrange
#randrange form random module
def calc_prob(strengths):
  """A function that receives an array of two numbers 
  indicating the strength of each party 
  and returns the winner"""
  if strengths[1]>strengths[0]:
#Bring the bigger number to the first position in the array
    temp=strengths[0]
    strengths[0]=strengths[1]
    strengths[1]=temp   
  prob1=abs(strengths[0]-strengths[1])
#The relative strength of the 2 parties
  prob2=randrange(0,100)
#To calculate the luck that decides the outcome
  if prob2 in range(0,33-prob1):
#Check if the weaker party is capable of winning. 
#The condition gets narrower with the increase
#in relative strengths of each parties
    return strengths[1]
  elif prob2 in range(33-prob1,66-prob1):
  #The middle condition
    return "Draw"
  else:
     return strengths[0]
#Luck favors the stronger party and if relative strength
#between the teams is too large, 
#the match ends up in favor of the stronger party 
#Example
calc_prob([50,75]);#Always has to be a list to allow exchange
#Can be programmed in hundreds of better ways. Good luck!

希望本文所述对大家的Python程序设计有所帮助。

相关文章

wxPython之解决闪烁的问题

wxPython之解决闪烁的问题

利用Python生成PDF文件时,对比了fpdf和reportlab两个库。fpdf最新更新还是2015年, 另外reportlab的资料网上更多一些。所以选择使用reportlab。...

python redis 删除key脚本的实例

单机模式 代码片段 安装 pip install redis import redis r = redis.Redis(host='192.168.1.3', port=6188,d...

在Python中等距取出一个数组其中n个数的实现方式

在Python中等距取出一个数组其中n个数的实现方式

应用场景: 实验中不断得到新数据,想将数据图形化,但随着时间推移,数据越来越多, 此时需要我们等距选择数据列表中固定数量的数据,来进行图形化。 注:保留首尾数据。 import nu...

python学习之面向对象【入门初级篇】

python学习之面向对象【入门初级篇】

前言 最近在学习Python的面向对象编程,以前是没有接触过其它的面向对象编程的语言,因此学习这一部分是相当带劲的,这里也总结一下。 概述 python支持多种编程范式:面向过程、...

Python基础学习之常见的内建函数整理

 前言 Python针对众多的类型,提供了众多的内建函数来处理,这些内建函数功用在于其往往可对多种类型对象进行类似的操作,即多种类型对象的共有的操作,下面话不多说了,来一看看详...