Python计算机视觉编程练习8:string 模块学习
2015-11-24 19:57
701 查看
此博文系转载,查阅起来就很方便。原文链接,再次对原作者表示感谢!
1、string模块支持哪些字符形式。
('_re', '====>', <module 're' from 'C:\Python25\lib\re.pyc'>) ('ascii_letters', '====>', 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ') ('ascii_lowercase', '====>', 'abcdefghijklmnopqrstuvwxyz') ('ascii_uppercase', '====>', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ') ('digits', '====>', '0123456789') ('hexdigits', '====>', '0123456789abcdefABCDEF') # hex表示16进制 ('letters', '====>', 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz')# ('lowercase', '====>', 'abcdefghijklmnopqrstuvwxyz') ('octdigits', '====>', '01234567') #o ct表示8进制 ('printable', '====>', '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~ \t\n\r\x0b\x0c') # 全部内容 ('punctuation', '====>', '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~') # 标点符号 ('uppercase', '====>', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ') ('whitespace', '====>', '\t\n\x0b\x0c\r ') # 所有空字符
2、有哪些字符操作符?
关于大小写的函数:
①操作首字母capitalize,capwords。②全部字母:upper,lower,swapcase
字符查找:
①查找次数:count,②查找位置 find,index
字符串内容修改:
①拆分 split ,②连接join,本人习惯用“+”,③对齐 rjust,ljust,center,④替换replace,替换空白字符 trim,ltrim,rtrim。
补充一些:
拆分 str.partition(seq),根据seq拆分字符串,左起遇到第一个seq后,将str拆分,返回三个元组,如 hello word,seq=‘l’,返回结果: ('he', 'l', 'lo word') string.capitalize(s)返回字符串s的一个副本,这个副本的第一个字符大写。
string.capitalize(s)返回字符串s的一个副本,这个副本的第一个字符大写。 >>> s="hello world" >>> string.capitalize(s) 'Hello world' string.capwords(s)每个单词的首字母大写。 >>> string.capwords(s) 'Hello World' >>> string.center(s,20) ' hello world ' >>> string.center(s,2) 'hello world' >>> string.center(s,20,'*') '****hello world*****' string.center(s,width[,fillchar])函数,用指定的宽度来返回一个居中版的s,如果需要的话,就用fillchar进行填充,默认是空格。但是不会对s进行截取。即如果s的长度比width大,也不会对s进行截取。 >>> string.count(s,"h") 1 string.count(s,sub[,start[,end]])返回在s[start:end]范围内子串sub在字符串s当中出现的次数 >>> string.find(s,"a") -1
string.find(s,sub[,start[,end]])返回在s[start:end]范围内子串sub在字符串s当中出现的最小下标,没有找到返回-1 string.index(s,sub[,start[,end]])与string.find方法类似,只不过当没有找到子串sub的时候,会抛出ValueError异常 >>> string.index(s,"a") Traceback (most recent call last): File "<pyshell#233>", line 1, in <module> string.index(s,"a") File "C:\Python25\lib\string.py", line 326, in index return s.index(*args) ValueError: substring not found >>> string.ljust(s,20) 'hello world ' string.ljust(s, width[, fillchar])字符串的左对齐, 那么string.rjust()就是右对齐。 >>> string.upper(s) 'HELLO WORLD' >>> string.lower(s) 'hello world' string.upper()和string.lower()比较简单。就是全部转换为大写或者小写 >>> string.swapcase(s) 'HELLO WORLD' string.swapcase()实现大小写的转换。将大写转换为小写,将小写转换为大写。 >>> s=" hello world " >>> string.strip(s) 'hello world' string.strip(s)剔除字符串s左右空格 >>> string.lstrip(s) 'hello world ' >>> string.rstrip(s) ' hello world' string.lstrip(s)和string.rstrip(s)分别剔除字符串左、右边的空格 >>> string.zfill(s,20) '000000 hello world ' >>> string.zfill(s,2) ' hello world ' string.zfill(s,width)与center类似,不过这里的填充使用"0"来替代。 s="abc" >>> x=string.maketrans(string.ascii_letters,string.ascii_letters[2:]+string.ascii_letters[:2]) >>> string.translate(s,x) 'cde' string.maketrans()和string.translate()一般配合使用,用maketrans定义字符串的转换规则,然后用translate来实现。 我们可以用它来实现swapcase()方法 >>> x=string.maketrans(string.ascii_letters,string.letters) >>> string.translate("AbCdEf",x) 'aBcDeF' >>> string.translate("Ab CdE f",x) 'aB cDe F' >>> string.split("hello world") ['hello', 'world'] string.split(s, sep=None, maxsplit=-1)用sep拆分s,返回拆分后的列表,如果sep没有提供或者为None,那么默认的就是空格 string.join的功能刚好与其相反。 >>> l=string.split("hello world") >>> string.join(l) 'hello world' join(list [,sep])是用sep把list组合成一个字符串返回。
相关文章推荐
- [转]和机器学习和计算机视觉相关的数学
- [连载]《C#通讯(串口和网络)框架的设计与实现》-3.设备驱动的设计
- 基于PXE+Pressed方式的Ubuntu14.04网络安装
- Java实现Http服务器(四)
- 链表堆栈C实现
- Linux学习笔记3----计算机是如何启动的?
- Python计算机视觉编程练习7:文件操作
- 漫游红黑树之插入篇 http://www.cnblogs.com/xuqiang/archive/2011/05/16/2047001.html
- 教你透彻了解红黑树 http://blog.chinaunix.net/uid-26575352-id-3061918.html
- 4. 二叉查找树(BST) http://www.cnblogs.com/bizhu/archive/2012/08/19/2646328.html
- ASP.NET HTTP模拟提交通用类 GET POST
- 【以太网数据结构】地址解析协议ARP
- 对带头结点的单链表的简单操作
- httpclient 和 httpurlconnection 中利用gzip传输数据
- 在Xcode7/7.1中使用Http请求
- android 检查网络是否可用,如果不可用弹出设置,让用户改变
- 开源项目OkHttpPlus——支持GET、POST、UI线程回调、JSON格式解析、链式调用、文件上传下载
- libevent 和 libev 提高网络应用性能
- 数据结构作业 校园导航问题
- HttpClient和HttpURLConnection的区别