关于python:Python教程9Python变量类型列表list的用法介绍

3次阅读

共计 4269 个字符,预计需要花费 11 分钟才能阅读完成。

在 Python 中,列表(list)是一种有序、可变的数据结构,用于存储多个元素。列表能够蕴含不同类型的元素,包含整数、浮点数、字符串等。实际上列表有点相似 C ++ 语言中的数组,但仅仅只是相似,和数组还是有点不一样的。列表非常适合利用程序和地位定位某一元素,尤其是当元素的程序或内容常常产生扭转时。

在 Python 列表应用方括号 [] 来示意,其中的元素用逗号 , 分隔。上面是一个简略的列表示例:

fruits = ['apple', 'banana', 'orange']

这个列表 fruits 蕴含了三个字符串元素:’apple’、’banana’ 和 ’orange’。

列表是可变的,这意味着您能够批改列表的内容。你能够通过索引来拜访和批改列表中的特定元素。索引从 0 开始,即第一个元素的索引为 0。最初一个元素的索引为 -1。

fruits = ['apple', 'banana', 'orange']
print(fruits[0])  # 输入第一个元素 'apple'
print(fruits[-1])  # 输入最初一个元素 'orange'
fruits[1] = 'cherry'  # 批改第二个元素为 'cherry'
fruits.append('strawberry')  # 在列表开端增加 'strawberry'
del fruits[2]  # 删除第三个元素 'orange'
print(fruits)  # 输入批改后的列表 ['apple', 'cherry', 'strawberry']

列表反对许多其余有用的办法,如插入元素、移除元素、排序等。应用列表可能不便地存储和操作多个元素,因而在 Python 编程中常常被应用到。

创立列表

要想应用列表,必定要先创立它,Python 中创立列表的形式有以下几种:

  1. 应用方括号 [] 创立蕴含元素的列表:
my_list = [1, 2, 3, 4, 5]
  1. 应用 list() 函数将其余数据类型转换为列表:
my_string = "hello"
my_list = list(my_string) #输入['h', 'e', 'l', 'l', 'o']
  1. 应用列表推导式创立列表:
my_list = [x for x in range(10)] #输入[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  1. 应用 range() 函数创立列表:
my_list = list(range(10)) #输入[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  1. 应用 * 运算符创立反复元素的列表:
my_list = [0] * 5 #输入[0, 0, 0, 0, 0]

以上就是创立列表的几种形式,能够看到,Python 中创立列表的形式非常灵活,能够依据具体的需要抉择不同的形式。然而初学者的话,只有把握第 1、2 种创立形式就能够了,前面在实际的过程种缓缓把握其余的。

拜访列表

创立了列表之后,咱们必定是须要拜访列表的,在 Python 中,有几种常见的形式能够拜访列表(list)中的元素:

  1. 通过索引拜访:能够应用索引来拜访列表中的特定元素。索引从 0 开始,示意列表中的第一个元素,顺次递增。例如,my_list[0]示意列表 my_list 中的第一个元素,my_list[1]示意第二个元素,以此类推。
my_list = [1, 2, 3, 4, 5]
print(my_list[0])  # 1
print(my_list[2])  # 3
  1. 应用切片拜访:能够应用切片(slice)操作符来获取列表中的一个子列表。切片操作符应用方括号 [],并指定起始索引和完结索引(不蕴含),两头用冒号: 分隔。例如,my_list[1:4]示意从第二个元素到第四个元素(不蕴含)的子列表。
my_list = [1, 2, 3, 4, 5]
print(my_list[1:3])  # [2, 3]
print(my_list[:3])   # [1, 2, 3]
print(my_list[3:])   # [4, 5]
  1. 迭代拜访:能够应用循环构造(如 for 循环)来遍历列表中的每个元素。迭代遍历能够将列表中的每个元素一一拜访并解决,十分不便。
my_list = [1, 2, 3, 4, 5]
for item in my_list:
   print(item)
# 这将顺次打印出列表中的每个元素。
  1. 应用内置办法:列表还提供了许多内置办法和函数,能够不便地拜访和解决列表中的元素。例如,len()函数能够返回列表的长度(即元素个数);index()办法能够返回给定元素在列表中的索引;count()办法能够统计给定元素在列表中的呈现次数等。
my_list = [1, 2, 3, 4, 5]
print(my_list.index(3))  # 2
my_list.append(6)
print(my_list)  # [1, 2, 3, 4, 5, 6]
my_list.append(6)
my_count = my_list.count(6) # 元素 6 呈现的次数
print(my_count)  # 2

这些是一些罕用的拜访列表的形式,能够依据具体的需要抉择适合的形式来操作列表中的元素。请留神,当拜访列表时,要确保索引或切片的范畴在列表的无效范畴内,以避免出现索引谬误。

更改列表元素

创立列表之后,咱们还须要对列表元素进行批改,包含减少元素,批改元素,删除元素。在 Python 中,能够通过多种形式来更改列表(list)中的元素:

减少列表元素

当须要向 Python 列表中增加新元素时,咱们能够应用以下几种形式:

  1. 应用 append() 办法:能够应用 append() 办法在列表的开端增加一个元素。例如:
