Python内置数据结构——字符串

知识结构图

Python内置数据结构——字符串

学习笔记

字符串

字符组成的有序序列,字符的集合

使用单引号、双引号、三引号引起来的字符序列

不可变对象

Unicode类型

定义

单引号、双引号、三引号

r、R:引号内的字符原样输出

元素访问

索引访问

可迭代

join连接

string“.join(iteratable)

使用string作为分隔符将可迭代对象连接起来

可迭代对象本身元素都是字符串

返回一个新的字符串

+

2个字符串链接在一起

返回一个新的字符串

分割

split

将字符串按照分隔符分割成若干字符串,并返回列表

split(sep=None,maxsplit=-1)

从左至右

sep指定分割字符串,缺省为空白字符串

maxsplit指定分割的次数,-1表示遍历整个字符串

rsplit(sep=None,maxsplit=-1)

从右至左

sep指定分割字符串,缺省为空白字符串

maxsplit指定分割的次数,-1表示遍历整个字符串

splitline([keepends])

按照行来切分字符串

keepends指的是是否保留行分隔符(\n、\r\n、\r)

partition

将字符串按照分隔符分割成2段,返回这2段和分隔符的元组

partition(sep) -> (head, sep, tail)

从左至右,能找到分隔符则返回头、分隔符、尾的三元组,否则分会头、2个空元素的三元组

sep为分割字符串,必须指定

rpartition(sep) -> (head, sep, tail)

从右至左,同partition

大小写转换

upper():全大写

lower():全小写

swapcase():大小写交换

排版

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

capitalize():首个单词大写

center(width[,fillchar]):指定width宽度,使用fillchar填充

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

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

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

修改

replace(old,new[,count]):字符串中找到匹配子串替换为新子串,返回新的字符串,count表示替换的次数,默认全部替换

strip([chars]):从字符串两端去除指定字符集chars中的所有字符,不指定chars默认去除空白字符

lstrip([chars]):只去除左端

rstrip([chars]):只去除右端

查找

find(sub[,start[,end]]):在指定区间[start,end)从左至右查找子串sub,找到返回索引,没有则返回-1

rfind(sub[,start[,end]]):从右至左

index(sub[,start[,end]]):在指定区间[start,end)从左至右查找子串sub,找到返回索引,没有则抛出ValueError

rindex(sub[,start[,end]]):从右至左

时间复杂度O(n)

len(string):字符串长度

count(sub[,start[,end]]):在指定区间[start,end)从左至右统计子串sub出现的次数

判断

endswith(suffix,[start[,end]]):在指定区间,字符串是否以suffix结尾

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

isalnum()

isalpha()

isdecimal():十进制

isdigit()

isidentifier():是否是标识符,字母下划线开头

islower()

isupper()

isspace()

格式化

format函数

“{}{xxx}”.format(*args,**kwargs)

args:位置参数,是一个元组

kwargs:关键字参数,是一个字典

{}:占位符

{}:按顺序匹配位置参数

{n}:按索引为n的参数

{xxx}:在关键参数中搜索名称一致的

{{}}:打印{}

位置参数

‘{}{}’.format(arg1,arg2):按照位置顺序用位置参数替代前面的字符串中的占位符

关键字参数或命名参数

‘{kw1}{}{kw2}’.format(arg1,kw1=’kwarg1′,kw2=’kwarg2′):位置参数按照序号匹配,关键字参数按照名称匹配

对齐

<:向左对齐

>:向右对齐

>0n:字符数不够,前面使用0补齐

^:居中对齐

x^:两端使用x补齐

进制

“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)

                                

    

原创文章,作者:ZBD20,如若转载,请注明出处:http://www.178linux.com/94047

(0)
ZBD20ZBD20
上一篇 2018-03-31
下一篇 2018-03-31

相关推荐

  • Python内置数据结构——字符串

    知识结构图 学习笔记 字符串 字符组成的有序序列,字符的集合 使用单引号、双引号、三引号引起来的字符序列 不可变对象 Unicode类型 定义 单引号、双引号、三引号 r、R:引号内的字符原样输出 元素访问 索引访问 可迭代 join连接 “string“.join(iteratable) 使用string作为分隔符将可迭代对象连接起…

    2018-03-31
  • 树 非线性结构,每个元素可有多个前驱和后继 树是n(n>=0)个元素的集合,n=0时,称为空树,树只有一个特殊的没有前驱的元素,称为树的根root,树中除了根结点外,其余元素只能有一个前驱,可以有零个和多个后继,子树也有自己的根 结点:树中的数据元素 结点的度degree:结点拥有的子树的数目称为度,记作d(v)。树的度是树内各结点的度最大值 叶子结点…

    2018-04-16
  • 函数

    函数、参数、参数解构
    返回值、作用域
    递归函数
    匿名函数、
    生成器

    2018-04-16
  • Python面向对象基础

    语言分类 面向机器 抽象成机器指令,让机器容易理解 代表:汇编语言 面向过程 按照步骤一步一步走,若出现情况A做相应的处理,若出现情况B做相应的处理 问题规模小,可以步骤化,按部就班处理 代表:C 面向对象OOP 计算机需要处理的问题的规模越来越大,需要多人、多部门协作 代表:C++、Java、Python 面向对象 一种认识世界、分析世界的方法论。将万事万…

    2018-05-06
  • 高阶函数

    高阶函数
    柯里化
    装饰器、文档字符串
    functools 模块 inspect 模块

    2018-04-25