文章目录
3.1 列表是什么
列表:由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0~9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters 、digits 或names )是个不错的主意。
在Python中,用方括号([] )来表示列表,并用逗号来分隔其中的元素。下面是一个简单的列表示例,这个列表包含几种自行车:
bicycles = ["喜德盛","捷安特","美利达","凤凰"]
print(bicycles)
['喜德盛', '捷安特', '美利达', '凤凰']
如果直接让Python将列表打印出来,Python将打印列表中所有的内容,包括方括号,如上打印结果。
鉴于这不是要让用户看到的输出,下面来学习如何访问列表元素。
3.1.1 访问列表元素
列表如同C语言的数组,要访问列表中的元素,只需将元素的位置指明即可,用法也类似C语言。
例如,下面代码中提取列表bicycles中的第一个元素。这里演示了怎么访问列表中元素的语法,不过该处的访问不同直接访问整个列表,将列表的方括号与引号都访问,只访问其中元素。
bicycles = ["喜德盛","捷安特","美利达","凤凰"]
print(bicycles[0])
喜德盛
还可以对任何列表元素调用字符串中的方法,例如使用title()。
3.1.2 索引从0而不是从1开始
在Python中,第一个列表元素的索引为0,而不是1。在大多数编程语言中都是如此,这与列表操作的底层实现相关。如果结果出乎意料,请看看你是否犯了简单的差一错误。
第二个列表元素的索引为1。根据这种简单的计数方式,要访问列表的任何元素,都可将其位置减1,并将结果作为索引。例如,要访问第四个列表元素,可使用索引3。
下面的代码访问索引1 和3 处的自行车:
bicycles = ["喜德盛","捷安特","美利达","凤凰"]
print(bicycles[1])
print(bicycles[3])
捷安特
凤凰
Python还提供了一种特殊的语法,可以在不知道元素个数时,访问列表后面的元素。通过将索引指定为-i,可让Python返回最后第i个列表元素:
bicycles = ["喜德盛","捷安特","美利达","凤凰"]
print(bicycles[-1])
print(bicycles[-3])
凤凰
捷安特
3.1.3 使用列表中的各个值
可像使用其他变量一样使用列表中的各个值。例如,你可以使用拼接根据列表中的值来创建消息。
下面来尝试从列表中提取第一款自行车,并使用这个值来创建一条消息:
bicycles = ["喜德盛","捷安特","美利达","凤凰"]
message = "我的自行车是" + bicycles[0]
print(message)
我的自行车是喜德盛
3.1.4 动手试一试
3-1 姓名: 将一些朋友的姓名存储在一个列表中,并将其命名为names 。依次访问该列表中的每个元素,从而将每个朋友的姓名都打印出来。
names = ["张三","李四","王五","二麻子",]
print(names)
['张三', '李四', '王五', '二麻子']
3-2 问候语: 继续使用练习3-1中的列表,但不打印每个朋友的姓名,而为每人打印一条消息。每条消息都包含相同的问候语,但抬头为相应朋友的姓名。
names = ["张三","李四","王五","二麻子",]
message = names[0] + ",你好呀!"
print(message)
message = names[1] + ",你好呀!"
print(message)
message = names[2] + ",你好呀!"
print(message)
message = names[3] + ",你好呀!"
print(message)
张三,你好呀!
李四,你好呀!
王五,你好呀!
二麻子,你好呀!
3-3 自己的列表: 想想你喜欢的通勤方式,如骑摩托车或开汽车,并创建一个包含多种通勤方式的列表。根据该列表打印一系列有关这些通勤方式的宣言,如“I wouldlike to own a Honda motorcycle”。
cars = ["自行车","摩托车","小轿车","公交车"]
message = "锻炼身体,不等公交车,就请使用" + cars[0] + "上班"
print(message)
message = "方便快捷,不等公交车,就请使用" + cars[1] + "上班"
print(message)
message = "节能环保,就请使用" + cars[2] + "上班"
print(message)
message = "方便舒适,就请使用" + cars[0] + "上班"
print(message)
锻炼身体,不等公交车,就请使用自行车上班
方便快捷,不等公交车,就请使用摩托车上班
节能环保,就请使用小轿车上班
方便舒适,就请使用自行车上班
3.2 修改、添加、和删除元素
你创建的大多数列表都将是动态的,这意味着列表创建后,将随着程序的运行增删元素。例如,你创建一个游戏,要求玩家射杀从天而降的外星人;为此,可在开始时将一些外星人存储在列表中,然后每当有外星人被射杀时,都将其从列表中删除,而每次有新的外星人出现在屏幕上时ÿ