Python Data Structure 简明教程
Python - Lists
列表是 Python 中可用的最通用的数据类型,可以写成方括号中逗号分隔的值(项目)的列表。关于列表的重要事项是,列表中的项目不必是同类型的。
The list is a most versatile datatype available in Python which can be written as a list of comma-separated values (items) between square brackets. Important thing about a list is that items in a list need not be of the same type.
只需在方括号中放置不同的逗号分隔值即可创建列表。
Creating a list is as simple as putting different comma-separated values between square brackets.
For example
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
与字符串索引类似,列表索引从 0 开始,并且列表可以被切片、串联等。
Similar to string indices, list indices start at 0, and lists can be sliced, concatenated and so on.
Accessing Values
要访问列表中的值,请使用方括号以及索引或索引来获取在该索引处可用的值。
To access values in lists, use the square brackets for slicing along with the index or indices to obtain value available at that index.
For example
#!/usr/bin/python
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]
print ("list1[0]: ", list1[0])
print ("list2[1:5]: ", list2[1:5])
执行上述代码后,将生成以下结果 −
When the above code is executed, it produces the following result −
list1[0]: physics
list2[1:5]: [2, 3, 4, 5]
Updating Lists
您可以通过在赋值运算符的左侧给出切片来更新列表中的单个或多个元素,并且可以使用 append() 方法将元素添加到列表中。
You can update single or multiple elements of lists by giving the slice on the left-hand side of the assignment operator, and you can add to elements in a list with the append() method.
For example
#!/usr/bin/python
list = ['physics', 'chemistry', 1997, 2000]
print ("Value available at index 2 : ")
print (list[2])
list[2] = 2001
print ("New value available at index 2 : ")
print (list[2])
-
Note − append() method is discussed in subsequent section.
执行上述代码后,将生成以下结果 −
When the above code is executed, it produces the following result −
Value available at index 2 :
1997
New value available at index 2 :
2001
Delete List Elements
要移除列表元素,如果您确切知道要删除哪个元素,可以使用 del 语句,如果您不知道,可以使用 remove() 方法。
To remove a list element, you can use either the del statement if you know exactly which element(s) you are deleting or the remove() method if you do not know.
For example
#!/usr/bin/python
list1 = ['physics', 'chemistry', 1997, 2000]
print (list1)
del list1[2]
print ("After deleting value at index 2 : ")
print (list1)
当执行以上代码时,它生成以下结果 −
When the above code is executed, it produces following result −
['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
-
Note − remove() method is discussed in subsequent section.
Basic List Operations
列表对 + 和 * 运算符的响应非常类似于字符串;在此,它们也表示连接和重复,但结果是一个新列表,而不是一个字符串。
Lists respond to the + and * operators much like strings; they mean concatenation and repetition here too, except that the result is a new list, not a string.
实际上,列表对我们在上一章中对字符串使用过的所有常规序列运算都做出响应。
In fact, lists respond to all of the general sequence operations we used on strings in the prior chapter.
Python Expression |
Results |
Description |
len([1, 2, 3]) |
3 |
Length |
[1, 2, 3] + [4, 5, 6] |
[1, 2, 3, 4, 5, 6] |
Concatenation |
['Hi!'] * 4 |
['Hi!', 'Hi!', 'Hi!', 'Hi!'] |
Repetition |
3 in [1, 2, 3] |
True |
Membership |
for x in [1, 2, 3]: print x, |
1 2 3 |
Iteration |