函数是通用的,适用于大多数的对象。方法是专用的,只有特定对象使用某个方法
通过len()函数可以统计字符串中字符的个数,或者是列表、元组、字典中元素的个数。
>>> len('Python') #查看字符串个数
6
>>> len(['a','b','c','d']) #查看列表内元素的个数
4
>>> len(('a','b','c','d')) #查看元组内元素的个数
4
>>> len({'ftp','ssh','sftp','http'}) #查看字典内元素的个数
4
>>> len({10,20,30,40,50})
5
max()函数用于求取最大值,min()函数用于求取最小值。字符串按照ASCII码值来比较大小。
>>> a = list(range(1,6))
>>> a
[1, 2, 3, 4, 5]
>>> max(a)
5
>>> min(a)
1
通过key参数可以指定比较大小的依据。例如下方指定key=len,则以长度进行比较。
>>> max (['abc','123abc'],key=len) #返回最长字符串
'123abc'
>>> min (['abc','123abc'],key=len) #返回最短字符串
'abc'
sorted()函数用于排序。
>>> a = [4,5,6,7,8,9,1,2,3]
>>> sorted(a)
[1, 2, 3, 4, 5, 6, 7, 8, 9]
如果对字符串排序,则会生成一个正序的列表。
>>> sorted('453126')
['1', '2', '3', '4', '5', '6']
>>> sorted('cdbazxcv')
['a', 'b', 'c', 'c', 'd', 'v', 'x', 'z']
reversed()函数对可迭代对象进行反转,并返回reversed对象。类似于切片的[::-1]
>>> reversed('Python')
#反转后得到的是一个对象
>>> list(reversed('Python')) #把对象转换成列表
['n', 'o', 'h', 't', 'y', 'P']
dir(str) #查看方法
split()方法可以将字符串根据某个分隔符进行分割,分割之后会得到一个列表。split()默认以字符串中的空白符号(包括空格、换行符\n、制表符tab等)作为分隔符。若要指定分隔符 .split('.')就会指定 . 为分隔符。
>>> a = 'I love Python'
>>> a.split()
['I', 'love', 'Python']
>>> site = 'www.zxbke.cn'
>>> site
'www.zxbke.cn'
>>> site.split('.')
['www', 'zxbke', 'cn']
>>> site = 'www.zxbke.cn\n张旭博客' #\n代表换行
>>> print(site)
www.zxbke.cn
张旭博客
>>> site.split()
['www.zxbke.cn', '张旭博客']
join()作用与split()相反,用于将字符串连接起来,通常与列表配合使用。
>>> a = ['192','168','1','1'] #a定义为列表放入IP地址
>>> a
['192', '168', '1', '1']
>>> '.'.join(a) #以.作为分隔符进行拼接得到正常IP地址
'192.168.1.1'
>>> ''.join(a) #不指定分隔符则直接拼接
'19216811'
>>> a[0] + '.' + a[1] + '.' + a[2] + '.' + a[3]
'192.168.1.1'
虽然使用“+”将字符串拼接也能起到相同的效果,但join的效率更高。
从下面给定的字符串中取出IP地址。inet 192.168.80.134 netmask 255.255.255.0 broadcast 192.168.80.255
>>> a='inet 192.168.80.134 netmask 255.255.255.0 broadcast 192.168.80.255'
>>> a.split()[1]
'192.168.80.134'
>>> a.split()[-1]
'192.168.80.255'
从下面给定的字符串中取出用户名、UID、登录Shell,组成一个新的字符串,并且中间仍以冒号分隔。root:x:0:0:root:/root:/b
>>> a = 'root:x:0:0:root:/root:/bin/bash'
>>> b = a.split(':')
>>> ':'.join((b[0],b[2],b[6])) #拿出对应的3个参数组成对应的元组
'root:0:/bin/bash'