我是靠谱客的博主 害羞万宝路,最近开发中收集的这篇文章主要介绍【Python编程:从入门到实践】第三章:列表简介,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Python编程:从入门到实践第三章:列表简介

3.1 列表是什么

在Python中,用方括号( [] )来表示列表,并用逗号来分隔其中的元素

3.1.1 访问列表元素
bicycles = ['trek','cannondale','redline','specialized']
print(bicycles[0])

结果:

trek
3.1.2 索引从0而不是从1开始

索引指定为-1,返回最后一个列表元素

bicycles = ['trek', 'cannondale', 'redline', 'specialized']
print(bicycles[-1])

结果:

specialized

练习
3-1 姓名:将一些朋友的姓名存储在一个列表中,并将其命名为 names 。依次访问该列表中的每个元素,从而将每个朋友的姓名都打印出来。

names = ['Nancy','Lily','Lucy']
for i in names:
    print(i)

结果:

Nancy
Lily
Lucy

3-2 问候语:继续使用练习 3-1中的列表,但不打印每个朋友的姓名,而为每人打印一条消息。每条消息都包含相同的问候语,但抬头为相应朋友的姓名。

names = ['Nancy','Lily','Lucy']
for i in names:
    print(i,',hello!')

结果:

Nancy ,hello!
Lily ,hello!
Lucy ,hello!

3-3 自己的列表:想想你喜欢的通勤方式,如骑摩托车或开汽车,并创建一个包含多种通勤方式的列表。根据该列表打印一系列有关这些通勤方式的宣言,如“I would like to own a Honda motorcycle”。

ways = ['motocycle','bus','taxi','bike']
for i in ways:
    print('"I would like to own a '+ i +'."')

结果:

"I would like to own a motocycle."
"I would like to own a bus."
"I would like to own a taxi."
"I would like to own a bike."

3.2 修改、添加和删除元素

3.2.1 修改列表元素
motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles)

motorcycles[0] = 'ducati'
print(motorcycles)

结果:

['honda', 'yamaha', 'suzuki']
['ducati', 'yamaha', 'suzuki']
3.2.2 在列表中添加元素
  • 在列表末尾添加元素( 方法 append() )

将元素附加到列表末尾

motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles)

motorcycles.append('ducati')
print(motorcycles)

结果:

['honda', 'yamaha', 'suzuki']
['honda', 'yamaha', 'suzuki', 'ducati']
  • 在列表中插入元素( 方法 insert() )

使用方法 insert() 可在列表的任何位置添加新元素,需要指定新元素的索引和值。

motorcycles = ['honda', 'yamaha', 'suzuki']
motorcycles.insert(0, 'ducati')
print(motorcycles)

结果:

['ducati', 'honda', 'yamaha', 'suzuki']
3.2.3 从列表中删除元素
  • 使用 del 语句删除元素

如果知道要删除的元素在列表中的位置,可使用 del 语句。
使用 del 语句将值从列表中删除后,你就无法再访问它了。

motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles)

del motorcycles[0]
print(motorcycles)

结果:

['honda', 'yamaha', 'suzuki']
['yamaha', 'suzuki']
  • 使用方法 pop() 删除元素

方法 pop() 可删除列表末尾的元素,并让你能够接着使用它

motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles)

popped_motorcycle = motorcycles.pop()
print(motorcycles)
print(popped_motorcycle)

结果:

['honda', 'yamaha', 'suzuki']
['honda', 'yamaha']
suzuki

使用 pop() 来删除列表中任何位置的元素,只需在括号中指定要删除的元素 的索引即可。first_owned = motorcycles.pop(0)

如果你要从列表中删除一个元素,且不再以任何方式使用它,就使用 del 语句;如果你要在删除元素后还能继续使用它,就使用方法 pop() 。

  • 根据值删除元素–方法 remove()
motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati']
print(motorcycles)

motorcycles.remove('ducati')
print(motorcycles)

结果:

['honda', 'yamaha', 'suzuki', 'ducati']
['honda', 'yamaha', 'suzuki']

注意: 方法 remove() 只删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要 使用循环来判断是否删除了所有这样的值。

练习
3-4 嘉宾名单:如果你可以邀请任何人一起共进晚餐(无论是在世的还是故去的),你会邀请哪些人?请创建一个列表,其中包含至少 3个你想邀请的人;然后,使用这个列表打印消息,邀请这些人来与你共进晚餐。

inviteviewer = ['Nancy','Lily','Lucy']
print(inviteviewer[0])
print(inviteviewer[1])
print(inviteviewer[2])

结果:

Nancy
Lily
Lucy

3-5 修改嘉宾名单:你刚得知有位嘉宾无法赴约,因此需要另外邀请一位嘉宾。
以完成练习 3-4时编写的程序为基础,在程序末尾添加一条 print 语句,指出哪位嘉宾无法赴约。
修改嘉宾名单,将无法赴约的嘉宾的姓名替换为新邀请的嘉宾的姓名。
再次打印一系列消息,向名单中的每位嘉宾发出邀请。

