python的基础03 列表list

3.列表

  • 列表由一系列按特定顺序排列的元素组成,list是一种有序的集合,可以随时添加和删除其中的元素
  • 列表的格式:列表是用方括号[]来表示,中间的元素用逗号(,)隔开
# 简单的列表
bicycles = [‘trek‘,‘cannondale‘,‘Redline‘,‘specialized‘]
print(bicycles)  # 打印的时候会连[]也打印出来

[‘trek‘, ‘cannondale‘, ‘Redline‘, ‘specialized‘]

3.1.1 访问列表的元素

  • 要访问列表的任何元素,可指出列表的名称,在指出元素的索引,并将其放在方括号[]内
# 当我们访问列表的元素时,python只会返回列表的元素,而不会包含中括号或者引号
print(bicycles[0])
print(len(bicycles))
print(bicycles[3].title()) # 打印出索引为3的元素,并将它的首字母改为大写
trek
4
Specialized

3.1.2 索引的位置

  • 在python里面,列表的第一个元素的位置是0,而不是1;
  • 最后一个元素的索引是n-1或者直接使用-1来表示;
# 反问列表bicycles的第2个和第3个元素
print(bicycles[1].upper())
print(bicycles[2].lower())
CANNONDALE
redline

3.1.3 使用列表中的值

# 使用拼接来创建一条消息
bicycles = ["trek",‘cannondale‘,‘redline‘,"specialized"]
message = "My first bicycle was a" + ‘ ‘ + bicycles[2].title() + ‘.‘
print(message)
My first bicycle was a Redline.

动手试一试

# 3-1 姓名: 将一些朋友的姓名存储在一个列表中,并将其命名为 names。依次访问该列表中的每个元素,从而将每个朋友的姓名都打印出来。
names = [‘Bob‘,‘lucy‘,‘mary‘]
print(names[0])
print(names[-2])
print(names[-1].title())
Bob
lucy
Mary
# 3-2 问候语: 继续使用练习 3-1 中的列表,但不打印每个朋友的姓名,而为每人打印一条消息。每条消息都包含相同的问候语,但抬头为相应朋友的姓名。
print(names[0],‘,‘,‘让我们一起去吃饭吧!‘)
print(names[1],‘,‘,"让我们一起去吃饭吧!")
print(names[-1].title(),‘,‘,‘让我们一起去吃饭吧!‘)
Bob , 让我们一起去吃饭吧!
lucy , 让我们一起去吃饭吧!
Mary , 让我们一起去吃饭吧!

3.2 修改丶添加和删除元素

3.2.1 修改列表元素

  • 要修改列表元素,可指定列表名和要修改的元素的索引,在指定该元素的新值
motocycles = [‘honda‘,‘yamaha‘,‘suzuki‘]
print(motocycles)
motocycles[0] = "ducati"
print(motocycles)
[‘honda‘, ‘yamaha‘, ‘suzuki‘]
[‘ducati‘, ‘yamaha‘, ‘suzuki‘]

3.2.2 在列表中添加元素

  • 1.在列表末尾添加元素我们使用append()
  • 2.使用方法insert()在任何位置添加新元素
# 使用append添加元素
motocycles = [‘honda‘,‘yamaha‘,‘suzuki‘]
print(motocycles)
motocycles.append("ducati")
print(motocycles)
[‘honda‘, ‘yamaha‘, ‘suzuki‘]
[‘honda‘, ‘yamaha‘, ‘suzuki‘, ‘ducati‘]
# 使用insert()添加元素
motocycles = [‘honda‘,‘yamaha‘,‘suzuki‘]
print(motocycles)
motocycles.insert(0,‘ducati‘)  # 列表名.insert(索引位置,添加的元素)
print(motocycles)
[‘honda‘, ‘yamaha‘, ‘suzuki‘]
[‘ducati‘, ‘honda‘, ‘yamaha‘, ‘suzuki‘]

3.2.3 从列表中删除元素

  • 知道索引位置删除列表元素

    • 1.知道需要删除元素的索引,使用del语句删除元素,被删除的值我们将无法再访问
    • 2.使用方法pop()删除元素,只需要在()内指定被删除的元素的索引位置,被删除的值我们可以再度使用.如果括号内没有索引位置则删除的是列表最后的一个元素.
# del语句删除列表元素 del 列表名(索引位置)
motocycles = [‘honda‘,‘yamaha‘,‘suzuki‘]
print(motocycles)
del motocycles[0]
print(motocycles)
[‘honda‘, ‘yamaha‘, ‘suzuki‘]
[‘yamaha‘, ‘suzuki‘]

