python存钱挑战_52周拯救挑战赛(python),存钱,Python
52周存钱挑战过程:第1天存钱10元,第2天存钱2元,第3天存钱30元......计算存钱52周的账户总额,同时记录每日存钱数额、存钱周数以及每周的账户金额。
1.0:简单计算。
"""
52周存钱挑战1.0:
简单的计算与输出
"""
def main():
per_week_money = 10
i = 1
saving = 0
increase_money = 10
week = 52
while i <= week:
saving += per_week_money
print("第{}周,存入{}元,账户累计{}元".format(i,per_week_money,saving))
i += 1
per_week_money += increase_money
if __name__=="__main__":
main()
saving表示账户金额,初始化为0。利用while循环,将每周存的钱加进saving中。设定每周的存钱数目比上一周增加10元,每完成一次循环,每周的存钱数目增加10元。输出形式利用了.format()函数。
2.0:记录每周的存钱数目。将每周存入的金钱数目放入一个列表里面。import math库,计算账户总额时,运用math库中的fsum()函数对列表中的元素求和。涉及知识点主要有:向列表中添加元素(.append())和对列表元素求和(math.fsum())。
"""
52周存钱挑战2.0:
记录每周的存钱数
"""
import math
def main():
per_week_money = 10
i = 1
increase_money = 10
week = 52
saving = 0
money_list = []
while i <= week:
money_list.append(per_week_money)
saving = math.fsum(money_list)
print("第{}周,存入{}元,账户累计{}元".format(i,per_week_money,saving))
i += 1
per_week_money += increase_money
if __name__=="__main__":
main()
3.0:1.0和2.0 设定了一个新的参数记录存钱的周数,而3.0运用for循环而不是while循环,这样存钱的周数就直接记录在for循环中了。注意:输出的存钱周数与列表的索引(从0开始)差一个数。
"""
52周存钱挑战3.0:
用循环记录存钱周数(for 循环)
"""
import math
def main():
per_week_money = 10
increase_money = 10
week = 52
saving = 0
money_list = []
for i in range(week):
money_list.append(per_week_money)
saving = math.fsum(money_list)
print("第{}周,存入{}元,账户累计{}元".format(i + 1,per_week_money,saving))
per_week_money += increase_money
if __name__=="__main__":
main()
4.0:增加功能(1)用户可以自行选择每周存钱数目、存钱周数以及每周增加的存钱数目;(2)将存钱函数进行封装。第(1)个功能只要加入用户输入界面,调用input()函数即可。第(2)个功能也很好实现。需要注意的是局部变量与全局变量的区别。在主函数中输出saving_money函数中的saving时,要在saving_money中将saving 用 global标记为全局变量。
"""
52周存钱挑战4.0:
1.0 灵活输入每周的存钱数目、存钱周数、每周增加的存钱数目
2.0 将存钱的函数进行封装
"""
import math
def saving_money(per_week_money,week,increase_money):
global saving
money_list = []
for i in range(week):
money_list.append(per_week_money)
saving = math.fsum(money_list)
print("第{}周,存入{}元,账户累计{}元".format(i + 1, per_week_money, saving))
per_week_money += increase_money
#return saving ###没有return会返回空值
#print("函数内:",saving)
def main():
per_week_money = float(input("请输入每周的存钱数目:"))
week = int(input("请输入总的存钱周数:"))
increase_money = float(input("请输入每周增加的存钱数目:"))
saving_money(per_week_money, week, increase_money)
#saving=saving_money(per_week_money, week, increase_money)
#print("函数外:",saving)
print("总共存入:",saving)
if __name__=="__main__":
main()
5.0:用户根据输入的日期,可查询是第几周并输出累计的账户金额。建立一个列表saved_money,储存每周对应的累计的账户金额序列。调用与时间相关的datetime库。其中datetime.strptime()函数可以将输入的str类型的时间解析为datetime类型的时间,而.isocalendar()函数可以判断datetime类型的时间为一年周的第几周,具体输出形式为(年,第几周,周几)。
"""
52周存钱挑战5.0:
根据输入的日期,判断是一年的第几周,并输出当前的存款数目
(datatime)
"""
import math
import datetime
def saving_money(per_week_money,week,increase_money):
money_list = []
saved_money = []
for i in range(week):
money_list.append(per_week_money)
saving = math.fsum(money_list)
saved_money.append(saving)
per_week_money += increase_money
return saved_money ###没有return会返回空值
def main():
per_week_money = float(input("请输入每周的存钱数目:"))
week = int(input("请输入总的存钱周数:"))
increase_money = float(input("请输入每周增加的存钱数目:"))
date_str = input("请输入要查询的日期(yyyy/mm/dd):")
date = datetime.datetime.strptime(date_str,"%Y/%m/%d")
weekth = date.isocalendar()[1]
saved_money = saving_money(per_week_money, week, increase_money)
print("第{}周的存款为{}元".format(weekth,saved_money[weekth-1]))
if __name__=="__main__":
main()
python存钱挑战_52周拯救挑战赛(python),存钱,Python相关推荐
- 新农慕课python答案第八周_2021年智慧树Python语言应用第五单元章节测试答案选修课网课慕课答案...
2021年智慧树Python语言应用第五单元章节测试答案选修课网课慕课答案 更多相关问题 前摄抑制和倒摄抑制现象可以作为证据支持某种遗忘理论,这一遗忘理论是A.衰退说B.干扰说C.压抑说D 2013年 ...
- 北京理工大学python慕课第三周考试_北京理工大学python慕课答案
北京理工大学python慕课答案 对负数取平方根,即使用函数math.sqrt(x),其中x为负数,将产生 以下可以终结一个循环的执行的语句是 决策结构问题通常只有一种方案 字符串是一个字符序列,例如 ...
- 【Python 22】52周存钱挑战2.0(列表list和math函数)
1.案例描述 按照52周存钱法,存钱人必须在一年52周内,每周递存10元.例如,第一周存10元,第二周存20元,第三周存30元,直到第52周存520元. 记录52周后能存多少钱?即10+20+30+. ...
- 【Python 23】52周存钱挑战3.0(循环计数for与range)
1.案例描述 按照52周存钱法,存钱人必须在一年52周内,每周递存10元.例如,第一周存10元,第二周存20元,第三周存30元,直到第52周存520元. 记录52周后能存多少钱?即10+20+30+. ...
- Python小例子—— 52周存钱挑战
# -*- coding: utf-8 -*- """作者:宇轩亚40功能:52周存钱挑战 """ import math import d ...
- python实现BMR计算器,日历计算,存钱挑战,分形树和五角星绘制等
"""功能:BMR计算器版本:4.0"""def main():"""主函数""" ...
- python 南京大学_南京大学python课程系列笔记之python基础之第一周:走进python
1.1 python简介: 历史,特点,应用 1.2 第一个python程序: 1.输出: print(字符串) print(变量) 2.输入: varibale = input("mess ...
- 三周写出高性能的Python代码,这些小技巧你值得一试。
1一个不上进的 Python 使用者 我是一个有 C 语言背景的开发者.最近转做了 Python,平时用 Python 还算 6,这周在给新员工分享工作之后,有个小孩跑来问我:"哥,你是学 ...
- 近找到了一个免费的python教程,两周学会了python开发【内附学习视频】
原文作者:佛山小程序员 原文链接:https://blog.csdn.net/weixin_44192923/article/details/86515984 最近找到了一个免费的python教程,两 ...
- 最近找到了一个免费的python教程,两周学会了python开发
最近找到了一个免费的python教程,两周学会了python开发 最近找到了一个免费的python教程,两周学会了python开发.推荐给大家,希望召集更多的朋友一起学习python. 最近开始整理p ...
最新文章
- 阅读Book: MultiObjective using Evolutionary Algorithms (1) --prologue 单目标和多目标的不同
- 在android工程中,res目录下又有anim、drawable、layout、menu、raw、values和xml文件夹,分别用来保存?...
- 人脸识别走光引热议!原来后台能看到的不只有脸,网友已社死,审核辣哭眼...
- Could not install packages due to anEnvironmentError: [WinError 5] 拒绝访问
- 国外地球物理强势学校与知名研究组
- 使用arguments对象模拟函数重载
- Java String子序列
- vue+elementUI的el-form的回车键登录
- 【滤波器】基于matlab GUI分数延迟滤波器设计【含Matlab源码 1347期】
- PlatformIO中arduino框架下stm32编程实现原理
- 开机黑屏显示html,开机黑屏显示“This Product is covered by”解决方法
- 阿里云域名以及子域名解析教程
- 模拟器桥接模式下 WLAN 无法连接及安卓 7.0+ 无法抓包 HTTPS 的解决
- 事大发了!小助理告诉我:小伙伴21天斩获字节offer的关键竟是这份面试题!
- Unity接入穿山甲广告(使用unity插件SDK接入)看这一篇就够了
- 四.异常以及Cookie的处理
- 泰勒公式求极限c语言switch,C语言利用泰勒公式构造求SIN(X),求大触帮看我的代码哪里有问题...
- 依托大数据 破解中小商企信用难题
- 4128----喵帕斯之矩阵 sdut oj
- 黑苹果不能登录AppleID解决