###增加列表的元素:append、extend、insert ①city = ['qingdao','shanghai'] city.append("kaili")%用append追加列表的元素,在原列表尾部增加元素 city out:['qingdao', 'shanghai', 'kaili'] city.append("nanjing")%没有返回值 city%敲下列表名 其中确实有增加 out:['qingdao', 'shanghai', 'kaili', 'nanjing'] id(city) out:140125591090504 city.append("guangzhou") city out:['qingdao', 'shanghai', 'kaili', 'nanjing','guangzhou'] id(city) out:140125591090504 %对列表进行某种修改(增加),但列表的地址不变,这叫做原地修改。以上操作说明列表是一个可变对象,可以往筐里加东西但那个筐没变 ②help(city.insert)%查找insert的使用方法 L.insert(index, object) -- insert object before index city.insert(1,"kaili")%把kaili插入到1的前面位置,用insert也是一种增加元素的方法 out:['qingdao', 'kaili', 'shanghai', 'kaili'] ③lst = [1,2,3] city.extend(lst) out:['qingdao', 'kaili', 'shanghai', 'kaili',1,2,3] help(city.extend) L.extend(iterable) -> None -- extend list by appending elements from the iterable %多使用help 来查明文档用法,iterable叫可迭代对象help(city.extend),extend list by appending elements from the iterable意思是把可迭代对象中的元素一个个拿出来放进列表里,或者是没有返回值 ###删除列表元素remove、pop、clear ①city.remove(1)% 用remove把列表中的元素删除 out:['qingdao', 'kaili', 'shanghai', 'kaili',2,3] city.remove("qingdao")%()里即想删除的元素,remove要求的参数必须是列表中的元素 out:[ 'kaili', 'shanghai',2,3] ②city.pop(2)%先返回要删除的元素,不返回值,但实际上已经删除 help(city.pop)% L.pop([index]) -> item -- remove and return item at index (default last).pop要求的参数是索引,如果不写默认最后一个,pop remove 都是原地修改 city.clear()%clear 清空列表所有元素,得到一个空列表 city out:[] lst out:[1, 2, 3]%原来是[1,2,3]这样一个列表 lst = []%这样也能得到一个空列表,但这是重新引用了一个空列表,筐不一样了 ###元素排序sort、 sorted 列表是序列 所以可以进行排序 a = [6,1,5,3] a.sort() %用sort 进行排序,它也没有返回值,所以是在原地修改 a out:[1, 3, 5, 6] help(a.sort) L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* %key=None, reverse=False 这是两种排序方法 又看刚刚例子 a = [6,1,5,3] a.sort(reverse=True) %这样就反着排 a out:[6, 5, 3, 1] 另一个方式 lst = ["python","java","eue","pascal"] lst.sort(key=len) lst ['eue', 'java', 'python', 'pascal'] %用关键字来排序,其中以长度作为标准,若长度一样则按字典顺序排 sorted(lst) %sorted是内置函数,用字典顺序来排 ,sorted是对原来的列表进行排序,生成一个列表,对原来的列表没有生成影响而sort是对列表进行原地修改 ###元素翻转reverse reversed ①lst.reverse() % 进行翻转 之前我们也可以用lst[::-1]进行翻转 lst out:['pascal', 'python', 'java', 'eue'] ②reversed(lst) out:<list_reverseiterator at 0x7f717910abe0> %用内置函数进行反转,有点像刚刚的sort,sorted,reverseiterator这是一个特殊对象 list(reversed(lst)) out:['eue', 'java', 'python', 'pascal'] %用list来查明翻转结果,这是重新生成一个列表,对原来的列表不产生影响