# 方法pop()删除列表末尾的元素
motocycles = [‘honda‘,‘yamaha‘,‘suzuki‘]
print(motocycles)
poped_motocycles = motocycles.pop()  # 把删除的元素存储在变量poped_motocycles里面
print(motocycles)
print(poped_motocycles)
[‘honda‘, ‘yamaha‘, ‘suzuki‘]
[‘honda‘, ‘yamaha‘]
suzuki
# 使用方法pop()删除列表指定位置的元素
motocycles = [‘honda‘,‘yamaha‘,‘suzuki‘]
print(motocycles)
first_motocycles = motocycles.pop(0)  # 把索引为0的元素删除并把值存放在变量first_motocycles
print("The first motocycles I owned was a" +‘ ‘ +  first_motocycles.title())
[‘honda‘, ‘yamaha‘, ‘suzuki‘]
The first motocycles I owned was a Honda
  • 根据值删除元素

    • 不知道元素的索引,但是知道元素的值,我们使用方法remove()
# 从列表中删除元素为ducati
motocycles = [‘honda‘,‘yamaha‘,‘suzuki‘,‘ducati‘]
print(motocycles)
motocycles.remove(‘ducati‘)
print(motocycles)

# 使用remove删除的值也可以继续接着使用
motocycles = [‘honda‘,‘yamaha‘,‘suzuki‘,‘ducati‘]
print(motocycles)
too_motocycles = ‘ducati‘
motocycles.remove(too_motocycles)
print(motocycles)
print("A" + ‘ ‘ + too_motocycles + "is too expensive for me.")
[‘honda‘, ‘yamaha‘, ‘suzuki‘, ‘ducati‘]
[‘honda‘, ‘yamaha‘, ‘suzuki‘]
[‘honda‘, ‘yamaha‘, ‘suzuki‘, ‘ducati‘]
[‘honda‘, ‘yamaha‘, ‘suzuki‘]
A ducatiis too expensive for me.

动手试一试

‘‘‘3-4 嘉宾名单:如果你可以邀请任何人一起共进晚餐,请创建一个列表,其中包含至少3个你想邀请的人;然后,使用这个列表打印消息,邀请这些人来与你共进晚餐。‘‘‘
dinners = [‘Li_yang‘,‘Wu_yong‘,‘Zhang_san‘]
print(dinners[0] + "," + ‘让我们一起吃晚餐吧!‘)
print(dinners[1] + "," + "让我们一起共进晚餐吧!")
print(dinners[-1] + ‘,‘ + "让我们一起吃晚餐吧!")

dinners = [‘Li_yang‘,‘Wu_yong‘,‘Zhang_san‘]
print(str(dinners) + ‘,‘,‘让我们一起吃晚餐吧!‘)
Li_yang,让我们一起吃晚餐吧!
Wu_yong,让我们一起共进晚餐吧!
Zhang_san,让我们一起吃晚餐吧!
[‘Li_yang‘, ‘Wu_yong‘, ‘Zhang_san‘], 让我们一起吃晚餐吧!

‘‘‘3-5 修改嘉宾名单:你刚得知有位嘉宾无法赴约,因此需要另外邀请一位嘉宾。
? 以完成练习 3-4 时编写的程序为基础,在程序末尾添加一条 print 语句,指出哪
位嘉宾无法赴约。‘‘‘
dinners = [‘Li_yang‘,‘Wu_yong‘,‘Zhang_san‘]
print(str(dinners) + ‘,‘,‘让我们一起吃晚餐吧!‘)
print("我刚刚知道" + dinners[1]+ "不能来了")

# ? 修改嘉宾名单,将无法赴约的嘉宾的姓名替换为新邀请的嘉宾的姓名。
dinners = [‘Li_yang‘,‘Wu_yong‘,‘Zhang_san‘]
dinners[1] = ‘Li_si‘
print(dinners)

# ? 再次打印一系列消息,向名单中的每位嘉宾发出邀请
print("{0}".format(dinners) + "让我们一起吃晚饭吧")
[‘Li_yang‘, ‘Wu_yong‘, ‘Zhang_san‘], 让我们一起吃晚餐吧!
我刚刚知道Wu_yong不能来了
[‘Li_yang‘, ‘Li_si‘, ‘Zhang_san‘]
[‘Li_yang‘, ‘Li_si‘, ‘Zhang_san‘]让我们一起吃晚饭吧
‘‘‘3-6 ? 以完成练习 3-4 或练习 3-5 时编写的程序为基础,在程序末尾添加一条 print 语
句,指出你找到了一个更大的餐桌‘‘‘
dinners = [‘Li_yang‘, ‘Li_si‘, ‘Zhang_san‘]
for dinner in dinners:
    print("{0}".format(dinner) + ‘,‘ + "让我们一起吃晚餐吧!")
