当前位置:首页 > Python教程 > python技巧

Python学习笔记第19天

谏言:穷则独善其身,达则兼济天下

            #
             绘制直方图
            
#
             die.py
            import
             pygal

            from random import randint
class Die():
    """表示一个骰子的类"""def__init__(self,num_sides=6):
        self.num_sides=num_sides
        
    def roll(self):
        """返回一个位于1和骰子面数之间的随机值"""return randint(1,self.num_sides)
    
# die_visual.py
# from die import Die
die=Die()
# 掷几次骰子,并将结果存储在一个列表中
results=[]
for roll_num in range(1000):
    result =die.roll()
    results.append(result)
frequencies=[]
# 分析结果可视化
frequencies=[]
for value in range(1,die.num_sides+1):
    frequency= results.count(value)
    frequencies.append(frequency)

# 对结果进行可视化
hist =pygal.Bar()
hist.title = "投掷骰子每个点出现的次数"
hist.x_labels=[1,2,3,4,5,6]
hist.x_title = "Result"
hist.y_title = "Frequencies of Result"

hist.add(D06,frequencies)
hist.render_to_file(die_visual.svg)

技术分享图片

 

 

            import
             pygal

            from random import randint
class Die():
    """表示一个骰子的类"""def__init__(self,num_sides=6):
        self.num_sides=num_sides
        
    def roll(self):
        """返回一个位于1和骰子面数之间的随机值"""return randint(1,self.num_sides)
    
# die_visual.py
# from die import Die
# 创建两个D6骰子
die_1=Die()
die_2=Die()
# 掷几次骰子,并将结果存储在一个列表中
results=[]
for roll_num in range(1000):
    result =die_1.roll()+die_2.roll()
    results.append(result)
frequencies=[]
# 分析结果
max_result = die_1.num_sides+ die_2.num_sides
for value in range(2,max_result+1):
    frequency= results.count(value)
    frequencies.append(frequency)

# 对结果进行可视化
hist =pygal.Bar()
hist.title = "投掷两个骰子之和每个点出现的次数"
hist.x_labels=[2,3,4,5,6,7,8,9,10,11,12]
hist.x_title = "Result"
hist.y_title = "Frequencies of Result"

hist.add(D6+D6,frequencies)
hist.render_to_file(die_visual_2.svg)

技术分享图片

 

 

            import
             pygal

            from random import randint
class Die():
    """表示一个骰子的类"""def__init__(self,num_sides=6):
        self.num_sides=num_sides
        
    def roll(self):
        """返回一个位于1和骰子面数之间的随机值"""return randint(1,self.num_sides)
    
# die_visual.py
# from die import Die
# 创建一个D6骰子和一个D10
die_1=Die()
die_2=Die(10)
# 掷几次骰子,并将结果存储在一个列表中
results=[]
for roll_num in range(50000):
    result =die_1.roll()+die_2.roll()
    results.append(result)
frequencies=[]
# 分析结果
max_result = die_1.num_sides+ die_2.num_sides
for value in range(2,max_result+1):
    frequency= results.count(value)
    frequencies.append(frequency)

# 对结果进行可视化
hist =pygal.Bar()
hist.title = "投掷一个6面骰子和一个10面骰子50000次之和每个点出现的次数"
hist.x_labels=[2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
hist.x_title = "Result"
hist.y_title = "Frequencies of Result"

hist.add(D6+D10,frequencies)
hist.render_to_file(die_visual_3.svg)

技术分享图片

 

原文:https://www.cnblogs.com/python-study-notebook/p/12770812.html


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