inviteviewer = ['Nancy','Lily','Lucy']
print(inviteviewer[0])
print(inviteviewer[1])
print(inviteviewer[2])

print(inviteviewer[2],"can't arrive." )

inviteviewer[2] = 'Tony'

结果:

Nancy
Lily
Lucy
Lucy can't arrive.
Nancy
Lily
Tony

3-6 添加嘉宾:你刚找到了一个更大的餐桌,可容纳更多的嘉宾。请想想你还想邀
请哪三位嘉宾。
以完成练习 3-4或练习 3-5时编写的程序为基础,在程序末尾添加一条 print 语句,指出你找到了一个更大的餐桌。
使用 insert() 将一位新嘉宾添加到名单开头。
使用 insert() 将另一位新嘉宾添加到名单中间。
使用 append() 将最后一位新嘉宾添加到名单末尾。
打印一系列消息,向名单中的每位嘉宾发出邀请。

inviteviewer = ['Nancy','Lily','Lucy']
print(inviteviewer[0])
print(inviteviewer[1])
print(inviteviewer[2])

print(inviteviewer[2],"can't arrive." )
inviteviewer[2] = 'Tony'

print(inviteviewer[0])
print(inviteviewer[1])
print(inviteviewer[2])

print('I find a bigger table.')
inviteviewer.insert(0,'Mike')
inviteviewer.insert(2,'Jonny')
inviteviewer.append('Susan')

for i in inviteviewer:
    print(i,',welcome!')

结果:

Nancy
Lily
Lucy
Lucy can't arrive.
Nancy
Lily
Tony
I find a bigger table.
Mike ,welcome!
Nancy ,welcome!
Jonny ,welcome!
Lily ,welcome!
Tony ,welcome!
Susan ,welcome!

3-7 缩减名单:你刚得知新购买的餐桌无法及时送达,因此只能邀请两位嘉宾。
以完成练习 3-6时编写的程序为基础,在程序末尾添加一行代码,打印一条你只能邀请两位嘉宾共进晚餐的消息。
使用 pop() 不断地删除名单中的嘉宾,直到只有两位嘉宾为止。每次从名单中弹出一位嘉宾时,都打印一条消息,让该嘉宾知悉你很抱歉,无法邀请他来共进晚餐。
对于余下的两位嘉宾中的每一位,都打印一条消息,指出他依然在受邀人之列。
使用 del 将最后两位嘉宾从名单中删除,让名单变成空的。打印该名单,核实程序结束时名单确实是空的。

inviteviewer = ['Nancy','Lily','Lucy']
print(inviteviewer[0])
print(inviteviewer[1])
print(inviteviewer[2])

print(inviteviewer[2],"can't arrive." )
inviteviewer[2] = 'Tony'

print(inviteviewer[0])
print(inviteviewer[1])
print(inviteviewer[2])

print('I find a bigger table.')
inviteviewer.insert(0,'Mike')
inviteviewer.insert(2,'Jonny')
inviteviewer.append('Susan')

for i in inviteviewer:
    print(i,',welcome!')

print('I will only invite two people.')
while len(inviteviewer) >2:
    pop_inviteviewer = inviteviewer.pop()
    print('Sorry,',pop_inviteviewer)
else:
    for x in inviteviewer:
        print('still in list,',x)
del inviteviewer[1]
del inviteviewer[0]
if inviteviewer.__len__() == 0:
    print(inviteviewer,'Total empty!')

结果:

Nancy
Lily
Lucy
Lucy can't arrive.
Nancy
Lily
Tony
I find a bigger table.
Mike ,welcome!
Nancy ,welcome!
Jonny ,welcome!
Lily ,welcome!
Tony ,welcome!
Susan ,welcome!
I will only invite two people.
Sorry, Susan
Sorry, Tony
Sorry, Lily
Sorry, Jonny
still in list, Mike
still in list, Nancy
[] Total empty!

3.3 组织列表

3.3.1 使用方法 sort() 对列表进行永久性排序
cars = ['bmw', 'audi', 'toyota', 'subaru']
cars.sort()
print(cars)

结果:

['audi', 'bmw', 'subaru', 'toyota']

按与字母顺序相反的顺序排列列表元素,向 sort() 方法传递参数reverse=True

cars.sort(reverse=True)
print(cars)

结果:

['toyota', 'subaru', 'bmw', 'audi']
3.3.2 使用函数 sorted() 对列表进行临时排序

保留列表元素原来的排列顺序,调用函数 sorted() 后,列表元素的排列顺序并没有变

cars = ['bmw', 'audi', 'toyota', 'subaru']
print("Here is the original list:")
print(cars)
print("Here is the sorted list:")
print(sorted(cars))
print("Here is the original list again:")
print(cars)

结果:

Here is the original list:
['bmw', 'audi', 'toyota', 'subaru']
Here is the sorted list:
['audi', 'bmw', 'subaru', 'toyota']
Here is the original list again:
['bmw', 'audi', 'toyota', 'subaru']

