设为首页 收藏本站
查看: 702|回复: 0

[经验分享] Python学习总结之三

[复制链接]

尚未签到

发表于 2015-11-29 14:00:45 | 显示全部楼层 |阅读模式
  优雅的字符串

前言
  记得我在Python学习总结第一篇中有提到字符串,那个可以算是先打个招呼吧,因为没有提到任何关于字符串的处理方法。今天,给大家详细讲解一下Python中字符串的使用方法,如有不当或不足之处,还请大家指出及补充,先谢过。
基本字符串操作
  对于序列的操作,我们马上可以想到的都有什么?索引?分片?乘法?判断成员资格?求长度?求最大最小值?没错,在字符串的领域中,我们也同样可以适用。不过,千万千万要牢记一点:字符串是不可变的。所以,在字符串中实施分片赋值是不可以的辣。
字符串格式化
  谈到字符串格式化,实在是很平常的啦,C++里我们都是怎么样用的?memset?那么在Python中呢,字符串格式化的操作符就是百分号%来表示。
   DSC0000.png
  注意:%也可以用作取模运算。
  字符串格式化方法:在字符串中需要格式化的地方一律用%s来表示。然后输出的时候在%的左侧放置一个字符串(需要格式化的字符串),右侧放置需要用来格式化字符串的值(可以是一个数字或者一个字符串,也可以是包含多个值的元组或者字典)。
  注意:%s和用来格式化字符串的值的个数必须要相同。
   DSC0001.png
  格式化字符串中的%s 部分称为转换说明符,它标记了需要插入转换值的位置。如果要格式化实数(浮点数),可以使用f说明符,同时提供需要的精度:一个句点再加上希望保留的小数位数(后面也有讲解到)。
  模板字符串:通过调用字符串中模板方法来格式化字符串。具体方法:substitute模板方法会用传递过来的关键字参数foo替换字符串中的$foo。
   DSC0002.png
  
  运行结果如下:
DSC0003.png
  基本的转换说明符:
  (1)%字符:标记转换说明符的开始。
  (2)转换标志(可选):-表示左对齐(默认为右对齐),+表示在转换值之前要加上正负号,0表示转换值若位数不够则用0填充。
  (3)%后最小字段宽度(可选):转换后的字符串至少应该具有该值指定的宽度。
  (4)点(.)后跟精度值(可选):如果转换的是实数,精度值就表示出现在小数点后的位数;如果转换的是字符串,那么该数字就表示最大的字段宽度。如果是*,那么精度将会从元组中读出。
   DSC0004.png
  
  
DSC0005.png
字符串方法
  find:在一个较长的字符串中查找子字符串,它返回子串所在位置的最左端索引,如果没有找到就返回-1。
   DSC0006.png
  join:在队列中添加元素。
   DSC0007.png
  lower:返回字符串中的字母小写化版本。
   DSC0008.png
  title/capwords:将字符串转换成为标题(即所有单词的首字母大写,其他字母小写)
  replace:返回字符串的所有匹配项均被替换之后得到的字符串。
  split:是join的逆方法,将字符串分割成序列。(如果不提供任何分隔符,程序会默认所有空格作为分隔符)
  strip:返回去除两侧(不包括内部)空格的字符串。也可以指定需要去除两侧的字符,将它们列为参数即可。
  lstrip和rstrip。
  translate:和replace方法一样,可以替换字符串中的某些部分,但是和前者不同的是,translate方法只处理单个字符。它的优势在于可以同时进行多个替换。在使用translate转换之前,需要事先完成一张转换表(你猜想到了吗),我们可以使用string模块中的maketrans函数就行。
  maketrans函数接受两个参数:两个等长的字符串,表示第一个字符串中的每个字符都用第二个字符串中相同位置的字符替换。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-144966-1-1.html 上篇帖子: python安装——Windows平台 下篇帖子: 原创翻译-值得关注的10个python语言博客
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表