print("我找到了一张更大的餐桌")

# 使用 insert()将一位新嘉宾添加到名单开头.
dinners = [‘Li_yang‘, ‘Li_si‘, ‘Zhang_san‘]
print(dinners)
dinners.insert(0,‘Wang_wu‘)
print(dinners)

# ? 使用 insert()将另一位新嘉宾添加到名单中间。
dinners.insert(2,‘Wu_yong‘)
print(dinners)

# ? 使用 append()将最后一位新嘉宾添加到名单末尾。
dinners.append(‘Fang_jiu‘)
print(dinners)
Li_yang,让我们一起吃晚餐吧!
Li_si,让我们一起吃晚餐吧!
Zhang_san,让我们一起吃晚餐吧!
我找到了一张更大的餐桌
[‘Li_yang‘, ‘Li_si‘, ‘Zhang_san‘]
[‘Wang_wu‘, ‘Li_yang‘, ‘Li_si‘, ‘Zhang_san‘]
[‘Wang_wu‘, ‘Li_yang‘, ‘Wu_yong‘, ‘Li_si‘, ‘Zhang_san‘]
[‘Wang_wu‘, ‘Li_yang‘, ‘Wu_yong‘, ‘Li_si‘, ‘Zhang_san‘, ‘Fang_jiu‘]

# 3-7 缩减名单:你刚得知新购买的餐桌无法及时送达,因此只能邀请两位嘉宾。
‘‘‘ ? 使用 pop()不断地删除名单中的嘉宾,直到只有两位嘉宾为止。每次从名单中弹
出一位嘉宾时,都打印一条消息,让该嘉宾知悉你很抱歉,无法邀请他来共进
晚餐。‘‘‘
dinners = [‘Wang_wu‘, ‘Li_yang‘, ‘Wu_yong‘, ‘Li_si‘, ‘Zhang_san‘, ‘Fang_jiu‘]
dinners_01 = dinners.pop()
print(dinners_01 + ‘,‘ + "我无法邀请你来吃饭了!")
dinners_02 = dinners.pop(0)
print(dinners_02 + ‘,‘ + "我无法邀请你来吃饭了!")
dinners_03 = dinners.pop(1)
print(dinners_03 + ‘,‘ + "我无法邀请你来吃饭了!")
dinners_04 = dinners.pop(2)
print(dinners_04 + ‘,‘ + "我无法邀请你来吃饭了!")
print(dinners)

# ? 对于余下的两位嘉宾中的每一位,都打印一条消息,指出他依然在受邀人之列。
dinners01 = dinners[0]
dinners02 = dinners[1]
print(dinners01 + ‘,‘ + "你依然在受邀之列")
print(dinners02 + ‘,‘ + "你依然在受邀之列")

# ? 使用 del 将最后两位嘉宾从名单中删除,让名单变成空的。打印该名单,核实程序结束时名单确实是空的
del dinners[0]
del dinners[-1]
print(dinners)
Fang_jiu,我无法邀请你来吃饭了!
Wang_wu,我无法邀请你来吃饭了!
Wu_yong,我无法邀请你来吃饭了!
Zhang_san,我无法邀请你来吃饭了!
[‘Li_yang‘, ‘Li_si‘]
Li_yang,你依然在受邀之列
Li_si,你依然在受邀之列
[]

3.3 组织列表

  • 1.使用方法sort()对列表进行永久排序
  • 2.使用函数sorted()对列表进行临时排序
# sort()对列表排序
cars = [‘bmw‘,‘audi‘,‘toyota‘,‘subaru‘]
print(cars)
cars.sort()
print(cars)

# 对sort()传入参数使列表按与字母顺序相反的顺序排列
cars.sort(reverse = True)
print(cars)
cars.sort(reverse = False)
print(cars)
[‘bmw‘, ‘audi‘, ‘toyota‘, ‘subaru‘]
[‘audi‘, ‘bmw‘, ‘subaru‘, ‘toyota‘]
[‘toyota‘, ‘subaru‘, ‘bmw‘, ‘audi‘]
[‘audi‘, ‘bmw‘, ‘subaru‘, ‘toyota‘]