要按与字母顺序相反的顺序显示列表,也可向函数 sorted() 传递参数 reverse=True 。

3.3.3 倒着打印列表 --方法 reverse()
cars = ['bmw', 'audi', 'toyota', 'subaru']
print(cars)
cars.reverse()
print(cars)

结果:

['bmw', 'audi', 'toyota', 'subaru']
['subaru', 'toyota', 'audi', 'bmw']

注意, reverse() 不是指按与字母顺序相反的顺序排列列表元素,而只是反转列表元素的排列顺序

3.3.4 确定列表的长度–函数 len()

使用函数 len() 可快速获悉列表的长度

cars = ['bmw', 'audi', 'toyota', 'subaru']
len(cars)

结果:

4

3-8 放眼世界:想出至少 5个你渴望去旅游的地方。
将这些地方存储在一个列表中,并确保其中的元素不是按字母顺序排列的。
按原始排列顺序打印该列表。不要考虑输出是否整洁的问题,只管打印原始Python列表。
使用 sorted() 按字母顺序打印这个列表,同时不要修改它。
再次打印该列表,核实排列顺序未变。
使用 sorted() 按与字母顺序相反的顺序打印这个列表,同时不要修改它。
再次打印该列表,核实排列顺序未变。
使用 reverse() 修改列表元素的排列顺序。打印该列表,核实排列顺序确实变了。
使用 reverse() 再次修改列表元素的排列顺序。打印该列表,核实已恢复到原来的排列顺序。
使用 sort() 修改该列表,使其元素按字母顺序排列。打印该列表,核实排列顺序确实变了。
使用 sort() 修改该列表,使其元素按与字母顺序相反的顺序排列。打印该列表,核实排列顺序确实变了。

place = ['chongqing','xiamen','sanya','xizang','jiuzhaigou']
print(place)

print(sorted(place))
print(place)

print(sorted(place,reverse=True))
print(place)

place.reverse()
print(place)
place.reverse()
print(place)

place.sort()
print(place)

place.sort(reverse=True)
print(place)

结果:

['chongqing', 'xiamen', 'sanya', 'xizang', 'jiuzhaigou']
['chongqing', 'jiuzhaigou', 'sanya', 'xiamen', 'xizang']
['chongqing', 'xiamen', 'sanya', 'xizang', 'jiuzhaigou']
['xizang', 'xiamen', 'sanya', 'jiuzhaigou', 'chongqing']
['chongqing', 'xiamen', 'sanya', 'xizang', 'jiuzhaigou']
['jiuzhaigou', 'xizang', 'sanya', 'xiamen', 'chongqing']
['chongqing', 'xiamen', 'sanya', 'xizang', 'jiuzhaigou']
['chongqing', 'jiuzhaigou', 'sanya', 'xiamen', 'xizang']
['xizang', 'xiamen', 'sanya', 'jiuzhaigou', 'chongqing']

3-9 晚餐嘉宾:在完成练习 3-4~练习 3-7 时编写的程序之一中,使用 len() 打印一条消息,指出你邀请了多少位嘉宾来与你共进晚餐。

interviewer  = ['Nancy','Lucy','Lily']
print(len(interviewer))

结果:

3

3-10 尝试使用各个函数:想想可存储到列表中的东西,如山岳、河流、国家、城市、语言或你喜欢的任何东西。编写一个程序,在其中创建一个包含这些元素的列表,然后,对于本章介绍的每个函数,都至少使用一次来处理这个列表。

city = ['chongqing', 'Shenzhen', 'Guangzhou', 'Changsha','xiamen']
print(city,"n")
city.insert(0,'Zhongshan')
print(city,"n")
del city[0]
print(city,"n")
city.pop()
print(city,"n")
city.remove('Changsha')
print(city,"n")
city.append('Changsha')
print(city,"n")
print(sorted(city),"n")
print(city,"n")
city.sort()
print(city, "n")
city.reverse()
print(city,"n")

结果:

['chongqing', 'Shenzhen', 'Guangzhou', 'Changsha', 'xiamen'] 

['Zhongshan', 'chongqing', 'Shenzhen', 'Guangzhou', 'Changsha', 'xiamen'] 

['chongqing', 'Shenzhen', 'Guangzhou', 'Changsha', 'xiamen'] 

['chongqing', 'Shenzhen', 'Guangzhou', 'Changsha'] 

['chongqing', 'Shenzhen', 'Guangzhou'] 

['chongqing', 'Shenzhen', 'Guangzhou', 'Changsha'] 

['Changsha', 'Guangzhou', 'Shenzhen', 'chongqing'] 

['chongqing', 'Shenzhen', 'Guangzhou', 'Changsha'] 

['Changsha', 'Guangzhou', 'Shenzhen', 'chongqing'] 

['chongqing', 'Shenzhen', 'Guangzhou', 'Changsha'] 

最后

以上就是害羞万宝路为你收集整理的【Python编程:从入门到实践】第三章:列表简介的全部内容,希望文章能够帮你解决【Python编程:从入门到实践】第三章:列表简介所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部