Python 列表简介

2025-06-08

Python 列表简介

列表是最通用的 Python 数据结构,它存储元素的有序序列,就像您的购物清单或待办事项列表一样。在 Python 中,列表是mutable,这意味着元素可以以不同tuples甚至不同的方式更改strings。这些元素list被称为items,可以是任何数据类型。

在 Python 中创建列表

在 Python 中创建列表非常简单,使用方括号 [] 并用逗号分隔列表中的项目。
列表可以为空,也可以包含任意数量的项目,且数据类型各异(例如整数、浮点数、字符串等)。

mylist = [ ]  #empty list
mylist2 = [1,2]  # list containing 2 items with integers
mylist3 = [1, 2, 'hello']  # list with 3 items,mixed data types,integers and a string
Enter fullscreen mode Exit fullscreen mode

注意:一个列表也可以包含另一个列表作为项目,nested lists.如下所示。

mylist4 = [['python','php'],[1,2,3]  # a nested list
Enter fullscreen mode Exit fullscreen mode

访问列表中的项目

我们可以通过以下方式访问列表中的项目

  1. 索引
    我们使用index运算符 [ ]。列表中的每个项目都有一个指定的索引值。需要注意的是,在 Python 中,索引从 0 开始,并且必须是整数。

    Java Python perl 红宝石 c#
    0 1 2 3 4

    注意:任何非空列表的第一个项都是 [0]。

    Languages = ['java', 'python', 'perl' 'ruby', 'c#' ]   # define a list
    print(Languages[0]) # Access the first item of a list at index 0
    # Output:java which is the first item on the list.
    
  2. 负索引Python 也支持负索引。当您想要获取列表中的最后一项时,负索引很有用,因为它从末尾开始访问列表。

    Java Python perl 红宝石 c#
    -5 -4 -3 -2 -1

    注意:任何非空列表的最后一项都是[-1]。

    # define a list 
    Languages = ['java', 'python', 'perl' 'ruby', 'c#' ] 
     print(Languages[-1) #Access the last item of a list
    # Output:  C#
    

列表长度

Python 具有与列表一起使用的有用的内置函数。我们稍后会讨论它们,但现在,len()函数帮助我们返回列表中元素的总数。

# define a list
languages = ['java', 'python' ,'perl', 'ruby', 'c#']
# print the length of the list
print(len(languages)) 
# output 5
Enter fullscreen mode Exit fullscreen mode

列表切片

切片适合于获取列表中项目的子集。它使用slicing运算符:(冒号)来提取序列的一部分。

Languages = ['java', 'python', 'perl','ruby', 'c#' ] # define a list 
# [:3] slicing everything up to but not including index 3
print(languages[:3])  
#Outputs: ['java', 'python', 'perl' ]

# define a list 
Languages = ['java', 'python', 'perl','ruby', 'c#' ]
# [3:] slicing everything from index 3 to the last item
print(languages[3:])
#Output: ['ruby', 'c#' ]


Languages = ['java', 'python', 'perl','ruby', 'c#' ]
#elements from beginning to end
print(languages[:])
#Output: ['java', 'python', 'perl','ruby', 'c#' ]

# define a list 
Languages = ['java', 'python', 'perl','ruby', 'c#' ]
# elements from 1st to 3rd
print(languages[0:3])
Output # ['java', 'python', 'perl']
Enter fullscreen mode Exit fullscreen mode

如何更改/添加列表中的元素

列表.附加(项目)

该方法将在列表末尾list.append(item)添加。item

   # define a list
   languages = ['java', 'python' ,'perl', 'ruby', 'c#']
   # append c
   languages.append('c') 
   print (languages)
  # Output : ['java', 'python', 'perl', 'ruby', 'c#', 'c']
Enter fullscreen mode Exit fullscreen mode

列表.插入(i,项目)

此方法将在列表的第 i 个位置插入一个项目,并将元素向右移动。

# define a list
languages = ['java', 'python' ,'perl', 'ruby', 'c#']
# insert c
languages.insert( 0, 'php') 
print languages 
# Output :  ['php', 'java', 'python', 'perl', 'ruby', 'c#']
Enter fullscreen mode Exit fullscreen mode

列表.扩展(项目)

extends 方法用于连接列表。注意,调用 extends 时不能传入多个参数;它会接收第二个列表作为参数。

# define a list
languages = ['java', 'python' ,'perl', 'ruby', 'c#']

Languages2=['c++', 'c'] # define a second list

languages.extend(Languages2)

print(languages)

# Output ['java', 'python', 'perl', 'ruby', 'c#', 'c++', 'c']
Enter fullscreen mode Exit fullscreen mode

extension 方法不返回任何值,而是通过添加第二个列表的内容来修改原始列表

删除列表元素

使用del关键字删除特定索引处的项目

  • 单件商品

     languages = ['java', 'python' ,'perl', 'ruby', 'c#'] # define a list
     del languages[2] # use del keyword
     print(languages)
     # Output removes perl ['java', 'python', 'ruby', 'c#']
    
  • 多个项目

     languages = ['java', 'python' ,'perl', 'ruby', 'c#'] # define a list
     del languages[1:3]  #delete Multiple items by slicing
     print(languages)
    
     # Output : ['java', 'ruby', 'c#'] 
    

列表.删除(项目)

它将搜索并删除only第一次出现的项目

Languages = ['java', 'python', 'perl','python','ruby', 'c#' ]
Languages.remove('python')  # the first occurrence of python
print(languages) # outputs ['java', 'perl', 'python', 'ruby', 'c#']
Enter fullscreen mode Exit fullscreen mode

它删除了 java 后面的 python。请注意,perl 后面的 'python' 仍然存在

列表.pop()

删除并返回列表的最后一项

languages = ['java', 'python' ,'perl', 'ruby', 'c#']

print(languages.pop()) # print c#

print(languages)
# output ['java', 'python', 'perl', 'ruby']
Enter fullscreen mode Exit fullscreen mode

列表.pop(i)

删除并返回列表中的第 i 个项目

Languages = ['java', 'python', 'perl','ruby', 'c#' ]
print(languages.pop(1)) # removes  index 1 item
#  Output returns Python
Enter fullscreen mode Exit fullscreen mode

列表.索引(项目)

当列表变得越来越长时,我们很难逐一数出每个元素,从而确定某个值位于哪个索引位置。我们可以使用list.index(item), 返回该元素在列表中的索引。
如果列表中有多个元素的值是item,则此方法将返回第一个元素。

列表方法总结

方法名称 描述
1 alist.append(项目) 在列表末尾添加新项目
2 alist.插入(i,item) 在第 i 个位置插入项目,并将其他项目向右移动。
3 alist.extend() 将第二个列表的元素添加到原始列表
4 删除列表[i] 删除第 i 个位置的项目,也可以通过切片删除一定范围内的项目
5 alist.remove(项目) 搜索并删除第一次出现的项目,如果未找到则不返回新列表并抛出错误
6 流行音乐() 删除并返回列表的最后一项
7 弹出(i) 删除并返回列表中的第 i 个项目
8 alist.index(项目) 返回第一次出现的索引
9 列表.sort() 对列表项进行排序
10 alist.reverse() 反转列表
11 列表.count(项目) 返回某项出现的次数

常见列表操作

级联

连接使用 + 运算符。它组合列表。

# define a list
languages = ['java', 'python' ,'perl', 'ruby', 'c#']
print(languages +(['c++', 'c']))
# Output:  ['java', 'python' ,'perl', 'ruby', 'c#', c++, c]
Enter fullscreen mode Exit fullscreen mode

重复

使用 * 运算符。重复连接列表

 mylist = ['strings are  cool'] * 2
 print (mylist)
# output:  ['strings are  cool', 'strings are  cool']
Enter fullscreen mode Exit fullscreen mode

会员资格

关键字In用于测试某个项目是否是列表的成员。

languages = ['java', 'python' ,'perl', 'ruby', 'c#']
if 'python' in languages:
    print('right')
Enter fullscreen mode Exit fullscreen mode

迭代

For循环用于通过关键字迭代列表中的每个元素in。for 循环允许您对列表中的每个元素执行一个操作。

图 1

languages = ['java', 'python' ,'perl', 'ruby', 'c#']
for i in languages:
   print(i)
Enter fullscreen mode Exit fullscreen mode

这将每行打印列表中的所有项目,如下所示:

java
python
perl
ruby
c#
Enter fullscreen mode Exit fullscreen mode

图 2

random_sum = [2,7,8,9]
total = 0
for i in random_sum:
    total +=i
print total
Enter fullscreen mode Exit fullscreen mode

上面的代码将打印 26,即列表中所有项的总和。for
循环需要一个变量来保存被迭代的项和源。

While循环首先会检查条件,如果条件满足true,就会继续迭代,一旦条件满足就会终止循环false

languages = ['java', 'python' ,'perl', 'ruby', 'c#']
i = 0
while i <len(languages):
    print(languages[i])
    i = i+3
Enter fullscreen mode Exit fullscreen mode

上述代码将打印

java
ruby
Enter fullscreen mode Exit fullscreen mode




结论

现在您知道了什么是列表以及如何操作它们。为了进一步了解列表,请阅读有关列表理解的内容。

鏂囩珷鏉ユ簮锛�https://dev.to/achiengcindy/inntroduction-to-python-lists-26af
PREV
像专业人士一样美化你的 GitHub 个人资料 😍 添加自述文件 发挥你的创造力 固定最佳存储库 为优秀的 GitHub 个人简介部分做出贡献
NEXT
使用 Visual Studio Code 开发 C++ 使用 Visual Studio Code 创建我们的第一个 C++ 项目!