Python--列表

Python--列表

  • 一、列表的创建
  • 二、访问列表元素
  • 三、列表的增、删、查、改操作
    • 1、添加元素
    • 2、删除元素
    • 3、查找元素
    • 4、修改列表元素
  • 四、列表的其他操作

一、列表的创建

列表使用一对中括号“[]”,里面可以存放数值、字符串、元组、字典、集合等其他数据类型。

1、使用赋值运算符创建列表

_list = [1, 'hello', {1,2}, (1, 2), {'a' : 3}]
print(_list)

输出:

[1, 'hello', {1, 2}, (1, 2), {'a': 3}]

2、使用list()函数创建列表

list()函数可以将其他类型的数据转化成列表

例如:将字符串转化成列表

_list = list('hello')
print(_list)

输出:

['h', 'e', 'l', 'l', 'o']

3、使用列表推导式快速创建列表

1)、生成列表

格式:list = [Expression for var in range]
list:生成的列表名
Expression:表达式,用于计算新列表的元素
var:循环变量
range:采用range()函数生成的range对象

例如:生成20以内的偶数

number = [i * 2 for i in range(1, 10)]
print("生成的数:", number)

输出:

生成的列表: [2, 4, 6, 8, 10, 12, 14, 16, 18]

2)、从列表中筛选符合条件的元素组成新列表

格式:new_list = [Expression for var in list if condition]
new_list :新生成的列表名
Expression:用于计算新列表的表达式
var:变量,值为后面列表的每个元素值
list:用于生成新列表的原列表
condition:条件表达式,用于指定筛选条件

例如:

old_list = [99, 88, 89, 100, 78, 76, 56, 82]
new_list = [x for x in old_list if x > 85]
print("生成的列表:", new_list) #新列表中的数都是大于85的

输出:

生成的列表: [99, 88, 89, 100]

二、访问列表元素

1、使用索引获取列表元素

_list = [1, 2, 3, 4]
print(_list[2]) #获取索引值为2的元素

输出:

3

2、使用for循环遍历列表
格式:

for item in list_name:
    #对列表元素要做的操作

例如:

_list = [1, 2, 3, 4]
for i in _list:
    print(i) #打印元素

输出:

1
2
3
4

3、使用for循环和enumerate()函数
格式:

#输出index和item
for index, item in enumerate(list_name):
    #对index和item进行的操作

例如:

land_are = ['俄罗斯', '加拿大', '中国']
for index, item in enumerate(land_are):
    print(index + 1, item)

输出:

1 俄罗斯
2 加拿大
3 中国

三、列表的增、删、查、改操作

1、添加元素

1)、使用append()函数添加元素

格式:list_name.append(obj)

list_name:列表名
obj:要添加的元素,可以是任何类型的数据

land_are = ['俄罗斯', '加拿大', '中国']
land_are.append('美国') #添加元素
for index, item in enumerate(land_are):
    print(index + 1, item)

输出:

1 俄罗斯
2 加拿大
3 中国
4 美国

通过例子可以看到,使用append()添加元素时是在列表的末尾添加的。append()只能在列表的末尾添加元素。

2)、使用insert()函数添加元素

格式:list_name.insert(index, obj)

list_name:列表名
index:要添加元素的插入位置
obj:要添加的元素,可以是任何类型的数据

例如:

land_are = ['俄罗斯', '中国']
land_are.insert(1, '加拿大') #在索引为1的位置添加元素
for index, item in enumerate(land_are):
    print(index + 1, item)

输出:

1 俄罗斯
2 加拿大
3 中国

通过例子可以看到,使用insert()可以在列表的任意位置添加元素。另外可以看到如果在中间位置添加元素时,会导致其他元素发生位置变化,这需要一定的时间开销。如果列表中数据比较多的时候,应尽量避免使用insert()添加元素。

3)、使用extend()函数添加元素

格式:list_name.extend(sequence)

list_name:原列表
sequence:要添加的列表

land_are = ['俄罗斯', '加拿大']
land_are1 = ['中国', '美国']
land_are.extend(land_are1) #将land_are1列表添加到land_are列表中

for item in land_are:
    print(item)

输出:

俄罗斯
加拿大
中国
美国

2、删除元素

1)、使用del语句,根据元素的索引删除

例如:

land_are = ['俄罗斯', '加拿大', '中国', '美国']
del land_are[3]

for item in land_are:
    print(item)

输出:

俄罗斯
加拿大
中国

2)、根据元素值删除
使用remove(元素值)删除对象

格式:list_name.remove(元素值)

land_are = ['俄罗斯', '加拿大', '中国', '美国']
land_are.remove('美国')

for item in land_are:
    print(item)

输出:

俄罗斯
加拿大
中国

3)、使用pop()删除

格式:list.pop([index=-1])
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

land_are = ['A', 'B', 'C']

land_are.pop()
print(land_are)

输出:

['A', 'B']

4)、list.clear()删除所有元素

land_are = ['A', 'B', 'C']

land_are.clear()
print(land_are)

输出:

[]

3、查找元素

1)、使用in判断某个元素是否在列表中

in关键字通常和if关键字搭配使用。

land_are = ['俄罗斯', '加拿大', '中国', '美国']

if '美国' in land_are:
    land_are.remove('美国')

2)、使用not in判断某个元素是否在列表中

not in关键字通常和if关键字搭配使用。

land_are = ['俄罗斯', '加拿大', '中国', '美国']

if '澳大利亚' not in land_are:
    land_are.append('澳大利亚')

3)、使用count()统计某个元素在列表中出现的次数

格式:list_name.count(obj)
返回值:若obj在列表中,则返回obj在列表中出现的次数;否则,返回0

land_are = ['俄罗斯', '加拿大', '中国', '美国']

counter =  land_are.count('加拿大')
print(counter)

输出:

1

4)、使用index()查找元素

格式:list_name.index(obj)
返回值:若obj在列表中,则返回obj在列表中出现的位置(索引);否则,抛出异常

land_are = ['俄罗斯', '加拿大', '中国']

counter =  land_are.index('中国')
print(counter)

输出:

2
land_are = ['俄罗斯', '加拿大', '中国']

counter =  land_are.index('澳大利亚')
print(counter)

输出:

ValueError: '澳大利亚' is not in list

4、修改列表元素

想要修改某个元素时,通过索引获取该元素,然后对其重新赋值。

land_are = ['A', 'B', 'C']

land_are[1] = 'F' #将第二个元素修改
print(land_are)

输出:

['A', 'F', 'C']

四、列表的其他操作

Python--列表_第1张图片

你可能感兴趣的:(Python,python,开发语言)