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/94042

(0)
ZBD20ZBD20
上一篇 2018-03-31 16:11
下一篇 2018-03-31 16:20

相关推荐

  • Python数据结构

    数据结构个人总结,方便以后查找。

    Python笔记 2018-04-01
  • 面向对象之魔术方法

    特殊属性 属性 含义 __name__ 类、函数、方法的名称 __module__ 类定义所在的模块名 __class__ 对象或类所属的类 __bases__ 类的基类的元组,顺序为它们在基类列表中出现的顺序 __doc__ 类、函数的文档字符串,若没定义则为None __mro__ 类的mro,方法查找顺序 __dict__ 类或实例的属性,可写的字典 …

    2018-05-20
  • Python 部分知识点总结(一)

    此篇博客只是记录第三周未掌握或不熟悉的知识点,用来加深印象。

    Python笔记 2018-03-26
  • Python函数返回值、作用域以及树的概念

    Python函数返回值、作用域以及树的概念

    Python笔记 2018-04-15
  • 面向对象,魔术方法

    面向对象 一面向对象 什么是面向对象: 一种认识世界、分析世界的方法论。将万事万物抽象为类。 类class: 类是抽象的概念,是万事万物的抽象,是一类事物的共同集合的集合。 用计算机语言来描述类,就是属性和方法的集合。 对象instance,object: 对象是类的具象,是一个实体。 每个个体都是抽象类的不同实体。 哲学 一切皆对象 对象是数据和操作的封装…

    Python笔记 2018-05-14
  • Python 部分知识点总结(三)

    此篇博客只是记录第五周未掌握或不熟悉的知识点,用来加深印象。

    2018-04-08