3.操作列表--《Python编程:从入门到实践》
3.1 遍历列表
magicians = ['alice', 'david', 'carolina']
for magician in magicians: # 临时变量 magician
print(magician)
for 循环过程:定义了一个 for 循环,让 Python 从列表 magicians 中取出一个名字,并将其存储在变量 magician 中。最后,我们让 Python 打印前面存储到变量 magician 中的名字。
注意:for 循环用于接收列表的临时变量的作用域并不是 for 循环内部,而是超出 for 循环的作用域,这点从 for 循环结束后依然能使用 magician 可以看出。
因此要注意 for 循环的临时变量的名称尽量不要与外部成员名称重复,否则很有可能污染外部环境。
cars = ['bmw', 'audi', 'toyota', 'subaru']
car_len = len(cars)
for car in cars:
magicians = ['alice', 'david', 'carolina']
for magician in magicians:
print(magician)
# 即使 magician 定义在两个for循环的最内层,作用域在外侧也可以接收到。
print("I can't wait to see your next trick, " + magician.title() + ".\n")
3.2 创建数值列表
3.2.1 使用函数 range() 创建一组数
for value in range(1,5,2): # 从1开始数,每次+2,直至大于等于5
print(value) # 1 3
3.2.2 使用 range() 创建数字列表
(1)使用 List() 将 range() 的输出变为一个数字列表。
numbers = list(range(1,6))
print(numbers) # [1, 2, 3, 4, 5]
(2)使用 append 与 for 循环。
# 创建一个列表,包含10个整数(即1~10)的平方
squares = []
for value in range(1, 11):
squares.append(value ** 2)
print(squares) # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
3.3 使用列表的一部分 -- 切片
3.3.1 切片
要创建切片,可指定要使用的第一个元素和最后一个元素的索引。与函数range()一样,Python
在到达你指定的第二个索引前面的元素后停止。我觉得这里理解成前闭后开原则较好,前闭指的是起始索引对应的元素是包括的,而结束索引对应的元素不包括。
players = ['charles', 'martina', 'michael', 'florence', 'eli'] # 提取第3和4个元素,即切片的索引是2~4
print(players[2:4]) # [''michael', 'florence']
如果你没有指定第一个索引,Python将自动从列表开头开始。
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[:4]) # ['charles', 'martina', 'michael', 'florence']
要让切片终止于列表末尾,也可使用类似的语法。例如,如果要提取从第3个元素到列表末
尾的所有元素,可将起始索引指定为2,并省略终止索引:
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[2:]) # ['michael', 'florence', 'eli']
我们也可以使用负数。例如,如果你要输出名单上的最后三名队员,可使用切片players[-3:]:
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[-3:]) # ['michael', 'florence', 'eli']
3.3.2 遍历切片
如果要遍历列表的部分元素,可在for循环中使用切片。在下面的示例中,我们遍历前三名
队员,并打印他们的名字。
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print("Here are the first three players on my team:")
for player in players[:3]:
print(player.title())
# Here are the first three players on my team:
# Charles
# Martina
# Michael
3.2.3 复制列表
要复制列表,可创建一个包含整个列表的切片,方法是同时省略起始索引和终止索引([:])。
千万不能简单的=赋值,而不适用切片,否则会造成类似浅拷贝的问题。
my_foods = ['pizza', 'falafel', 'carrot cake']
friend_foods = my_foods[:] # !!!通过切片复制列表
friend2_foods = my_foods # 不使用切片复制列表()相当于浅拷贝,修改目标列表也会修改源列表
friend_foods.append('ice-cream')
friend2_foods.append('cannoli')
print(my_foods) # ['pizza', 'falafel', 'carrot cake', 'cannoli']
print(friend_foods) # ['pizza', 'falafel', 'carrot cake', 'ice-cream']
print(friend2_foods) # ['pizza', 'falafel', 'carrot cake', 'cannoli']
3.4 元组
元组是一系列不可修改的元素,这与列表的可修改元素是对应的。
dimensions = (200, 50)
print(dimensions[0])
for dimension in dimensions:
print(dimension)
3.4.1 修改元组变量
虽然不能修改元组的元素,但可以给存储元组的变量赋值。即重新定义整个元组。
dimensions = (200, 50)
for dimension in dimensions:
print(dimension) # 200 50
dimensions = (400, 100) # 重新定义元组 dimensions
for dimension in dimensions:
print(dimension) # 400 100
3.操作列表--《Python编程:从入门到实践》的更多相关文章
- Python编程从入门到实践笔记——操作列表
Python编程从入门到实践笔记——操作列表 #coding=utf-8 magicians = ['alice','david','carolina'] #遍历整个列表 for magician i ...
- Python编程从入门到实践笔记——列表简介
Python编程从入门到实践笔记——列表简介 #coding=utf-8 #列表——我的理解等于C语言和Java中的数组 bicycles = ["trek","cann ...
- Python编程从入门到实践笔记——用户输入和while循环
Python编程从入门到实践笔记——用户输入和while循环 #coding=utf-8 #函数input()让程序暂停运行,等待用户输入一些文本.得到用户的输入以后将其存储在一个变量中,方便后续使用 ...
- #Python编程从入门到实践#第四章笔记
#Python编程从入门到实践#第四章笔记 操作列表 1.遍历列表 使用for循环,遍历values列表 for value in values: print(value) 2.数字列表 使 ...
- Python编程从入门到实践
Python编程从入门到实践1 起步2 变量和简单数据类型3 列表简介4 操作列表5 if语句6 字典7 用户输入和while循环8 函数9 类10 文件和异常11 测试代码12 武装飞船13 外星人 ...
- 《python编程从入门到实践》读书实践笔记(一)
本文是<python编程从入门到实践>读书实践笔记1~10章的内容,主要包含安装.基础类型.函数.类.文件读写及异常的内容. 1 起步 1.1 搭建环境 1.1.1 Python 版本选择 ...
- Python编程从入门到实践笔记——异常和存储数据
Python编程从入门到实践笔记——异常和存储数据 #coding=gbk #Python编程从入门到实践笔记——异常和存储数据 #10.3异常 #Python使用被称为异常的特殊对象来管理程序执行期 ...
- Python编程从入门到实践笔记——文件
Python编程从入门到实践笔记——文件 #coding=gbk #Python编程从入门到实践笔记——文件 #10.1从文件中读取数据 #1.读取整个文件 file_name = 'pi_digit ...
- Python编程从入门到实践笔记——函数
Python编程从入门到实践笔记——函数 #coding=gbk #Python编程从入门到实践笔记——函数 #8.1定义函数 def 函数名(形参): # [缩进]注释+函数体 #1.向函数传递信息 ...
- Python编程从入门到实践笔记——字典
Python编程从入门到实践笔记——字典 #coding=utf-8 #字典--放在{}中的键值对:跟json很像 #键和值之间用:分隔:键值对之间用,分隔 alien_0 = {'color':'g ...
随机推荐
- vue学习笔记 九、父子组件实例-基本结构
系列导航 vue学习笔记 一.环境搭建 vue学习笔记 二.环境搭建+项目创建 vue学习笔记 三.文件和目录结构 vue学习笔记 四.定义组件(组件基本结构) vue学习笔记 五.创建子组件实例 v ...
- uni-app返回上一级,页面不刷新,bug
uniapp 生命周期(onLoad跟onLoadonShow的区别) 一.uniapp生命周期分两种 : 1.应用生命周期:仅可在App.vue中监听,在其它页面监听无效. 2.页面生命周期:仅在p ...
- node做服务器
// 用于创建网站服务器的模块 const http = require('http'); // 创建web服务器,app对象就是网站服务器对象 const app = http.createServ ...
- java基础-方法method-day05
1. 语法 [修饰符] 返回值类型 方法名(形参列表){ 逻辑主体 } public class TestMethod01{ public static int add(int num1, int n ...
- 使用 Woodpecker 与 Gitea 搭建纯开源的 CI 流程|极限降本
最近开源了一个挂机冒险游戏<模拟龙生>,有热心同学不仅帮忙做优化,还连夜在给游戏加页面,泪目.详见文末小结部分. 一.前言 大家好,这里是白泽.这篇文章是<Woodpecker CI ...
- 如何在 Photoshop 中制作 GIF 动画
您可能已经使用过一些在线 gif 生成器来快速生成 gif 图像,但这些在线生成器无法提供与 Photoshop 相同的灵活性和结果. gif 就像您可以在 Photoshop 中创建的迷你动画.当你 ...
- Manjaro Linux永久修改主机名
技术背景 Linux系统中默认的主机名可以通过hostname指令进行查询,一般默认的是一串的随机字符串: [dechin@dechin-20n2s01200 numba]$ hostname dec ...
- # Linux操作补充
取消高亮显示空格和Tab gvim ~/.vimrc # 在.vimrc文件中 set nohls # shell中执行 source ~/.vimrc ./vimrc是Gvim的配置文件 Gvim新 ...
- grpc-环境与示例
1. 数据传输基本原理 2. grpc环境安装 代码生成器 go get -u github.com/golang/protobuf/protoc-gen-go // 会自动在 $GOPATH/bin ...
- [转帖]人大金仓和PG的关系
作者:山抹微云链接:https://www.zhihu.com/question/582960448/answer/2997151260来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转 ...