【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第三周文件处理和函数-----下
#默认参数的值是在一开始定义的时候就传给了函数, # 在后来的修改中不会被修改. #默认参数的值必须放到位置形参参数的最后面 #默认参数使用的场景是一个参数不经常变得场景,所以参数一般是不可变类型.字 ...
随机推荐
- 如何在.NET Core控制台程序中使用依赖注入
背景介绍 依赖注入(Dependency Injection), 是面向对象编程中的一种设计原则,可以用来减低代码之间的耦合度.在.NET Core MVC中 我们可以在Startup.cs文件的Co ...
- Vim实现分屏
主要是sp(seismic profile)和vsp(vertical seismic profile)两个命令, 水平拆分 将vm切换到命令模式, :sp 实现水平拆分屏幕 垂直拆分 ...
- leetcode — scramble-string
import java.util.Arrays; /** * Source : https://oj.leetcode.com/problems/scramble-string/ * * Given ...
- HDFS架构及原理
原文链接:HDFS架构及原理 引言 进入大数据时代,数据集的大小已经超过一台独立物理计算机的存储能力,我们需要对数据进行分区(partition)并存储到若干台单独的计算机上,也就出现了管理网络中跨多 ...
- Docker搭建ElasticSearch+Redis+Logstash+Filebeat日志分析系统
一.系统的基本架构 在以前的博客中有介绍过在物理机上搭建ELK日志分析系统,有兴趣的朋友可以看一看-------------->>链接戳我<<.这篇博客将介绍如何使用Docke ...
- Unlink——2016 ZCTF note2解析
简介 Unlink是经典的堆漏洞,刚看到这个漏洞不知道如何实现任意代码执行,所以找了一个CTF题,发现还有一些细节的地方没有讲的很清楚,题目在这里.自己也动手写一遍,体验一下 题目描述 首先,我们先分 ...
- webpack4.0各个击破(5)—— Module篇
webpack4.0各个击破(5)-- Module篇 webpack作为前端最火的构建工具,是前端自动化工具链最重要的部分,使用门槛较高.本系列是笔者自己的学习记录,比较基础,希望通过问题 + 解决 ...
- ABP框架 将EntityFrameworkCore生成的SQL语句输出到控制台
首先 在 EntityFrameworkCore中安装 Microsoft.Extensions.Logging.Console nuget install Microsoft.Extensions. ...
- C#多线程编程笔记
在开发中经常有遇到因为程序执行的时间过长,而造成程序假死的情况,这是因为我们的程序是同步执行的,当执行到需要长时间的操作时,程序就会等待当前的操作完成,从而造成程序假死.C#的异步与多线程就是为了解决 ...
- C#數據庫
一.連接數據庫 1.定義連接數據庫的字符串 string source = "server=(local); integrated security=SSPI; database=test& ...