目录
一、列表
列表由一系列按特定顺序排列的元素组成。
Python中,用方括号[]来表示列表,并用逗号来分割其中的元素。
fruit=['apple','banana','orange','watermelon']
print(fruit)
可以发现,Python打印了列表里的内容,包括方括号:
1、访问列表元素
列表是有序的集合,将列表里的元素的位置或索引告诉Python就可以访问到该元素。使用时先指出列表名称,再指出元素的索引,并将其放在方括号内。
fruit=['apple','banana','orange','watermelon']
print(fruit[0])
此时Python只返回访问的元素,而不包括方括号和引号:
2、索引从0开始
在Python中,第一个列表元素的索引是0,而不是1。
Python为访问最后一个列表元素提供了一种特殊语法,通过将索引指定为-1,从而可以访问最后一个元素。这种方式很实用,特别是不知道列表长度的时候。当然,这种约定也适用于其他负数索引,比如说索引-2表示返回倒数第2个列表元素。
fruit=['apple','banana','orange','watermelon']
print(fruit[-1])
print(fruit[-2])
上面的程序分别返回到列表的最后一个元素和倒数第二个元素:
3、使用列表中的各个值
列表中的各个值都是可以使用的。
fruit=['apple','banana','orange','watermelon']
message='My favorite fruit is '+fruit[2]+'!'
print(message)
这里使用了fruit[2]的值生成了一个句子,并存储在message中:
二、修改、添加和删除元素
1、修改
要修改列表的元素,只需要指定列表名和要修改的元素的索引在指定该元素新的值就OK。
fruit=['apple','banana','orange','watermelon']
print(fruit)
fruit[1]='grape'
print(fruit)
结果如你所愿:
2、添加
(1)在列表末尾添加元素
使用方法append()就可以把元素添加到列表的末尾。
fruit=['apple','banana','orange','watermelon']
print(fruit)
fruit.append('grape')
print(fruit)
比如说这段程序的目的就是在fruit列表末尾添加元素‘grape':
创建一个空列表,然后用append()方法动态添加元素适应常用的创建列表的方法:
fruit=[]
print(fruit)
fruit.append('grape')
print(fruit)
fruit.append('orange')
print(fruit)
fruit.append('apple')
print(fruit)
fruit.append('banana')
print(fruit)
来看看结果:
这种方式在实际开发中很常见。
(2)在列表中插入元素
适应insert()方法可在列表的任何位置添加新的元素,你只需要指定新元素的索引和值。
fruit=['apple','banana','orange','watermelon']
print(fruit)
fruit.insert(0,'grape')
print(fruit)
fruit.insert(2,'pear')
print(fruit)
来看效果:
可以发现,这种操作将列表中原有的元素都右移了一个位置。
3、删除
(1)del语句删除元素
使用del语句,指定列表名和索引就可以删除相应位置的元素。
fruit=['apple','banana','orange','watermelon','pear']
print(fruit)
del fruit[0]
print(fruit)
del fruit[-1]
print(fruit)
这里依次删除了列表的第一个元素和最后一个元素:
(2)使用pop()方法删除元素
列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶的元素。pop()方法可以删除列表的末尾元素,并让你能够再次使用它。
fruit=['apple','banana','orange','watermelon','pear']
print(fruit)
fruit1=fruit.pop()
print(fruit)
print(fruit1)
效果:
(3)弹出列表中任意位置的元素
实际上pop()方法可以弹出任意位置的元素,而你只需要指定索引即可。
fruit=['apple','banana','orange','watermelon','pear']
print(fruit)
fruit1=fruit.pop(2)
print(fruit)
print(fruit1)
运行:
这里再来看看del和pop(),如果不再使用从列表中删除的元素,使用del;如果还需要使用删除的元素,使用pop().
(4)根据值删除元素
使用remove()方法可以根据值来删除列表中的元素,删除的元素还可以接着使用它的值。
fruit=['apple','banana','orange','watermelon','pear','banana']
print(fruit)
fruit1='banana'
fruit.remove(fruit1)
print(fruit)
print("It's a "+fruit1+".")
运行:
你会发现,remove()只删除了第一个指定的值。如果要删除的值可能多次出现在列表中,就需要使用循环来判断是否删除所有这样的值了。
三、组织列表
1、使用sort()方法对列表进行永久性排序
方法sort()永久性的修改了列表的排列顺序。
fruit=['apple','banana','orange','watermelon','pear','banana']
print(fruit)
fruit.sort()
print(fruit)
还可以按与字母顺序相反的顺序排列列表元素,只需要向sort()方法传递参数reverse=True.
fruit=['apple','banana','orange','watermelon','pear','banana']
print(fruit)
fruit.sort(reverse=True)
print(fruit)
运行:
2、使用函数sorted()对列表进行临时排序
使用函数sorted()能够按照特定顺序显示列表元素而不会影响原始列表的排列顺序。
fruit=['apple','banana','orange','watermelon','pear','banana']
print(fruit)
print(sorted(fruit))
print(fruit)
运行:
当然,也可以使用reverse=True:
fruit=['apple','banana','orange','watermelon','pear','banana']
print(fruit)
print(sorted(fruit,reverse=True))
print(fruit)
运行:
3、倒着打印列表
使用方法reverse(),可以反转列表元素的排列顺序。值得注意的是,reverse()方法只是翻转列表元素的排列顺序,而不是按与字母相反的顺序排列。方法reverse()永久性的修改列表元素的顺序,但再对结果调用一次reverse()后即可恢复原来的列表。
fruit=['apple','banana','orange','watermelon','pear','banana']
print("原始列表:")
print(fruit)
fruit.reverse()
print("反转后的列表:")
print(fruit)
fruit.reverse()
print("再次反转,得到原始列表:")
print(fruit)
运行:
4、确定列表的长度
使用函数len()可以快速获取列表的长度。
fruit=['apple','banana','orange','watermelon','pear','banana']
l=len(fruit)
print("这个列表的长度:"+ str(l))
运行:
四、避免索引错误
发生索引错误的时候,可以尝试将其列表或者长度打印出来,然后再找解决办法
文章如有错误,请您不吝指教!