第二次作业
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二次作业相关的知识,希望对你有一定的参考价值。
step 1: fork 老师的仓库
+硬币游戏:http://git.oschina.net/juking2017/Game.git 将其 fork 到你的码云仓库。
step2:clone 到本地,修改后 push 到你的远端仓库
1、将你的仓库Game.git clone到本地, 运行Python 程序,截图。
2、【必做】学习 Python 编码风格指南中译版(Google SOC); 依据代码规范改进代码。
3、【选做】提出游戏规则修改(优化)建议,并修改程序,运行截图(用于写博客)。
4、将你的修改commit 并 push 到你远端的仓库。
①
有错误,下载安装pip
②首先根据
将
改为
其次根据
将文件中所有(x,y)改成(x, y),文中都未在“,”后加空格
③将你的修改commit 并 push 到你远端的仓库 出现问题,并未用此方法上传,直接在码云中上传
step3: 写博客。
1 . 说明你的游戏规则,并陈述你(慈善长久不衰)的理由, 附上截图。
博客中附上程序代码,重点:陈述你代码改进部分。
给出你远端仓库的链接
代码:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import random
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import mlab
from matplotlib import rcParams
# 初始参数设置
Box_sum =500 # 箱子中剩余硬币数量,初始值
People_Flag= random.randint(1, 10) # flag 模拟人们取硬币或放硬币的概率 1~10
Threshold = 3.5 # 阈值,可调: 1~Threshold 为取硬币,Threshold+1 ~10 为放硬币
Max_TakeCoin=2 # 最多可取硬币数量
Max_DonateCoin=1 # 最多可放硬币数量
delata=0 # 取、放硬币数量
Box_per_remain= [500] # 每次箱子中硬币余额,list
# 算法模拟
for x in range(1, 5000): # 循环次数表示参与人数
flag= random.randint(1, 10) # flag 模拟人们取硬币或放硬币的概率
if flag > Threshold:
# 放硬币
delta=random.randint(1,Max_DonateCoin)
delta=random.randint(1, delta) # 模拟了人们捐款可能性,有偏少的倾向
Box_sum =Box_sum + delta
Box_per_remain.append(Box_sum)
else:
# 取硬币
delta=random.randint(1, Max_TakeCoin)
delta=random.randint(delta, Max_TakeCoin) # 模拟了人 取硬币的可能性,偏多的倾向
if Box_sum < delta:
Box_sum =0 # 如果不够取,则取光
else:
Box_sum =Box_sum - delta
Box_per_remain.append(Box_sum)
print(Box_per_remain)
# 绘图区
fig = plt.figure()
## 1. 标题、X、Y 轴 label
plt.title(‘Subway testing‘)
plt.xlabel(‘Time‘)
plt.ylabel(‘Money remained‘)
x= np.arange(len(Box_per_remain))
## 2. data
plt.plot(x,Box_per_remain,color=‘r‘)
plt.bar(x,Box_per_remain,alpha=.5,color=‘g‘)
plt.show()
代码修改部分:
Threshold = 2.5改为Threshold = 3.5
Max_TakeCoin=5
Max_DonateCoin=1 改为
Max_TakeCoin=2
Max_DonateCoin=1
结果截图
远程仓库链接:https://gitee.com/WoYueQiMingNan/Game
以上是关于第二次作业的主要内容,如果未能解决你的问题,请参考以下文章