ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:29.66KB ,
资源ID:11345751      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11345751.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(python字符串处理实例.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

python字符串处理实例.docx

1、python字符串处理实例#Python中的字符串处理2009-12-5Python中的清屏指令:importosos.system(cls)1.字符串的对齐方式:center(int,str) string = Fishhatstring.center(55) Fishhat string.center(55,*)*Fishhat*:ljust(int,str)string.ljust(55)Fishhat string.ljust(55,*)Fishhat*:rjust(int,str)string.rjust(55) Fishhatstring.rjust(55,*)*Fishhat:%

2、(int)s print % 55s % string Fishhat2.字符串中的转义字符: 斜杠 单引号 双引号a 系统喇叭b 退格符n 换行符t 横向制表符v 纵向制表符r 回车符f 换页符o 八进制数代表的字符 #还搞不懂.x 十六进制数代表的字符 #还搞不懂.000 终止符,忽略000后的全部字符3.字符串中的转义符过滤函数:strip()-过滤字符串中所有的转义符:lstrip()-过滤字符串中第一个转义符:rstrip()-过滤字符串中最后的转义符后记:在使用的时候返回的结果不是预想中的正确结果.还待查询相关具体资料4.字符串的连接:Python中可以使用+、+=、连接若干个字符

3、串,如果是以下情况,Python则自动连接:str = fish hat #若干个字符串之间如果只有空格,Python会自动连接 print strfishhatstr += learning Python! #使用运算符追加字符串 print strfishhat learning Python:使用str2.join(str)函数进行连接,其中str为需要连接的字符串序列或者一个字符串,str2为连接中填补的字符: string = (apple,banana,china) print -.join(string) #向string这个元组中的多个字符串元素之间加上-然后输出apple-b

4、anana-china print .join(string) #加入的字符也可以是空的applebananachina print -.join(fishhat) #直接使用f-i-s-h-h-a-t #自动在每个子字符中加入-5.用split(str,int)函数截取字符串 string = f-i-s-h-h-a-tstring.split(-) #按-作为截取子字符串的符号,也就是说遇到一个-则截取一个子字符f,i,s,h,h,a,t #最后返回一个截取得到的子字符列表string.split(-,2) #在按-截取子字符的时候,当截取到第2个-的时候就停止截取,后面的字符全部按一个子

5、字符返回(也就是说不管有没有-Python都不会理了,它认为你只指定了2个-有效)f,i,s-h-h-a-t #实际上返回了三个子字符,因为在Python找到第一个-之前已经有一个f就把f做子字符后记:这里很容易混淆,后面的整数参数(不提供系统默认截取所有的)其实就相当于你要在字符串中画多少条界,相当于切一条蛋糕,你切两刀是不是得三块?至于每块蛋糕的长短,就取决于你在蛋糕上做好的标记,也就相当于刚才的-6.startswith()函数和endswith()函数:startswith(substring,start,end)-用于判断字符串是否以substring字符开始的,start和end需

6、要对比的字符区间,默认是整个字符串,成功返回True失败返回Falsestr = fishhatstr.startswith(fi)Truestr.startswith(sh,2,4)Truestr.startswith(sh,)False:endswith(substring,start,end)-用于判断字符串是否以substring字符结束的,start和end是需要对比的字符区间,默认是整个字符串,成功返回True失败返回Falsestr.endswith(hat)Truestr.endswith(ha,4,6)True字符串查找替换Python 截取字符串使用 变量头下标:尾下标,就

7、可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾。# 例1:字符串截取str = 12345678printstr0:1 1 # 输出str位置0开始到位置1以前的字符printstr1:6 23456 # 输出str位置1开始到位置6以前的字符str=0000str+=str(num) # 合并字符串print str-5: # 输出字符串右5位 00018Python 替换字符串使用 变量.replace(被替换的内容,替换后的内容,次数),替换次数可以为空,即表示替换所有。要注意的是使用replace替换字符串后仅为临时变量,需重新赋值才能保存。

8、# 例2:字符串替换str = akakakstr = str.replace(k, 8) # 将字符串里的k全部替换为8printstr a8a8a8 # 输出结果Python 查找字符串使用 变量.find(要查找的内容,开始位置,结束位置),开始位置和结束位置,表示要查找的范围,为空则表示查找所有。查找到后会返回位置,位置从0开始算,如果每找到则返回-1。# 例3:字符串查找str = a,helloprint str.find(hello) # 在字符串str里查找字符串hello 2 # 输出结果Python 分割字符串使用 变量.split(分割标示符号分割次数),分割次数表示分割

9、最大次数,为空则分割所有。例4:字符分割str = a,b,c,dstrlist = str.split(,) # 用逗号分割str字符串,并保存到列表for value in strlist: # 循环输出列表值print value a # 输出结果bcd识别一个字符串 import urlliburlread = lambda url: urllib.urlopen(url).read() import chardetchardet.detect(urlread(encoding: GB2312, confidence: 0.99chardet.detect(urlread(http:/

10、yahoo.co.jp/)encoding: EUC-JP, confidence: 0.99chardet.detect(urlread(http:/amazon.co.jp/)encoding: SHIFT_JIS, confidence: 1chardet.detect(urlread(http:/pravda.ru/)encoding: windows-1251, confidence: 0.9355chardet.detect(urlread(http:/auction.co.kr/)encoding: EUC-KR, confidence: 0.99chardet.detect(u

11、rlread(http:/haaretz.co.il/)encoding: windows-1255, confidence: 0.99chardet.detect(urlread(http:/www.nectec.or.th/tindex.html)encoding: TIS-620, confidence: 0.7675chardet.detect(urlread(http:/feedparser.org/docs/)encoding: utf-8, confidence: 0.99python字符串处理函数在python有各种各样的string操作函数。在历史上string类在pytho

12、n中经历了一段轮回的历史。在最开始的时候,python有一个专门的string的module,要使用string的方法要先import,但后来由于众多的python使用者的建议,从python2.0开始, string方法改为用S.method()的形式调用,只要S是一个字符串对象就可以这样使用,而不用import。同时为了保持向后兼容,现在的 python中仍然保留了一个string的module,其中定义的方法与S.method()是相同的,这些方法都最后都指向了用S.method ()调用的函数。要注意,S.method()能调用的方法比string的module中的多,比如isdigi

13、t()、istitle()等就只能用 S.method()的方式调用。 对一个字符串对象,首先想到的操作可能就是计算它有多少个字符组成,很容易想到用S.len(),但这是错的,应该是len(S)。因为len()是内置函数,包括在_builtin_模块中。python不把len()包含在string类型中,乍看起来好像有点不可理解,其实一切有其合理的逻辑在里头。len()不仅可以计算字符串中的字符数,还可以计算list的成员数,tuple的成员数等等,因此单单把len()算在string里是不合适,因此一是可以把len()作为通用函数,用重载实现对不同类型的操作,还有就是可以在每种有len()运

14、算的类型中都要包含一个len()函数。 python选择的是第一种解决办法。类似的还有str(arg)函数,它把arg用string类型表示出来。 字符串中字符大小写的变换: S.lower() #小写 S.upper() #大写 S.swapcase() #大小写互换 S.capitalize() #首字母大写 String.capwords(S) #这是模块中的方法。它把S用split()函数分开,然后用capitalize()把首字母变成大写,最后用join()合并到一起 S.title() #只有首字母大写,其余为小写,模块中没有这个方法 字符串在输出时的对齐: S.ljust(wid

15、th,fillchar) #输出width个字符,S左对齐,不足部分用fillchar填充,默认的为空格。 S.rjust(width,fillchar) #右对齐 S.center(width, fillchar) #中间对齐 S.zfill(width) #把S变成width长,并在右对齐,不足部分用0补足 字符串中的搜索和替换: S.find(substr, start, end) #返回S中出现substr的第一个字母的标号,如果S中没有substr则返回-1。start和end作用就相当于在Sstart:end中搜索 S.index(substr, start, end) #与fin

16、d()相同,只是在S中没有substr时,会返回一个运行时错误 S.rfind(substr, start, end) #返回S中最后出现的substr的第一个字母的标号,如果S中没有substr则返回-1,也就是说从右边算起的第一次出现的substr的首字母标号 S.rindex(substr, start, end) S.count(substr, start, end) #计算substr在S中出现的次数 S.replace(oldstr, newstr, count) #把S中的oldstar替换为newstr,count为替换次数。这是替换的通用形式,还有一些函数进行特殊字符的替换

17、S.strip(chars) #把S中前后chars中有的字符全部去掉,可以理解为把S前后chars替换为None S.lstrip(chars) S.rstrip(chars) S.expandtabs(tabsize) #把S中的tab字符替换没空格,每个tab替换为tabsize个空格,默认是8个 字符串的分割和组合: S.split(sep, maxsplit) #以sep为分隔符,把S分成一个list。maxsplit表示分割的次数。默认的分割符为空白字符 S.rsplit(sep, maxsplit) S.splitlines(keepends) #把S按照行分割符分为一个list

18、,keepends是一个bool值,如果为真每行后而会保留行分割符。 S.join(seq) #把seq代表的序列字符串序列,用S连接起来 字符串的mapping,这一功能包含两个函数: String.maketrans(from, to) #返回一个256个字符组成的翻译表,其中from中的字符被一一对应地转换成to,所以from和to必须是等长的。 S.translate(table,deletechars) # 使用上面的函数产后的翻译表,把S进行翻译,并把deletechars中有的字符删掉。需要注意的是,如果S为unicode字符串,那么就不支持 deletechars参数,可以使用

19、把某个字符翻译为None的方式实现相同的功能。此外还可以使用codecs模块的功能来创建更加功能强大的翻译表。 字符串还有一对编码和解码的函数: S.encode(encoding,errors) # 其中encoding可以有多种值,比如gb2312 gbk gb18030 bz2 zlib big5 bzse64等都支持。errors默认值为strict,意思是UnicodeError。可能的值还有ignore, replace, xmlcharrefreplace, backslashreplace 和所有的通过codecs.register_error注册的值。这一部分内容涉及code

20、cs模块,不是特明白S.decode(encoding,errors) 字符串的测试函数,这一类函数在string模块中没有,这些函数返回的都是bool值: S.startwith(prefix,start,end) #是否以prefix开头 S.endwith(suffix,start,end) #以suffix结尾 S.isalnum() #是否全是字母和数字,并至少有一个字符 S.isalpha() #是否全是字母,并至少有一个字符 S.isdigit() #是否全是数字,并至少有一个字符 S.isspace() #是否全是空白字符,并至少有一个字符 S.islower() #S中的字母

21、是否全是小写 S.isupper() #S中的字母是否便是大写 S.istitle() #S是否是首字母大写的 字符串类型转换函数,这几个函数只在string模块中有: string.atoi(s,base) #base默认为10,如果为0,那么s就可以是012或0x23这种形式的字符串,如果是16那么s就只能是0x23或0X12这种形式的字符串 string.atol(s,base) #转成long string.atof(s,base) #转成float 这里再强调一次,字符串对象是不可改变的,也就是说在python创建一个字符串后,你不能把这个字符中的某一部分改变。任何上面的函数改变了字

22、符串后,都会返回一个新的字符串,原字串并没有变。其实这也是有变通的办法的,可以用S=list(S)这个函数把S变为由单个字符为成员的list,这样的话就可以使用S3=a的方式改变值,然后再使用S= .join(S)还原成字符串 python字符串处理以灵活为最大优点 2010-03-10 15:06 佚名 互联网 我要评论(0)python字符串在使用中需要和很多的语言融合,在这个过程中很多问题影响着相关的推广。下面我们就详细的看看相关技术信息。python字符串如何进行相关的知识学习,我们在使用的时候有不少的问题阻碍着我们的使用。下面我们就详细的看看如何才能更好的使用相关的python字符串

23、,希望对大家有所帮助。o Python列表与C#语言的相似度介绍o Python数据类型在常见集合中的语法o 对python开源技术开发的相关了解o Python数组实践中具体问题分析o Python socket服务如何进行配置详解看了大家用C+、C#、Java等语言的实现,总感觉牛刀杀鸡太麻烦,有兴趣的朋友可以自己写写看或者直接看原文的网友回复。我最近一段时间Python写的比较多,读到这些题目时候,就有一种跃跃欲试的冲动。因为我知道用Perl,Python,Ruby等动态语言来做这类题目,会是非常理想的。后来我做了这两道题目,结果也令人满意,代码之简洁保持在所有答案的前列。先看第一题Py

24、thon解答:1. dic= 2. forsinabcdefgabc: 3. dics=1ifsnotindicelse(dics+1) 4. printn.join(%s,%s%(k,v)fork,vindic.items() 5. 输出结果: 6. a,2 7. c,2 8. b,2 9. e,1 10. d,1 11. g,1 12. f,1Python的四行代码分别做了dictionary的声明,赋值,字符串的遍历,以及高效拼接。如果还没有看出它的简洁和强大的话,请看第二题的解法:13. defmain(offset=6): 14. string=u静夜思李白床前明月光,疑似地上霜。举

25、头望明月,低头思故乡。09013115. a=*offsetforrowinxrange(offset) 16. foriinxrange(offset): 17. forjinxrange(offset): 18. aij=stringj+i*offset 19. b=rcolforrina:-1forcolinxrange(len(a0) 20. printn.join(u.join(unicode(c)forcinrow)forrowinb)输出结果:21. 0低举疑床静9头头似前夜0思望地明思1故明上月3乡月霜光李1。,。,白这题如果用C#等实现,代码要在20行以上。下面我简单介绍一下

26、这几行代码:22. 第3行,在Python里面二维“数组”通过嵌套list来实现,这里初始化一个6行6列的二维数组; 23. 第7行,我们把“矩阵”顺时针旋转了90度(行列置换,并且对置换后的行首尾对调-这里的:-1就是用来置换一个list的trick);最后一行,我们把数组里的每行中元素,每行之间分别用两个不同字符拼接起来。join方法以及for.in.语句在python字符串中是相当常见的用法。 通过这两题,我们看到Python在处理字符串时候的十分灵活方便,虽然一种语言的好坏不应完全靠是否简洁来衡量,但对于我个人而言,Python是目前我用过的最好的语言。而且对于趣味题来说,这不就是我们

27、解题的趣味所在吗?以上就是对python字符串的相关信息介绍。字符串处理和正则表达式python提供了ord函数,它取得一个字符做为参数, 返回字符的字符代码字符串方法capitalize() 返回原始字符串的首字母大写版本,将其他任何大写字母都转换为小写center( width ) 返回宽度为 width 的一个字符串, 并让原始字符串在其中居中(两边补空格)count( substring ,start ,end ) 返回 substring 在原始字符串中出现的次数.如果指定了start参数,就从这个索引位 开始搜索,如果还指定了 end 参数, 就从start开始搜索, 在end停止decode( encoding ,errors )encode( encoding ,errors ) 返回一个编码的字符串. Python的默认编码方式(encodi

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1