wwfl.net
当前位置:首页 >> python字符串操作函数 >>

python字符串操作函数

split([sep]) 将字符串分割为列表,默认用空白符分割,给出字符串参数,用参数字符串分割'a b c'.split() 返回 ['a','b','c']join 将可迭代对象中的字符串连接在一起'\n'.join(['a','b','c'] )返回字符串 "a\nb\nc"str.find(substr,[start,[end]]) 从str的下标 start至end之间查找substr,返回substr出现位置的下标,未找到返回-1str.index 与find相仿,但未找到抛出异常其余还要通用的下标 ,切片操作等

import re pattern = re.compile("(?=([a-z]+ [a-z]+))")arry = pattern.findall("a b c d e f g h")(?=)匹配不会消耗字符

字符串是immutable的,list是mutable的 也就是说字符串一旦定义不可改变,list则可以.eg.s = "abc"d = ['a','b','c']d.append('e') 而1 new_s = s + 'e' 而且,immutable意味着可以作字典的key,而mutable则不可.此外两种东西的方法不同.

可以使用eval()函数,表示执行字符串表示的代码,例如你这个例子:a = 'a' b='in' c='abc' str = "a " + b + " c" # 拼接为 " a in c " print eval(str) # 输出 True

衣服串就是一堆字符,可用双引号或者单引号赋值,举个例子 a='zxcvbnm' 赋值 dir(a) 这个可以看到这个字符串的所有可操作属性

str.split()没有参数,代表以空字符分割,空字符包括空格、制表符、回车符、换行符等.因此,字符串中的空格和\n都是无参的split()的分割符.Line1-abcdef \nLine2-abc \nLine4-abcd分割后得到['Line1-abcdef', '', 'Line2-abc', '', 'Line4-abcd'],然后,split会抛弃得到的所有空字符串,因此最终结果就是['Line1-abcdef', 'Line2-abc', 'Line4-abcd'].

s.strip() .lstrip() .rstrip(',') 去空格及特殊符号 复制字符串 Python1 #strcpy(sStr1,sStr2) 2 sStr1 = 'strcpy' 3 sStr2 = sStr1 4 sStr1 = 'strcpy2' 5 print sStr2 连接字符串 Python1 #strcat(sStr1,sStr2) 2 sStr1 = 'strcat' 3 sStr2 = 'append' 4 sStr1 += sStr2

s = 'a2t1q1f3mjfda't = ''slen = int(len(s)/2)for i in range(slen): t += s[i*2:i*2+2]+'-'if len(s) % 2: t += s[len(s)-1:len(s)]else: t = t[0:len(t)-1]print(t)亲测可用(s分别为偶数、奇数个字符)

使用正则表达式,将里面的字符串提取出来.参考正则表达式模块(re module),取出匹配的串后,调用int(变量)转成你要的数据.参考:import re s = """2012-04-06 23:59:59""" reObj = re.compile(r"(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)") matchObj = reObj.match(s) year = int(matchObj.group(1)) month = int(matchObj.group(2)) day = int(matchObj.group(3)) print year,month,day

是说,知道一个函数的函数名,但是没有这个函数的引用么?可以考虑下面的做法.定义一个函数def abc(): print "123"然后定义一个字符串,内容为abca="abc"然后尝试调用a对应的函数vars()[a]()vars()取出当前可用的变量,然后用a索引它对应的函数,最后加上()执行.再看看别人怎么说的.

网站首页 | 网站地图
All rights reserved Powered by www.wwfl.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com