这一章讲的是和列表有关的内容,临近期末,有时间看看书的时间越来越少,学的好慢,但我感觉我学上瘾了哈哈哈···
3.1 访问列表元素
bicycles = ['trek','cannondale','redline','specialized']
print(bicycles)
print(bicycles[0]) #访问列表的第一个元素
print(bicycles[-1]) #访问列表的最后一个元素
print(bicycles[0].title())
3.2 修改、添加和删除元素
3.2.1 修改列表元素
motorcycles = ['honda', 'yamada', 'suzuki']
print(motorcycles)
motorcycles[0] = 'ducati' #直接改变
print(motorcycles)
['honda', 'yamada', 'suzuki']
['ducati', 'yamada', 'suzuki']
3.2.2 在列表中添加元素
1. 使用append()直接在末尾添加 / 创建一个空列表在添加进去
motorcycles = ['honda', 'yamada', 'suzuki']
print(motorcycles)
motorcycles.append('ducati') #直接在末尾添加元素
print(motorcycles)
['honda', 'yamada', 'suzuki']
['honda', 'yamada', 'suzuki', 'ducati']
motorcycles = [] #可以直接创建一个空列表然后添加元素进去
motorcycles.append('honda')
motorcycles.append('yamada')
motorcycles.append('suzuki')
print(motorcycles)
['honda', 'yamada', 'suzuki']
2. 使用insert()在指定位置插入元素
motorcycles.insert(0,'ducati') #在指定位置插入元素
print(motorcycles)
['ducati', 'honda', 'yamada', 'suzuki']
3.2.3 从列表中删除元素
1. 使用del删除元素
motorcycles = ['honda', 'yamada', 'suzuki']
print(motorcycles)
del motorcycles[0] #del删除制定位置的元素
print(motorcycles)
['yamada', 'suzuki']
2. 使用pop()删除元素
motorcycles = ['honda1', 'yamada', 'suzuki1']
print(motorcycles)
popped_motorcycles = motorcycles.pop()
print(motorcycles) #将删除的元素弹出到新的变量中,默认为末尾元素
first_owned = motorcycles.pop(0) #也可以弹出制定位置元素到新的变量中
3. 根据值删除元素
motorcycles = ['honda', 'yamada', 'suzuki', 'ducati']
motorcycles.remove('ducati') #删除指定的值
print(motorcycles)
motorcycles = ['honda', 'yamada', 'suzuki', 'ducati']
too_expensive = 'ducati' #也可以将值储存在变量中再删除
motorcycles.remove(too_expensive)
print(motorcycles)
#方法reomve 只删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要使用循环列表来判断是否删除了所有这样的值。
3.3 组织列表
3.3.1 使用sort()对列表进行永久性排序
cars = ['bmw', 'audi', 'toyota', 'subaru']
cars.sort()#永久性的修改了列表元素的排列顺序
print(cars)#现在汽车是按照字母顺序排列的并且再也无法恢复到原来的排列顺序
['audi', 'bmw', 'subaru', 'toyota']
#也可以按照与字母顺序相反的顺序进行列表排序
cars = ['bmw', 'audi', 'toyota', 'subaru']
cars.sort(reverse=True)
print(cars) #修改也是永久性的
['toyota', 'subaru', 'bmw', 'audi']
3.3.2 使用sorted()进行临时排序
cars = ['bmw', 'audi', 'toyota', 'subaru']
print("Here is the original list: ")
print(cars)
print("\nHere is the sorted list: ")
print(sorted(cars))
在想要用sorted函数进行反转的时候我不知道语法,所以顺便搜了一下:
#sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list
#一共可接受4个参数,含义分别如下:
#1.可迭代类型,例如字典、列表、
#2.比较函数
#3.可迭代类型中某个属性,对给定元素的每一项进行排序
#4.降序或升序
print(sorted(cars, reverse=True))
print("\nHere is the original list: ")
print(cars)
Here is the original list:
['bmw', 'audi', 'toyota', 'subaru']
Here is the sorted list:
['audi', 'bmw', 'subaru', 'toyota']
['toyota', 'subaru', 'bmw', 'audi']
Here is the original list:
['bmw', 'audi', 'toyota', 'subaru']
3.3.3 使用reverse()倒序打印列表
cars = ['bmw', 'audi', 'toyota', 'subaru']
print(cars)
cars.reverse()
print(cars)
['bmw', 'audi', 'toyota', 'subaru']
['subaru', 'toyota', 'audi', 'bmw']
3.3.4 确定列表的长度
>>> cars = ['bmw', 'audi', 'toyota', 'subaru']
>>> len(cars)
4