# 使用sorted()对列表进行排序
cars = [‘bmw‘,‘audi‘,‘toyota‘,‘subaru‘]
sorted_cars = sorted(cars)
print(cars)
print(sorted_cars)
[‘bmw‘, ‘audi‘, ‘toyota‘, ‘subaru‘]
[‘audi‘, ‘bmw‘, ‘subaru‘, ‘toyota‘]

3.3.3 倒着打印列表

  • 要反转列表元素的排列顺序,我们是使用方法reverse()
# 倒着打印列表
cars = [‘bmw‘,‘audi‘,‘toyota‘,‘subaru‘]
cars.reverse()
print(cars)
[‘subaru‘, ‘toyota‘, ‘audi‘, ‘bmw‘]

3.3.4 确定列表的长度

  • 使用len()可以确定列表有多少个元素
cars = [‘bmw‘,‘sudi‘,‘toyota‘,‘subaru‘]
print(len(cars))
4

动手试一试

‘‘‘3-8 放眼世界:想出至少 5 个你渴望去旅游的地方。
? 将这些地方存储在一个列表中,并确保其中的元素不是按字母顺序排列的。‘‘‘
toursim = [‘beijing‘,‘tokyo‘,‘usa‘,‘lijiang‘,‘kunming‘]

# ? 按原始排列顺序打印该列表。不要考虑输出是否整洁的问题,只管打印原始Python 列表。
print(toursim)
# ? 使用 sorted()按字母顺序打印这个列表,同时不要修改它。
sorted_toursim = sorted(toursim)
print(sorted_toursim)
# ? 再次打印该列表,核实排列顺序未变。
print(toursim)
# ? 使用 sorted()按与字母顺序相反的顺序打印这个列表,同时不要修改它。
sorsted_toursim = sorted(toursim,reverse = True)
print(sorted_toursim)
[‘beijing‘, ‘tokyo‘, ‘usa‘, ‘lijiang‘, ‘kunming‘]
[‘beijing‘, ‘kunming‘, ‘lijiang‘, ‘tokyo‘, ‘usa‘]
[‘beijing‘, ‘tokyo‘, ‘usa‘, ‘lijiang‘, ‘kunming‘]
[‘beijing‘, ‘kunming‘, ‘lijiang‘, ‘tokyo‘, ‘usa‘]
# ? 再次打印该列表,核实排列顺序未变。
print(toursim)
# ? 使用 reverse()修改列表元素的排列顺序。 打印该列表, 核实排列顺序确实变了。
toursim.reverse()
print(toursim)

# ? 使用 reverse()再次修改列表元素的排列顺序。打印该列表,核实已恢复到原来的排列顺序。
toursim.reverse()
print(toursim)

# ? 使用 sort()修改该列表,使其元素按字母顺序排列。打印该列表,核实排列顺序确实变了。
toursim.sort()
print(toursim)

# ? 使用 sort()修改该列表,使其元素按与字母顺序相反的顺序排列。打印该列表,核实排列顺序确实变了。
toursim.sort(reverse = True)
print(toursim)

# 3-9 晚餐嘉宾:在完成练习 3-4~练习 3-7 时编写的程序之一中,使用 len()打印一条消息,指出你邀请了多少位嘉宾来与你共进晚餐。
dinners = [‘Wang_wu‘, ‘Li_yang‘, ‘Wu_yong‘, ‘Li_si‘, ‘Zhang_san‘, ‘Fang_jiu‘]
print(len(dinners))
[‘usa‘, ‘tokyo‘, ‘lijiang‘, ‘kunming‘, ‘beijing‘]
[‘beijing‘, ‘kunming‘, ‘lijiang‘, ‘tokyo‘, ‘usa‘]
[‘usa‘, ‘tokyo‘, ‘lijiang‘, ‘kunming‘, ‘beijing‘]
[‘beijing‘, ‘kunming‘, ‘lijiang‘, ‘tokyo‘, ‘usa‘]
[‘usa‘, ‘tokyo‘, ‘lijiang‘, ‘kunming‘, ‘beijing‘]
6

原文地址:https://www.cnblogs.com/Pythonahy/p/10222974.html

时间: 2024-10-08 17:36:18

python的基础03 列表list的相关文章

Python语法基础:列表与元组

