split(sep=None, maxsplip=-1)

从左到右

sep 指定分隔字符串,缺省情况下空白字符串,指定的字符串会被切掉

maxsplit 指定分隔次数,-1 表示遍历

rsplit(sep=None, maxsplit=-1)

从右到左

...

splitlines([keepends])

按照行来分隔字符串

keepends 指的是是否保留行分隔符

行分隔符包括 \n, \r\n, \r 等

partition(sep)

从左到右,遇到分隔符就把字符串分割成两个部分,返回头,分隔符,尾三部分的三元组,如果没有找到分隔符,就返回头,两个空元素的三元组。

sep 必须指定。

rpartition(seq)

从右到左

字符串大小写

upper(): 全大写

lower(): 全小写

swapcase(): 交互大小写

字符串排版

title(): 标题的每个单词都大写

capitalize: 首个单词大写

center(width [,fillchar]): width 打印宽度,fillchar: 填充的字符

zfill(width): width 打印宽度,居右,左边用0填充

ljust(width[,fillchar]): 左对齐

rjust(width[,fillchar]): 右对齐

字符串修改

replace(old, new[,count]):

找到匹配字符串换为新串,count指定替换几次,不指定全部替换。

strip([chars]):

从字符串两端去除chars中字符,没有指定chars去除两端空格

字符串查找

find(sub[,start[,end]]):

在指定区间 [start, end],从左到右,查找子串 sub 。找到返回索引,没有返回 -1

rfind(sub[,start[,end]])

从右到左

index(sub[,start[,end]])

在指定区间[start, end],从左至右,查找子串sub。找到返回索引,没有找到抛出异常ValueError

count(sub[,start[,end]])

在指定区间 [start, end], 从左到右,统计子串 sub 出现的次数。

字符串判断

endswith(suffix[,start[,end]]):

在指定区间 [start, end],字符串是否是 suffix 结尾,返回 bool

startswith(prefix[,start[,end]]):

在指定区间 [start, end], 字符串是否是 prefix 开头, 返回 bool

is 系列

isalnum(): 是否是字母和数字组成

isalpha(): 是否是字母

isdecimal(): 是否只包含十进制数字

isdigit(): 是否全部数字(0-9)

islower(): 是否全都是小写

isupper(): 是否全部大写

isspace(): 是否只包含空白字符

字符串格式化

printf-style formatting

"I'm %03"%(20)

"I like %s"%'Python'

"I am %-5d"%(20)

format 函数格式字符串语法

"{} {xxx}".format(*args,**kwargs)
# args 是位置参数,是一个元组
# kwargs 是关键字参数,是一个字典
# 花括号表示占位符
# {} 表示按顺序匹配位置参数,{n}
# 表示取位置参数索引为n的值
# {xxx} 表示在关键字参数中搜索名称一致的
# {{}} 表示打印花括号
# 位置参数
"{},{}".format('1111',8888) # 这就是按照位置顺序用位置参数替换前面的格式字符串的占位符中
# 关键字参数或命名参数
"{server}{1}:{0}",format(8888,'192.168.0.1',server='Web Server Info')
# 访问元素
"{0[0]}.{0[1]}".format(('magedu','com'))
# 对象属性访问
Point = namedtuple('Point','x y')
p = Point(3,5)
"{{{0.x},{0.y}}}".format(p)
'{0}*{1}={2:>2}'.format(3,2,2*3) # 3*2=06
'{:>}' # 右对齐
'{:<}' # 左对齐
'{:^30}'.format('centered') # ^ 居中
'{:*^30}'.format('centered') # 居中并以 * 填充

进制

'int:{0:d};hex:{0:x};oct:{0:o};bin:{0:b}'.format(42)
'int:{0:d};hex:{0:#x};oct:(0:#o);bin:{0:#b}'.format(42) # 会显示进制符号 octets = [192,168,0,1]
'{:02X}{:02X}{:02X}{:02x}'.format(*octets) # * 表示解构

