【Python 22】52周存钱挑战2.0(列表list和math函数)
1.案例描述
按照52周存钱法,存钱人必须在一年52周内,每周递存10元。例如,第一周存10元,第二周存20元,第三周存30元,直到第52周存520元。
记录52周后能存多少钱?即10+20+30+...+520=13780
2.0增加功能:记录每周存款金额(使用list)
2.案例分析
输入:每周递存金额(10元)和挑战总周数(52周)
处理:账户累计+=每周存入金额;每周存入金额 +=每周递存金额。从第1周开始循环,到52周结束。
输出:第几周,存入多少元,累计账户多少钱?
3.列表定义与访问
列表是有序的元素集合,可以通过下标索引来访问单个值,也可以使用方括号的形式访问多个值,索引下标从0开始。列表中每个元素类型可以不同。
#列表定义
list1 = ['physics', 'chemistry', 1997, 2000] #一个列表含多种不同类型的元素
list2 = [1, 2, 3, 4, 5, 6, 7 ]
list3 = ["a", "b", "c", "d"]
#列表访问print list1[0] #访问单个值,返回值为physics
print list2[1:5] #访问多个值,返回值为[2, 3, 4, 5]
4.列表脚本操作符(list)
列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。
len([1, 2, 3]) # 列表长度,值为3
[1, 2, 3] + [4, 5, 6] # 合并连接两个列表,值为[1, 2, 3, 4, 5, 6]
['Hi!'] * 4 # 重复n次列表内容,值为['Hi!', 'Hi!', 'Hi!', 'Hi!']
3 in [1, 2, 3] # 元素是否存在于列表中,True
for x in [1, 2, 3]: print x # 迭代,值为1 2 3
5.列表函数和方法(list)
| 列表操作符 | 含义 |
| list1.append(x) | 将x添加到列表末尾 |
| list1.sort() | 对列表元素排序 |
| list1.reverse() | 将列表元素逆序 |
| list1.index(x) | 返回第一次出现元素x的索引值 |
| list1.count(x) | 返回元素x在列表中的数量 |
| list1.remove(x) | 删除列表中第一次出现的元素x |
| list1.insert(i,x) | 在位置i处插入新元素x |
| list1.pop(i) | 取出位置i上的元素,并将其删除 |
| del list1[i] | 删除第i个元素 |
| max(list1) | 取出最大的元素 |
| min(list1) | 取出最小的元素 |
| list(seq) | 将元组转换为list |
6.math库函数
| 函数 | 含义 |
| math.pi | 圆周率 |
| math.ceil(x) | 对x向上取整 |
| math.floor(x) | 对x向下取整 |
| math.pow(x,y) | x的y次方 |
| math.sqrt(x) | x的平方根 |
| math.fsum(list1) | 对集合内元素求和 |
7.课后练习
list =[1,2,3,4,5]
print(list[8:]) #结果为[] a = [1,2,3,4,5]
print(range(len(a))) #结果为range(0, 5) a = [1,2,3,4,5]
print(list(range(len(a)))) #结果为[0, 1, 2, 3, 4]
参考文档:
【Python 22】52周存钱挑战2.0(列表list和math函数)的更多相关文章
- 【Python 21】52周存钱挑战1.0
1.案例描述 按照52周存钱法,存钱人必须在一年52周内,每周递存10元.例如,第一周存10元,第二周存20元,第三周存30元,直到第52周存520元. 记录52周后能存多少钱?即10+20+30+. ...
- 【Python 24】52周存钱挑战4.0(函数)
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 25】52周存钱挑战5.0(datetime库和import)
1.案例描述 按照52周存钱法,存钱人必须在一年52周内,每周递存10元.例如,第一周存10元,第二周存20元,第三周存30元,直到第52周存520元. 记录52周后能存多少钱?即10+20+30+. ...
- Red and Black(BFS or DFS) 分类: dfs bfs 2015-07-05 22:52 2人阅读 评论(0) 收藏
Description There is a rectangular room, covered with square tiles. Each tile is colored either red ...
- Latex排版工具的使用(一) 分类: Latex 2014-06-14 22:52 448人阅读 评论(0) 收藏
使用Latex可以排版出漂亮的论文,尤其适合对含有数学公式论文的排版. 下面编写第一Latex源文件,实现对两个数学公式的排版: 新建文件first.tex: \documentclass{artic ...
- python课程第二周重点记录
python课程第二周重点记录 1.元组的元素不可被修改,元组的元素的元素可以被修改(字典在元组中,字典的值可以被修改) 2.个人感觉方便做加密解密 3.一些方法的使用 sb = "name ...
- python推荐淘宝物美价廉商品 2.0
改动: 新增功能 :可选择只看天猫或淘宝 代码模块化封装,参数配置或输入单独在一个py文件管理,主函数功能只留出参数传入在setting配置的py文件里. main.py代码: # -*- codin ...
- python第三周文件处理和函数-----下
#默认参数的值是在一开始定义的时候就传给了函数, # 在后来的修改中不会被修改. #默认参数的值必须放到位置形参参数的最后面 #默认参数使用的场景是一个参数不经常变得场景,所以参数一般是不可变类型.字 ...
随机推荐
- Hystrix介绍
Hystrix是什么 在分布式环境中,许多服务依赖项中的一些必然会失败.Hystrix是一个库,通过添加延迟容忍和容错逻辑,帮助你控制这些分布式服务之间的交互.Hystrix通过隔离服务之间的访问点. ...
- 在龙芯小本上安装Debain8.10
(图片是LEMOTE8089D笔记本,来自互联网) YX原来送了一个LEMOTE笔记本给我.CPU是首款真正的国产,龙芯2F,兼容mips的指令集. 笔记本原来的操作系统是Debian6,后来升级到了 ...
- angr初使用(1)
angr是早在几年前就出来了的一款很好用的工具,如今也出了docker,所以想直接安个docker来跑一跑. docker pull angr/angr .下载下来以后,进入docker ,这时并没有 ...
- 痞子衡嵌入式:ARM Cortex-M内核那些事(3)- 功能模块
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是ARM Cortex-M功能模块. ARM Cortex-M处理器家族发展至今(2016),已有5代产品,分别是CM0/CM0+.CM1 ...
- Android项目刮刮奖详解扩展篇——开源刮刮奖View的制作
Android项目刮刮奖详解(四) 前言 我们已经成功实现了刮刮奖的功能了,本期是扩展篇,我们把这个View直接定义成开源控件,发布到JitPack上,以后有需要也可以直接使用,关于自定义控件的知识, ...
- Java学习笔记之——异常处理
1.异常: 在程序运行时,发生了一些错误导致程序不能正常结束或者中断 2.异常导致的后果 Java程序的执行过程中如果出现异常事件,可以生成一个异常类对象,该异常对象封装了异常事件的信息,并将其被提交 ...
- C++系列总结——构造与析构
前言 在使用资源前,我们需要做一些准备工作保证资源能正常使用,在使用完资源后,我们需要做一些扫尾工作保证资源没有泄露,这就是构造与析构了,这和编程语言是无关的,而是使用资源的一种方式.C++只不过是把 ...
- 忘记时间戳的存在——Yii2超实用的自动更新时间戳的Behavior(改进版)
本文改进了Yii2中内置行为类TimestampBehavior,使得时间戳字段(如created_at,updated_at) 完全自己更新,方便得让你忘记它们的存在. Yii2的内置行为类Time ...
- 开源前端脚本错误监控及跟踪解决项目BadJS试用
摘要: 试用BadJS. 原文:开源前端脚本错误监控及跟踪解决项目-BadJS 试用 作者:过错 Fundebug经授权转载,版权归原作者所有. BadJS 是 一个web 前端脚本错误监控及跟踪项目 ...
- 震惊!Vector两行代码求逆序对,六行代码过普通平衡树
Vector两行代码求逆序对 背景:济南集训Day7上午T2,出了一道逆序对的裸题,SB的我没看出是逆序对来,于是现场推了一个很刁钻的求逆序对的方法 首先我们想一下冒泡排序的过程,我们不难发现,对于每 ...