1.ex25接触了字符串函数split()、列表函数sorted()、pop()函数,整理一下其用法以及其他常见的字符串、列表操作函数如下。
(1)split()函数
split()是拆分字符串函数,通过指定分隔符对字符串进行切片,返回分割后的字符串组成的列表(list),每个字符串也可以赋值(或者该称为解包?)给新的变量
语法:str.split(str="",num)[n]
参数解释:str表示分隔符,默认为空格 ,不能为空("");若字符串中没有分隔符,则把整个字符串作为列表的一个元素并返回列表。
num表示分隔次数,默认为最大分隔次数;若指定num值,则分隔为num+1项。
①按默认字符分隔
1 str = "www.cnblogs.com" 2 print str 3 str_split = str.split() #使用默认参数 4 print str_split
输出:
②以"."为分隔符
str_split = str.split(".") print str_split
输出:
分隔n次
print str.split(".",0) #分隔0次 print str.split(".",1) #分隔1次 print str.split(".",2) #分隔2次
输出:
分隔2次并取序列为1的项
print str.split(".",2)[1] #分隔2次,取序列为1的项
输出:
③分隔后把分隔的字符串赋值给变量
str1,str2,str3 = str.split(".",2) print str1 print str2 print str3
输出:
(2)join()函数和split()相反,用来连接字符串
用法如下:
list = [‘My‘,‘name‘,‘is‘,‘Jer‘] print ‘ ‘.join(list) print ‘_‘.join(list) print ‘..‘.join(list)
输出:
(3)sorted()函数
Python中排序有两种 一种是内建函数sorted(),它生成一个新的排好序的列表;一种是sort方法,它直接对列表排序。
sorted():有四个参数,sorted(iterable,cmp=none,key=none,reverse=False):①其中iterable是排序的对象,中文意思是迭代器,包括字符串、列表、字典等对象类型
②cmp指定一个定制的比较函数,这个函数接收两个参数(iterable的元素),如果第一个参数小于第二个参数,返回一个负数;如果第一个参数等于第二个参数,返回零;如果第一个参数大于第二个参数,返回一个正数。默认值为None
③key指定一个接收一个参数的函数,这个函数用于从每个元素中提取一个用于比较的关键字。默认值为None
④reverse是一个布尔值,表示排列的顺序,为True则表示从大到小。默认为False。
下面来看实例:
A.基本用法:
可以看出,list.sort()方法会修改原始的list,返回none;而sorted(list)则返回一个新的排序列表。另需注意,list.sort()只为列表(list)定义,sorted()函数适用于一切迭代器。
B .key function应用
①按照列表中元素的长度排序:
def func(x): return len(x) list = [‘Python‘,‘is‘,‘a‘,‘great‘,‘language‘] print sorted(list,key = func)
输出:
②转换列表中元素为小写后在排序
list = [‘zza‘,‘AAz‘,‘nnew‘,‘Merww‘] print sorted(list,key = str.lower) #转换大小写后排序
输出:
2.常见的list列表函数及操作
(1)list()将字符串转为列表
(2)len()获得list元素的个数
(3)利用索引获得list中相应位置的元素。索引从0开始,0表示第一个元素,-1则可表示最后一个元素,类似的,-2表示倒数第二个元素
(4)利用索引可以直接将相应位置的元素重新赋值
(5)list切片操作 利用list的切片,可以轻松地获得列表的部分元素
①取出部分元素
如实例可见 list[index1:index2]将显示列表从list[index1]到list[index2-1]的元素,list[index2]不显示;在省略index1时即list[:index2],默认index1 = 0;省略index2即list[index1:],默认index2=len(list).故,list[:] = list[:-1],它将显示整个列表
②修改元素
(6)insert()方法 往list的某个位置插入字符串、列表时,字符串的每个字符、列表的每项都作为list的一个元素插入,而不是整体插入。若要整体插入,则可使用list的insert方法
(7)append方法 list是有序的列表,list的append方法可以在list的末尾追加新的元素
(8)pop方法 pop(index)可以删除列表中指定位置的元素,并返回该元素。若省略index值,则删除并返回最后一个元素
(9)remove()方法 删除第一个指定元素
利用循环,可以删除所有的某个指定元素
(10)index方法 index方法用来寻找列表中与指定的元素相匹配的第一个匹配项的位置亦即索引
若指定元素在列表中不存在,会触发一个异常。