my_list = [1, 2, 3]
my_list.append(4)
print(my_list)  # [1, 2, 3, 4]
  1. 应用 insert() 办法:能够应用 insert() 办法在指定地位插入一个元素。该办法承受两个参数,第一个参数是插入的地位(索引),第二个参数是要插入的元素。例如:
my_list = [1, 2, 3]
my_list.insert(1, 99)
print(my_list)  # [1, 99, 2, 3]
  1. 应用 extend() 办法或 + 运算符:能够应用 extend() 办法将另一个列表的元素增加到以后列表的开端,或者应用 + 运算符将两个列表连接起来。例如:
my_list = [1, 2, 3]
my_list.extend([4, 5])
print(my_list)  # [1, 2, 3, 4, 5]

my_list = [1, 2, 3]
my_list = my_list + [4, 5]
print(my_list)  # [1, 2, 3, 4, 5]

总结来说,咱们能够应用 append()insert()extend() 办法或 + 运算符来向 Python 列表增加新元素。抉择具体的形式取决于你的需要。

批改列表元素

在 Python 中,能够应用索引或切片来批改列表中的元素。上面咱们给出几种批改列表元素的常见办法:

  1. 应用索引赋值:能够通过应用索引来定位并间接批改列表中的元素。示例如下:
my_list = [1, 2, 3, 4, 5]
my_list[0] = 100
print(my_list)  # [100, 2, 3, 4, 5]
  1. 应用切片赋值:能够应用切片来一次性批改多个元素的值。示例如下:
my_list = [1, 2, 3, 4, 5]
my_list[1:3] = [200, 300]
print(my_list)  # [1, 200, 300, 4, 5]

删除列表元素

在 Python 中,有几种办法能够删除列表中的元素。上面是一些罕用的办法:

  1. 应用 del 关键字:能够应用 del 关键字删除列表中指定地位的元素。示例如下:
my_list = [1, 2, 3, 4, 5]
del my_list[0]
print(my_list)  # [2, 3, 4, 5```
  1. 应用 remove() 办法:能够应用 remove() 办法删除列表中的指定值的元素。示例如下:
my_list = [1, 2, 3, 4, 5]
my_list.remove(3)
print(my_list)  # [1, 2, 4, 5]
  1. 应用 pop() 办法:能够应用 pop() 办法删除列表中指定地位的元素,并返回被删除的元素的值。如果没有指定地位,默认删除列表开端的元素。示例如下:
my_list = [1, 2, 3, 4, 5]
deleted_element = my_list.pop(2)
print(deleted_element)  # 3
print(my_list)  # [1, 2, 4, 5]
  1. 应用列表切片:能够应用切片来删除列表中的一段元素。示例如下:
my_list = [1, 2, 3, 4, 5, 6]
my_list = my_list[:2] + my_list[4:]
print(my_list)  # [1, 2, 4, 5]

须要留神的是,当删除元素时,确保索引或值存在于列表中,以避免出现谬误。此外,删除操作会批改原列表,所以要审慎操作。删除列表元素是列表操作中比拟容易出错的,有几个方面须要特地留神的(当然对于零根底编程教训的初学者临时先不必管):

  • 确保元素存在:在删除列表元素之前,要确保要删除的元素的确存在于列表中,否则会引发异样。能够应用条件语句(如 if)或异样解决(如 try-except)来解决可能的异常情况。
  • 审慎应用索引:当应用索引删除元素时,要确保索引值处于无效范畴内,否则会引发 IndexError 异样。要依据具体情况认真思考索引值是否正确。
  • 留神列表长度变动:删除元素后,列表的长度会发生变化。如果应用循环来遍历列表并删除元素,可能会导致漏删或删除谬误的元素。一种解决办法是倒序遍历列表来防止索引错位。这种办法在 leetcode 编程中常常会被用到,十分好用。
  • 不要间接迭代删除:不要在迭代列表的同时间接删除元素,这会导致迭代过程中的迭代程序和预期不统一,可能会出现意外后果。能够思考在迭代过程中收集要删除的索引或值,之后再进行批量删除。
  • 思考应用切片删除:对于须要删除一段间断的元素的状况,能够应用切片来一次性删除多个元素,这样更高效。

删除列表

应用完列表之后,如果不想在应用了,须要要删除整个列表,能够应用 del 关键字或者 clear() 办法。

  1. 应用 del 关键字能够删除整个列表对象,例如:
my_list = [1, 2, 3, 4, 5]
del my_list
print(my_list) #抛出异样
  1. 应用 clear() 办法能够清空列表中的所有元素,然而列表对象自身依然存在,例如:
my_list = [1, 2, 3, 4, 5]
my_list.clear()
print(my_list) # []

留神,应用 del 关键字删除列表对象后,该对象将无奈再被拜访,所以打印 my_list 的值会出错,而应用 clear() 办法清空列表后,该列表对象依然能够被拜访,只是其中不再蕴含任何元素。

更多精彩内容,请关注同名公众:一点 sir(alittle-sir)

正文完
 0