列表 一.相关知识 1.列表格式 nameList=["Xiao Deng","Xiao wang"] 比c语言的数组强大的地方在于列表中的元素可以是不同类型的 列表也是用从下标为0开始取值 2.列表的循环遍历 for循环: nameList=["Alex","Tony","Tom","Jenny"] for i in nameList: print(i) ''' 输出 Alex Ton

python开发基础:列表操作

一,列表操作 1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 4 # l=[1,2,3] #l=list([1,2,3]) 5 # print(type(l)) 6 7 #pat1===>优先掌握部分 8 # 索引 9 # 10 # 切片 11 # l=['a','b','c','d','e','f'] 12 13 # print(l[1:5]) 14 # print(l[1:5:2]) 15 # print(l[2:5]) 16 # print(

python的基础数据类型--列表与元组

一.列表        温馨提示:对图片点右键--在新标签页中打开图片: 1.什么叫列表 列表是一个可变的数据类型,可以由[ ]表示,每一项元素使用逗号隔开,列表什么都可以装进去,可以装对象的对象.例如:;lst = ["马化腾',"王健林","小川",[1,2,3],["天龙八部",[斗破苍穹],"大神"],1].可以装大量数据. 2.列表的索引和切片 列表和字符串一样,也有索引和切片.只不过列表的切片切出来的内容

Python语法基础03(if语句,while循环与for循环)

if语句:语法:单分支if 判断条件:语句块 执行过程:首先执行判断条件,当条件成立则执行判断条件下面的语句块,若条件不成立,则不执行 双分支if 判断条件:语句块1else:语句块2执行过程: 首先执行判断条件,若条件成立则执行语句块1,若条件不成立,则执行语句2. 多分支if 判断条件1:语句块1elif 判断条件2:语句块2elif 判断条件n:语句块nelse:语句块执行过程:首先执行判断条件1,若成立则执行语句块1,若不成立,则执行判断语句2,若条件成立,则执行语句块2,若不成立,依次

Python数据基础类型-列表

1,列表的创建 list1 = ['hello', 'world', 1997, 2000] list2 = [1, 2, 3, 4, 5 ] list3 = ["a", "b", "c", "d"] list4 = list() #创建空列表 list5 = [] #创建空列表 2,访问列表的值 列表的数据访问需要使用索引序号. list1 = ['hello', 'world', 19, 20] list2 = [1, 2

Python全栈自动化系列之Python编程基础(列表、元组、字典)

一.列表(list1 = [1,2,3,"蓝色海洋",“abcd”]) 1)列表的定义:列表使用[]来表示,列表中的元素可以是任意数据类型,列表中的元素使用逗号隔开 2)列表的基本操作:a.下标取值,例如:print(list1[1])   b.切片:切出来还是列表,例如:print(list1[1:3])   c.len方法:计算列表的长度,例如:len(list1) 3)列表的常用方法: 增加:①append方法:往尾部追加元素,例如:list1.append(66666)   ②

python基础03 序列

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 谢谢thunder424纠错 sequence 序列 sequence(序列)是一组有顺序的元素的集合 (严格的说,是对象的集合,但鉴于我们还没有引入“对象”概念,暂时说元素) 序列可以包含一个或多个元素,也可以没有任何元素. 我们之前所说的基本数据类型,都可以作为序列的元素.元素还可以是另一个序列,以及我们以后要介绍的其他对象. 序列有两种:tuple(定值表: 也有翻译为元组

Python三种基础数据类型:列表list,元祖tuple和字典dict

Python的三种基本数据类型,列表list,元祖tuple和字典dict 列表List:python最基础的数据类型,列表内的数据项不需要具有相同的类型,可以包含重复值.列表包括两个模块,元素及对应的索引,其中索引正值表示从头开始取,负值表示倒项取数. 操作:索引.切片.加.减.乘.检查成员 索引:查看某个索引的值my_list[1],查看系列的值my_list[1:5] 切片:my_list[1:5],注意:my_list[::n]该用法表示从取的元素开始取第n元素,依次类推 加和乘:表示对

Python自学入门学习基础之一: 列表和元组

本人从事Python多年,有好多小伙伴加了我之后说:有没有相对来说简单点的教程,你写的一些大项目我们小编看不懂!!今天我就发一篇小白入门学习之一的基础,列表和元祖,欢迎大家订阅公众号:Python从程序猿到程序猿,或者加 ,山君:49130.8659,编码:柯西 ...编码:柯西,,我会分享爬虫或者web从0基础到项目实战的一系列的视频资料,保证可以让你自学成才. 列表 首先,列表属于序列,那么序列类型可用如下内建函数-- list(iter):把可迭代对象转换为列表. str(obj):把ob