优雅的字符串

前言

记得我在Python学习总结第一篇中有提到字符串,那个可以算是先打个招呼吧,因为没有提到任何关于字符串的处理方法。今天,给大家详细讲解一下Python中字符串的使用方法,如有不当或不足之处,还请大家指出及补充,先谢过。

基本字符串操作

对于序列的操作,我们马上可以想到的都有什么?索引?分片?乘法?判断成员资格?求长度?求最大最小值?没错,在字符串的领域中,我们也同样可以适用。不过,千万千万要牢记一点:字符串是不可变的。所以,在字符串中实施分片赋值是不可以的辣。

字符串格式化

谈到字符串格式化,实在是很平常的啦,C++里我们都是怎么样用的?memset?那么在Python中呢,字符串格式化的操作符就是百分号%来表示。

注意:%也可以用作取模运算。

字符串格式化方法:在字符串中需要格式化的地方一律用%s来表示。然后输出的时候在%的左侧放置一个字符串(需要格式化的字符串),右侧放置需要用来格式化字符串的值(可以是一个数字或者一个字符串,也可以是包含多个值的元组或者字典)。

注意:%s和用来格式化字符串的值的个数必须要相同。

格式化字符串中的%s 部分称为转换说明符,它标记了需要插入转换值的位置。如果要格式化实数(浮点数),可以使用f说明符,同时提供需要的精度:一个句点再加上希望保留的小数位数(后面也有讲解到)。

模板字符串:通过调用字符串中模板方法来格式化字符串。具体方法:substitute模板方法会用传递过来的关键字参数foo替换字符串中的$foo。

运行结果如下:

基本的转换说明符:

(1)%字符:标记转换说明符的开始。

(2)转换标志(可选):-表示左对齐(默认为右对齐),+表示在转换值之前要加上正负号,0表示转换值若位数不够则用0填充。

(3)%后最小字段宽度(可选):转换后的字符串至少应该具有该值指定的宽度。

(4)点(.)后跟精度值(可选):如果转换的是实数,精度值就表示出现在小数点后的位数;如果转换的是字符串,那么该数字就表示最大的字段宽度。如果是*,那么精度将会从元组中读出。

字符串方法

find:在一个较长的字符串中查找子字符串,它返回子串所在位置的最左端索引,如果没有找到就返回-1。

join:在队列中添加元素。

lower:返回字符串中的字母小写化版本。

title/capwords:将字符串转换成为标题(即所有单词的首字母大写,其他字母小写)

replace:返回字符串的所有匹配项均被替换之后得到的字符串。

split:是join的逆方法,将字符串分割成序列。(如果不提供任何分隔符,程序会默认所有空格作为分隔符)

strip:返回去除两侧(不包括内部)空格的字符串。也可以指定需要去除两侧的字符,将它们列为参数即可。

lstrip和rstrip。

translate:和replace方法一样,可以替换字符串中的某些部分,但是和前者不同的是,translate方法只处理单个字符。它的优势在于可以同时进行多个替换。在使用translate转换之前,需要事先完成一张转换表(你猜想到了吗),我们可以使用string模块中的maketrans函数就行。

maketrans函数接受两个参数:两个等长的字符串,表示第一个字符串中的每个字符都用第二个字符串中相同位置的字符替换。

Python学习总结之三 -- 优雅的字符串的更多相关文章

  1. Python学习系列(三)(字符串)

    Python学习系列(三)(字符串) Python学习系列(一)(基础入门) Python学习系列(二)(基础知识) 一个月没有更新博客了,最近工作上有点小忙,实在是没有坚持住,丢久又有感觉写的必要了 ...

  2. python学习之基础入门,安装,字符串,数据转换,三元运算符

    python基础 我们要开始学习新的编程语言了,加油~~ python是“世界上最好的语言”,学习它当然是认为它是最好的所以我们才学(人生苦短我学python),python运用于不同的领域,采集分析 ...

  3. Python学习笔记(三)字符串类型及其操作(2)

    1.字符串的表示 字符串是字符的序列表示,可以由一对单引号(‘).双引号(“)或三引号(’‘’)构成.其中,单引号.双引号和三引号都可以表示单行字符串,但是只有三引号可以表示多行字符串 在使用双引号时 ...

  4. python学习笔记(二)— 字符串(string)

    字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'Hello World!' var2 ...

  5. Python 学习笔记(6)— 字符串格式化

    字符串格式化处理 远古写法 以前通常使用运算符号 % ,%s 插入的值 String 类型,%.3f 指插入的值为包含 3 位小数的浮点数: format1 = "%s, %s!" ...

  6. Python学习笔记(四)字符串型

    字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串. 在最新的Python 3版本中,字符串是以Unicode编码的,也就是说,Python的字符串支持多语言 ...

  7. Python学习总结7:随机字符串和随机数

    Python生成随机数与随机字符串,需要import random模块.random模块最常用的几个函数如下: 1. random.random(a, b) 用于生成一个0到1的随机符点数: 0 &l ...

  8. Python学习笔记总结1:字符串表示str与repr的用法比较

    参考博文地址:http://blog.csdn.net/yyt8yyt8/article/details/7030416 值转化为字符串常用以下三种方法: 1. str函数 str函数转化为合理形式的 ...

  9. python学习day4--python基础--元组,字符串

    1.元组 #只读列表,元组,当希望生成后不被修改则用元组 r=(1,2,3,4,5) 元组 2.字符串,python字符串操作非常丰富,编程时可先查询python本身是否已设计了相关函数 #移除空白 ...

随机推荐

  1. Win32 OpenGL 编程( 1 ) Win32 下的 OpenGL 编程必须步骤

    http://blog.csdn.net/vagrxie/article/details/4602961 Win32 OpenGL 编程( 1 ) Win32 下的 OpenGL 编程必须步骤 wri ...

  2. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---40

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  3. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---37

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  4. 学习总结——JMeter做WebService接口功能测试

    用JMeter作WebService接口功能测试(可以借助SoapUI来完成) SoapUI里面的操作: Wsdl文件或链接导入或添加到SoapUI打开待测请求:运行请求:取URL  SOAPActi ...

  5. Day 26 python 正则表达式

    re模块\正则表达式 一.元字符 1.. ^ $ * + ? { } [ ] | ( ) \ "." 代表(任意一个字符) "*" 代表(任意数量任意字符,0- ...

  6. 通过Java实现斗地主

    功能:洗牌,发牌,对玩家手中的牌排序,看牌 package demo06; import java.util.ArrayList; import java.util.Collections; impo ...

  7. Codeforces 703D Mishka and Interesting sum(离线 + 树状数组)

    题目链接  Mishka and Interesting sum 题意  给定一个数列和$q$个询问,每次询问区间$[l, r]$中出现次数为偶数的所有数的异或和. 设区间$[l, r]$的异或和为$ ...

  8. BZOJ 4543 2016北京集训测试赛(二)Problem B: thr 既 长链剖分学习笔记

    Solution 这题的解法很妙啊... 考虑这三个点可能的形态: 令它们的重心为距离到这三个点都相同的节点, 则其中两个点分别在重心的两棵子树中, 且到重心的距离相等; 第三个点可能在重心的一棵不同 ...

  9. 谈谈ssrf

    一.ssrf,全称:Server-Side-Request-Forgery服务端请求伪造 二.我们正常发出的请求都是经过我们的浏览器,由我们自己的电脑发出的:而存在ssrf的目标网站,我们输入某个网址 ...

  10. 对数据进行GZIP压缩和解压

    public class GzipUtils { /** * 对字符串进行gzip压缩 * @param data * @return * @throws IOException */ public ...