栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python列表

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python列表

目录

负数索引

在列表末尾添加元素

在列表中插入元素

使用del语句删除元素

使用方法pop()删除元素

弹出列表中任意位置处的元素

根据值删除元素

使用方法sort()对列表永久排序

使用函数sorted()对列表临时排序

倒着打印列表

确定列表的长度

遍历整个列表

使用函数 range()

列表解析

对数字列表执行简单的统计计算

列表切片

遍历切片

复制列表

元组

遍历元组中的所有值

修改元组变量


列表由一系列按特定序列的元素组成。

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

输出结果

['trek', 'cannondale', 'redline', 'specialized']

负数索引
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
print(f"{bicycles[-1]} {bicycles[-2]}")

负数索引返回倒数列表元素

specialized redline

在列表末尾添加元素
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
bicycles.append('ducati')
print(bicycles)

将元素添加到列表末尾

['trek', 'cannondale', 'redline', 'specialized', 'ducati']

在列表中插入元素
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
bicycles.insert(0, 'ducati')
print(bicycles)

在索引0处添加空间,并将值存储到这个地方

['ducati', 'trek', 'cannondale', 'redline', 'specialized']

使用del语句删除元素
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
del bicycles[0]
print(bicycles)

删除指定元素

['cannondale', 'redline', 'specialized']

使用方法pop()删除元素

删除列表末尾元素,并返回该元素

bicycles = ['trek', 'cannondale', 'redline', 'specialized']
popped_bicycles = bicycles.pop()
print(popped_bicycles)
print(bicycles)

输出结果

specialized
['trek', 'cannondale', 'redline']

弹出列表中任意位置处的元素

在pop()的圆括号中指定要删除元素的索引

bicycles = ['trek', 'cannondale', 'redline', 'specialized']
popped_bicycles = bicycles.pop(1)
print(popped_bicycles)
print(bicycles)

输出结果

cannondale
['trek', 'redline', 'specialized']

根据值删除元素
['trek', 'cannondale', 'specialized']

使用remove()

bicycles = ['trek', 'cannondale', 'redline', 'specialized']
bicycles.remove('redline')
print(bicycles)

输出结果

['trek', 'cannondale', 'specialized']

注意:方法 remove() 只删除第一个指定的元素。如果要删除的值可能在列表中出现多次,就需要使用循环来确保每个值都删除。

使用方法sort()对列表永久排序

可以使用 sort() 对列表中的元素按照字母顺序排列。对于数字列表则是从小到大的顺序排列。

bicycles = ['trek', 'cannondale', 'redline', 'specialized']
bicycles.sort()
print(bicycles)

方法 sort() 由永久性地修改列表元素的排列顺序。输出结果为:

['cannondale', 'redline', 'specialized', 'trek']

还可以以相反的顺序排序,只需向 sort() 方法传递 reverse=True

bicycles = ['trek', 'cannondale', 'redline', 'specialized']
bicycles.sort(reverse=True)
print(bicycles)

输出结果

['trek', 'specialized', 'redline', 'cannondale']

使用函数sorted()对列表临时排序

使用 sorted()可以在保留列表元素原来的排列顺序的前提下,同时以特定的顺序呈现。

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

输出结果

['cannondale', 'redline', 'specialized', 'trek']
['trek', 'cannondale', 'redline', 'specialized']

倒着打印列表

反转列表元素的排列顺序

bicycles = ['trek', 'cannondale', 'redline', 'specialized']
bicycles.reverse()
print(bicycles)

输出结果

['specialized', 'redline', 'cannondale', 'trek']

确定列表的长度

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

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

输出结果

4

遍历整个列表

使用for循环

bicycles = ['trek', 'cannondale', 'redline', 'specialized']
for bicycle in bicycles:
    print(bicycle)

输出结果

trek
cannondale
redline
specialized

使用函数 range()
for value in range(1, 5):
    print(value)

函数range()从指定的第一个值开始数,并在到达你指定的第二个值时停止,同时不包含第二个值。

1
2
3
4

使用range()创建数字列表

numbers = list(range(1, 5))
print(numbers)

输出结果

[1, 2, 3, 4]

可在表示range()的圆括号内指定第三个值,这个值告诉Python在指定范围内每隔多少元素提取一个。

列表解析

列表解析将for循环和创建新元素的代码合并成一行,并自动附加新元素。

squares = [value**2 for value in range(1, 11)]
print(squares)

生成平方数列表

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

对数字列表执行简单的统计计算
numbers = list(range(1, 5))
print(min(numbers))
print(max(numbers))
print(sum(numbers))

输出结果

1
4
10

列表切片

处理列表的部分元素,Python称之为切片。要创建切片,可指定要使用的第一个元素和最后一个元素的索引,与range()一样,在到达第二个索引之前的元素后停止。

players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[1:4])

输出结果

['martina', 'michael', 'florence']

如果没有指定第一个索引,Python将自动从列表开头开始 。要让切片终止于列表末尾,也可使用类似的语法。

players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[:4])
print(players[2:])
print(players[-3:])

输出结果

['charles', 'martina', 'michael', 'florence']
['michael', 'florence', 'eli']
['michael', 'florence', 'eli']

可在表示切片的方括号内指定第三个值,这个值告诉Python在指定范围内每隔多少元素提取一个。

遍历切片

如果要遍历列表的部分元素,可在for循环中使用切片。

players = ['charles', 'martina', 'michael', 'florence', 'eli']
for player in players[:3]:
    print(player)

输出结果

charles
martina
michael

复制列表

要复制列表,可创建一个包含整个列表的的切片,方法是同时省略起始索引和终止索引 ( [:] )

my_foods = ['pizza', 'falafel', 'carrot cake']
friend_foods = my_foods[:]
print(my_foods)
print(friend_foods)

输出结果

['pizza', 'falafel', 'carrot cake']
['pizza', 'falafel', 'carrot cake']

不使用切片的情况下复制列表:

my_foods = ['pizza', 'falafel', 'carrot cake']

# 这行不通
friend_foods = my_foods

my_foods.append('cannoli')
friend_foods.append('ice cream')

print(my_foods)
print(friend_foods)

这里将 my_foods 赋给 friend_foods,而不是将 my_foods 的副本赋给 friend_foods 。这种语法实际上是让Python将新变量 friend_foods 关联到已与 my_foods 相关联 的列表,因此这两个变量指向同一个列表。

输出表明,两个列表是相同的,这并非我们想要的结果

['pizza', 'falafel', 'carrot cake', 'cannoli', 'ice cream']
['pizza', 'falafel', 'carrot cake', 'cannoli', 'ice cream']

元组

Python将不能修改的值称为不改变的,而不可变的列表称为元组。元组看起来很像列表,但使用圆括号而非中括号来标识。

dimensions = (200, 50)
print(dimensions[0])
print(dimensions[1])
200
50

由于试图修改元组的操作是被禁止的,因此Python不能给元组的元素赋值。

严格地说,元组是由逗号标识的,圆括号只是让元组看起来更整洁、更清晰。如果要定义只包含一个元素的元组,必须在这个元素后面加上逗号

dimensions = (200,)

遍历元组中的所有值

方法和列表一样,使用for循环来遍历

dimensions = (200, 50)
for dimension in dimensions:
    print(dimension)
200
50

修改元组变量

虽然不能修改元组的元素,但可以给存储元组的变量赋值,可以重新定义整个元组。

dimensions = (200, 50)
print(dimensions)

dimensions = (250, 100)
print(dimensions)
(200, 50)
(250, 100)

暑期编程PK赛 得CSDN机械键盘等精美礼品!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1015297.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号