上一篇中,提到了两种简单的数据类型,字符串和数字,还有其他的列表、元组、字典、集合等。

列表是新手可直接使用的最强大的 Python 功能之一,融合了很多编程概念。

列表由一系列特定顺序排列的元素组成。元素概念与 Shell 数组中一致,可以将任何东西加入列表。

在 Python 中,用 [ ] 来表示列表,并用逗号分隔其中的元素,如使用列表来表示水果

fruits = ['apple', 'banana', 'orange']
print(fruits)
---
# 运行结果
['apple', 'banana', 'orange']

可以看到输出结果中,方括号也被打印出来了,这可不是想让用户看到的

访问列表元素

直接套入 Shell 数组的访问方式即可,通过索引来获取列表的元素

fruits = ['apple', 'banana', 'orange']
print(fruits[0])
print(fruits[1].title())
print(fruits[2].upper())
---
# 运行结果
apple
Banana
ORANGE

Python 还为访问最后一个列表元素提供了特殊的方法,索引 -1 表示最后一个列表元素

fruits = ['apple', 'banana', 'orange']
print(fruits[-1])
print(fruits[-2])
print(fruits[-3])
---
# 运行结果
orange
banana
apple

可以像使用正常变量一样,使用列表元素

fruits = ['apple', 'banana', 'orange']
print("My favorite fruit is " + fruits[1].title())
---
# 运行结果
My favorite fruit is Banana

修改列表元素

大多数列表的应用场景都是动态的,也就是列表创建后,随着程序的运行增删元素

修改列表元素,同样套用 Shell 的方法,也就是索引重新赋值即可

fruits = ['apple', 'banana', 'orange']
print(fruits[0])
print(fruits)
fruits[0] = 'mango'
print(fruits[0])
print(fruits)
---
# 运行结果
apple
['apple', 'banana', 'orange']
mango
['mango', 'banana', 'orange']

添加列表元素

同为添加位置分为两种方法,末尾添加和指定位置添加

末尾添加append()

fruits = ['apple', 'banana', 'orange']
fruits.append('mongo')
print(fruits)
---
# 运行结果
['apple', 'banana', 'orange', 'mongo']

还有一种创建列表元素的方式是先创建一个空列表,然后使用 append() 函数一个个添加元素

fruits = []
fruits.append('apple')
fruits.append('banana')
fruits.append('orange')
print(fruits)
---
# 运行结果
['apple', 'banana', 'orange']

这种方式极为常见,因为经常要等程序运行之后,才会知道用户要输入什么数据。为了控制用户,可先创建空列表,存储用户输入的值

插入元素insert()

使用 insert() 可以在列表任意位置添加新元素,通过索引来指定位置

fruits = ['apple', 'banana', 'orange']
fruits.insert(1, 'mongo')
print(fruits)
---
# 运行结果
['apple', 'mongo', 'banana', 'orange']

删除列表元素

del删除元素

在知道要删除的元素的索引,可以使用 del 删除元素

fruits = ['apple', 'banana', 'orange']
del fruits[1]
print(fruits)
---
# 运行结果
['apple', 'orange']

pop()删除元素

术语来讲是将元素弹出,弹出后可以重新定义一个变量赋值为弹出的值,以便接着使用

默认弹出列表最后一个元素

fruits = ['apple', 'banana', 'orange']
fruit = fruits.pop()
print(fruits)
print(fruit)
print("I don't like to eat " + fruit)
---
# 运行结果
['apple', 'banana']
orange
I don't like to eat orange

pop() 也可以弹出指定位置的元素,前提依然是需要知道元素所在位置,在括号中输入索引位置即可

fruits = ['apple', 'banana', 'orange']
like_fruit = fruits.pop(1)
print(fruits)
print("I like to eat " + like_fruit)
---
# 运行结果
['apple', 'orange']
I like to eat banana

remove()删除元素

适用于不知道元素索引,仅知道元素值,

fruits = ['apple', 'banana', 'orange']
fruits.remove('banana')
print(fruits)
---
# 运行结果
['apple', 'orange']

pop() 一样可以复用删除值

fruits = ['apple', 'banana', 'orange']
like_fruit = ('banana')
fruits.remove(like_fruit)
print("I like to eat " + like_fruit)
---
# 运行结果
I like to eat banana

组织列表

对列表元素进行排序,列表元素的顺序是无法预测的,尤其是通过用户提供的数据

永久排序sort()

sort() 是按照字母顺序进行排列的

fruits = ['banana', 'orange', 'apple']
fruits.sort()
print(fruits)
---
# 运行结果
['apple', 'banana', 'orange']

按照字母反序排列,sort(reverse=True)

fruits = ['banana', 'orange', 'apple']
fruits.sort(reverse=True)
print(fruits)
---
# 运行结果
['orange', 'banana', 'apple']

临时排序sorted()

在保留原有顺序的基础上,按照字母顺序打印

fruits = ['banana', 'orange', 'apple']
print(sorted(fruits))
print(fruits)
---
# 运行结果
['apple', 'banana', 'orange']
['banana', 'orange', 'apple']

按照字母反序排列,sorted( , reverse=True)

fruits = ['banana', 'orange', 'apple']
print(sorted(fruits, reverse=True))
---
# 运行结果
['orange', 'banana', 'apple']

倒序打印列表reverse()

永久性排序,想要恢复原有顺序,再次使用该方法即可

fruits = ['banana', 'orange', 'apple']
fruits.reverse()
print(fruits)
---
# 运行结果
['apple', 'orange', 'banana']

列表长度len()

len() 函数用来计算列表中的元素个数,可以达到统计列表中剩余个数的效果

fruits = ['banana', 'orange', 'apple']
print(len(fruits))
---
# 运行结果
3

评论




正在载入...
PoweredHexo
HostedAliyun
DNSAliyun
ThemeVolantis
UV
PV
BY-NC-SA 4.0