网站首页 > 基础教程 正文
学完了第三章,不得不说感觉还不错,因为对python浓厚的兴趣,支撑着我去学习和探索。每天下午吃了晚饭,去跑会儿步,回去洗个澡之后,就开始学python了,一开始我是打算每天学习四个小时,但是试验结果往往不尽人意,我学两个小时就已经很累了,一直学三四个小时,脑子的确有些吃不消,我也不想急功近利,毕竟学习这件事情,实在是来不得半点虚伪。我后来转变策略,每天学习一个半小时,就开始总结所学,并且发文章输出所学,逼迫自己去吸收进步了,这样下来,我感觉还不错。所以每一天都坚持了下来。
这一章主要讲述了如何操作列表,跟上一章的简单介绍不同,这一章明显融合了更多的列表知识。
一,列表的游历和各种操作
1,如何游历整个列表?
我们可以用到for循环来做到游历列表每个元素的事情。比如说:
magicians=['alice','david','carolina']
我想要把上面列表中的每一个元素打印陈列出来,就可以用for循环来操作。
for magician in magicians:
print(magician)
alice
david
carolina
2,如何利用for循环在列表里执行更多操作呢?
当我们想给以上三个魔术师同时发一样的消息的时候,我们就可以用到for语句来做,相当于qq群发节日快乐的消息,我想到的是,qq中的function应该就是这个原理,用for循环来操作。
magicians=['alice','david','carolina']
for magician in magicians:
print(f"{magician.title()},that was a great trick")
Alice,that was a great trick
David,that was a great trick
Carolina,that was a great trick
有没有感觉和QQ群发消息特别像,一样的概念吧!
3,如何在for循环结束之后执行一些操作?
当我们在for循环结束后,总觉得缺了一点总结性的输出语言,所以当我们要这样做的时候,一般不会缩进,在最后一行,打印print,输出总结的话,通常也可以用在游戏开始的点击按钮上面。我觉得这有点像我打植物大战僵尸的时候,那个让我点击开始的按钮,我顿时又可以了!
magicians=['alice','david','carolina']
for magician in magicians:
print(f"{magician.title()},that was a great trick")
print("Thank you,everyone .That was a great magic show!")
Alice,that was a great trick
David,that was a great trick
Carolina,that was a great trick
Thank you,everyone .That was a great magic show!
以上红字部分就是输出的内容,最后一句就是程序循环结束后的操作!
二,列表的缩进问题
1,缩进问题一般都是关乎着 ,for循环语句是否能够循环,一般在编辑程序的时候,要记得print的缩进,以下是正确示范和错误示范。
正确示范
magicians=['alice','david','carolina']
for magician in magicians:
print(f"{magician.title()},that was a great trick")
错误示范
magicians=['alice','david','carolina']
for magician in magicians:
print(f"{magician.title()},that was a great trick")
上面标蓝色的部分,就是print的缩进情况。
2,忘记缩进循环的第二行代码,不过这在python中是合法的,但是不符合逻辑,属于逻辑错误。这样操作的话,会导致python把第二行循环代码当成for循环语句,结束后的总结语句。但是,达不到我们想要的效果。
3,不必要的缩进,有些语句不是for语句循环,所以不需要缩进。或者循环结束后的语句缩进了,多半也只是造成逻辑错误,一半都不会导致python报错。
4,遗漏了冒号,也就是for循环语句中,标志着即将进入循环第一行的冒号。
for magician in magicians:
就是以上循环语句中,被标红的冒号,直接标志着,语句的循环第一行就要开始了,所以很重要。
三,创建数值列表
1,使用函数range().range函数呢,可以打印一系列数出来,但是不会打印数值范围的最后一个数,而是范围的第一个数,和数值前一个数。比如说
for number in range(1,5):
上面的循环语句,就只能打出:1,2,3,4,但是不能打印出5
所以就是
print(number)
1
2
3
4
如果我们想让它从0开始打印出来,那么可以只设置一个参数,比如说:
for number in range(4):
print(number)
0
1
2
3
2,还可以用range()创造数字列表,可以做列表,可以打印偶数,可以做乘方运算。
列表:
numbers=list(range(1,4))
print(numbers)
[1,2,3]
打印偶数:
numbers=list(range(2,11,2)
print(numbers)
[2,4,6,8,10]
乘方运算:
numbers=[]
for number in range(1,11):
numbers.append(number**2)
print(numbers)
[1,4,9,16,25,36,49,64,81,100]
3,对数字列表执行简单的统计计算
digits=[1,2,3,4,5,6,7,8,9]
min(digits)
1
max(digits)
9
sum(digits)
45
4,列表解析
当我们不想分几步,而只想一行代码就结束操作的时候,我们可以考虑列表解析式。比如当我们想计算列表平方时, 可以创造一个变量,然后右边写上列表解析式,如:
numbers=[each**2 for each in range(1,11)]
print(numbers)
[1,4,9,16,25,36,49,64,81,100]
计算结果还是一样,同时更加省地方,不过看需求运用。
四,使用列表的一部分
1,切片,以下总结了两部分,如何选择访问想要的列表元素?如何游历切片元素?
1,怎么访问我们想要的元素呢?切片的原理跟range()相似,都是后面的值不用,比如所:
magicians=['alice','david','carolina','mike']
如果我想要访问上述列表中的中间两个,可以这样操作。
print(magicians[1:3])
['davia','carolina']
2,如何游历切片元素?
magicians=['alice','david','carolina','mike']
我还是想打印中间两个,那么可以这样做。
for magician in magicians[1:3]:
print(magician)
david
carolina
2,复制列表,我们如果想要找到共同点和加上不同点,可以选择复制列表,比如我和我的朋友,有共同点,有不同点,这样是达到两个不同的列表。
my=['pizza','fal','carrot']
you=my[:]
以上就是把my的列表,复制在来you上,变成两个列表,而这两个列表目前是相同的
当我们想要分别给两个列表加上不同点时,可以这样操作:
my.append('apple')
you.append('strawberry')
以上操作就将把这两个列表,加上不同的地方了,打印出来的结果是:
my=['pizza','fal','carrot','apple']
you=['pizza','fal','carrot','strawberry ']
五,元组
元组跟列表很像,但是元组不能修改,而列表可以修改,而且元组是用圆括号,而列表是用方括号表示。
1,如何游历元组的元素呢?
原理跟游历列表一个道理,就不展示了。
2,如何修改元祖的变量呢?
原则上是不能用索引值修改元祖中元素的值,但是你可以把它打印出来,然后重新命名一个相同变量名,就可以修改了。老实话,我觉得这里不就是换一个变量吗?虽然名字一样,但是性质早已经不一样了,作者这样写,还是让我觉得有点多余,不过也好,比较详细。
好了,今天的章节学习完了!明天继续!
猜你喜欢
- 2024-10-21 Python开发中的高级技巧!(列表推导式,高级拆包等)值得你收藏
- 2024-10-21 Python笔记 list基础 python list常用方法
- 2024-10-21 python函数式编程 python函数经典例程
- 2024-10-21 Python的列表怎么用?你会吗?Python每日学习打卡
- 2024-10-21 Python基础编程20例之四:统计列表中出现最多的元素
- 2024-10-21 如何在python各种列表中求最值? python 求列表的最大值
- 2024-10-21 python列表操作,助你快速掌握列表常用的操作
- 2024-10-21 python入门010:数字列表 python数字序列
- 2024-10-21 python每个list列表元素是一个数组的动态赋值方法
- 2024-10-21 Python | 掌握并熟悉列表、元祖、字典、集合数据类型
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)