python基础 - 字符串作的更多相关文章

  1. python基础——字符串和编码

    python基础——字符串和编码 字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用 ...

  2. Python 基础-> 字符串,数字,变量

    Python 基础:字符串,数字,变量 1. 字符串 (信息的一种表达方式) a. 使用引号创建字符串 b. 单引号,双引号,三引号: ', ", ''', ""&quo ...

  3. Python基础-字符串格式化_百分号方式_format方式

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  4. Python 基础 字符串拼接 + if while for循环

    注释单行注释 #多行注释 ''' 三个单引号或者三个双引号 """ ''' 用三引号引住可以多行赋值 用户交互 input 字符串拼接 +  ""%( ...

  5. Python基础——字符串

    Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 在Python中,字符串也是一种数据类型.相比其它数据类型,字符串算是比较复杂的.为何呢?因为字符串不仅包含英文字母 ...

  6. python基础-字符串(6)

    一.引言 当打来浏览器登录某些网站的时候,需要输入密码,浏览器把密码传送到服务器后,服务器会对密码进行验证,其验证过程是把之前保存的密码与本次传递过去的密码进行对比,如果相等,那么就认为密码正确,否则 ...

  7. python基础——字符串、编码、格式化

    1.三种编码:ascii Unicode utf8 2.字符串和编码数字的两个函数:ord(字符转数字ord(‘A’)=65)和 chr(数字转字符chr(65)=A) 3.bytes存储编码,记住两 ...

  8. [Python] Python基础字符串

    Python的语法采用缩进的方式,一般使用四个空格,并且是大小写敏感的 字符编码 计算机只能处理数字,如果要处理文本,必须先把文本转换成数字才能处理 采用8个比特(bit)作为一个字节(byte) 一 ...

  9. Python基础(字符串和编码)

    字符编码 我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特 ...

随机推荐

  1. java高级工程师开放面试题集<二>

    临近年关,不少人蠢蠢欲动,有童鞋问我java后端面试会面试什么? 作为一个java后端老鸟,跌打滚爬多次被面试和面试别人,总结了一些经验,希望对大家有所帮助. 特别说明,仅仅针对工作两年以上的java ...

  2. Asp.net webform scaffolding结合Generic Unit of Work & (Extensible) Repositories Framework代码生成向导

    Asp.net webform scaffolding结合Generic Unit of Work & (Extensible) Repositories Framework代码生成向导 在上 ...

  3. #7 Python顺序、条件、循环语句

    前言 上一节讲解了Python的数据类型和运算,本节将继续深入,涉及Python的语句结构,相当于Python的语法,是以后编写程序的重要基础! 一.顺序语句 顺序语句很好理解,就是按程序的顺序逻辑编 ...

  4. netty源码解解析(4.0)-11 Channel NIO实现-概览

      结构设计 Channel的NIO实现位于io.netty.channel.nio包和io.netty.channel.socket.nio包中,其中io.netty.channel.nio是抽象实 ...

  5. VB.NET 窗體操作

    Private Sub A1() '加载窗体 frm1.Show() End Sub Private Sub A2() '離開 Process.GetCurrentProcess().Kill() E ...

  6. Cylinder Candy(积分+体积+表面积+旋转体)

    Cylinder Candy Time Limit: 2 Seconds Memory Limit: 65536 KB Special Judge Edward the confectioner is ...

  7. nginx重启服务

    修改完nginx配置后,需要使用 nginx -s reload使修改的配置生效,配置生效是平滑的,不会对访问产生任何影响reload后会启动新的进程接受新请求,对于未处理完的请求还是用老的配置,直到 ...

  8. 使用 json-server 模拟数据

    1. 先安装 npm install json-server -g 2.查看是否安装成功 json-server -h 3.准备数据,新建一个文件夹 mock,cd mock,在mock下 新建tes ...

  9. 谷歌迂回入华:Waymo无人车抢先进驻上海!

    谷歌迂回入华:Waymo无人车抢先进驻上海! https://mp.weixin.qq.com/s/d5Cw2uhykMJ9urb6Cs8aNw 谷歌又双叒叕要回归中国了?这已经是第不知道多少次的传言 ...

  10. Sql Server 向上取整、向下取整、四舍五入取整

    ==================================================== [四舍五入取整截取] select round(55.56,0) ============== ...