Python字符串函数,一个比一个狠,你学废了吗?

发布时间:2026/7/25 6:57:38

Python字符串函数,一个比一个狠,你学废了吗? 关于函数, 从字符串里查找特定内容, 有用于查找特定组合的函数, 有去除空格的函数, 还有用什么来间隔字符串的函数, 有判断是否为有效数字或字符的函数, 有判断是否全为字符的函数, 有判断是否全为数字的函数, 有将数据改成小写的函数, 有将数据改成大写的函数, 有判断字符串是否以特定字符开始的函数, 也有判断字符串是否以特定字符结尾的函数, 有写入函数有写入文件的函数, 有在数据尾部插入数据的函数, 有在指定位置之前插入数据的函数, 有将字符串转换成列表的函数, 有在数据中查找第一次特定值位置的函数, 有将数据的每一个提取出来加入列表的函数, 有统计数据中某个元素出现次数的函数, 有将数据中第一次出现的特定字符删掉的函数, 有将数据的第2个元素删掉的函数, 有去掉数据指定位置的数据且有返回值的函数, 有去掉原数据中特定元素的函数, 有列表逆序的函数, 有判断某个数据是否为某种类型的函数, 有得到某数绝对值的函数, 有删除列表中索引为2的元素的函数, 有对数据排序的函数, 有创建一个元组的函数, 有查找并返回索引的函数, 有split逆操作的函数以建立字典, 有创建字典的函数, 有清楚字典中所有项的函数, 有复制一个字典且会修改所有字典的函数, 有复制一个字典但只会修改当前字典的函数, 有查询字典中元素的函数, 有将所有字典返回一个列表的函数, 有与items函数作用相同的函数, 有移除字典中元素的函数, 有用一个字典项更新另一个字典项的函数, 有什么都不做的函数, 有执行一段代码的函数, 有计算表达式的函数, 有返回单字符字符串int值的函数, 有创造英语并行迭代新序列的函数, 有自定义函数, 还有加载扩展库以及常用的几种常用的内置函数。li [baby,honey] for item in li: print item for item in enumerate(li,12): print item for item in enumerate(li,13): print item[0],item[1]s.() 用来格式化字符的一种新的方法 示例如下1 s ‘I am {0}{1}’2 print s.(‘’,‘!’)输出的结果 I am !map()和函数的结合使用 map(,list)•函数一种函数, 属于内置的, 同时还是一个别的高阶函数。这种函数接收的诸如参数方面, 跟 map() 较相似, 是一个函数 f, 还有一个 list, 然而其行为跟 map() 不一样, 该函数传入的这个函数 f 必然得接收两个参数, 且会针对 list 的每个元素反复去调用函数 f, 最终返回那么一个结果值。例如编写一个f函数接收x和y返回x和y的和def f(x, y):x y调用 (f,1, 3, 5, 7, 9)时函数将做如下计算先计算头两个元素f(1, 3)结果为4再把结果和第3个元素计算f(4, 5)结果为9再把结果和第4个元素计算f(9, 7)结果为16再把结果和第5个元素计算f(16, 9)结果为25由于没有更多的元素了计算结束返回结果25。实际该计算乃是针对 list 的全部元素去达成求和操作, 尽管有着内置的求和函数 sum(), 然而, 借助()来实施求和同样是极为轻易的。它能够接纳第3个可选择的参数, 将之用作计算的起始值。要是把起始值设定成100, 来展开计算:(f,1, 3, 5, 7, 9, 100)结果将变为125因为第一轮计算是计算初始值和第一个元素f(100, 1)结果为101。利用进行连乘的代码块def f(x,y): return x * y print reduce(f,[2,4,5,7,12])•()函数过滤函数函数是, 内置的, 另外一个可发挥效用的, 高阶函数, 函数接纳, 一个函数 f, 以及一个list, 这个函数 f 的功用在于针对每个元素展开判断, 给出 True或者 False, 依据判断所得结果, 自动剔除不符合条件的元素, 返回由符合条件元素所构成的新list。例如要从一个list1, 4, 6, 7, 9, 12, 17中删除偶数保留奇数首先要编写一个判断奇数的函数def is_odd(x): return x % 2 1然后利用()过滤掉偶数(,1, 4, 6, 7, 9, 12, 17结果1, 7, 9, 17#利用过滤函数filter()进行删除None和空字符串 def is_not_empty(s): return s and len(s.strip()) 0 l [test,str,None,,,END] print filter(is_not_empty,l) # 利用函数filter()过滤出1~100中平方根是整数的数 import math l [] for x in range(1,101): l.append(x) def is_int(x): r int(math.sqrt(x)) return r * r x print filter(is_int,l)或者import math def is_sqr(x): r int(math.sqrt(x)) return r*rx print filter(is_sqr, range(1, 101))•自定义排序函数内置的 ()函数可对list进行排序(36, 5, 12, 9, 215, 9, 12, 21, 36但, 它是一个高阶函数, 它能够接收一个比较函数用以实现自定义排序, 比较函数的定义为, 传入两个待比较的元素x, y, 若x应当排在y的前面, 此时返回-1, 若x应当排在y的后面, 这时返回1。若x和y相等, 返回0。因此如果我们要实现倒序排序只需要编写一个函数def reversed_cmp(x, y): if x y: return -1 if x y: return 1 return 0这样调用 () 并传入 就可以实现倒序排序 (36, 5, 12, 9, 21, )36, 21, 12, 9, 5可以针对字符串开展排序操作, 字符串在默认状况下是依照ASCII大小予以比较的: (‘bob’, ‘about’, ‘Zoo’, ‘’‘’, ‘Zoo’, ‘about’, ‘bob’‘Zoo’排在‘about’之前, 这存在一个原因, 是由于‘Z’的ASCII码比‘a’小。在对字符串进行排序之际, 有时将大小写忽略掉之后再排序会更契合习惯。请借助()高阶函数, 达成忽略大小写排序的算法。l [bob,about,Zoo,Credit] def cmp_ignore_case(s1,s2): u1 s1.upper() u2 s2.upper() if u1 u2: return -1 if u1 u2: return 1 return 0 print sorted(l,cmp_ignore_case)zip() 函数的使用的介绍eval(str) 函数可以将str转换成一个表达式执行和()的使用#以字符串的形式导入模块和函数 temp sys model __import__(temp) foo path function getattr(model,foo) print function

相关新闻