作者博文地址:https://www.cnblogs.com/liu-shuai/

Python字符串的常用操作包括以下但不限于以下操作:

1 字符串的替换、删除、切片、复制、连接、比较、查找、分割等

以下将对字符串的内置操作方法进行总结,并以实力展示。

1 使用type获取创建对象的类 type(name)
2 使用dir获取类的成员dir(name)
3 使用vars获取类的成员和各个成员的值

capitalize

1 功能:字符串首字母大写
2 语法:s.capitalize() -> string
3 name = 'spiritman'
4 name.capitalize()
5 结果:'Spiritmans'

casefold

1 功能:字符串首字母小写
2 语法:s.casefold() -> string
3 name = 'SpiritMan'
4 name.casefold()
5 结果:'spiritMan'

center

 1 功能:字符串宽度填充。使用原有字符串+填充字符构成指定长度的新的字符串
2 语法:S.center(width[, fillchar]) -> string
3 name = 'spiritman'
4 name.center(13)
5 结果:' spiritman ' #默认以空格填充
6 name.center(14,'*')
7 结果:'***spiritman**'
8 ###################################################################
9 功能:字符串居中。以'*'分割(20位新产生字符串的总宽度)
10 name = 'spiritman'
11 name.center(15,'*')
12 结果:'***spiritman***'

count

 1 功能:统计某个字符或子序列在字符串中出现的次数,或在字符串指定区间内完成上述操作
2 语法:S.count(sub[, start[, end]]) -> int
3 name = 'spiritman'
4 name.count('i')
5 结果:2
6 name.count('h',1,3) #从索引值0-3范围的字符中统计'h'出现的次数
7 结果:1
8
9 name.count('rit') #统计子序列rit出现的次数
10 结果:1

encode

 1 功能:对字符串进行编码操作
2 语法:S.encode([encoding[,errors]]) -> object
3 name = 'spiritman'
4 name.encode()
5 结果:'spiritman'
6
7 功能:转换字符串的编码
8 name = '精灵旅社'
9 name.encode('gbk')
10 结果:'\xc4\xcf\xb7\xc7\xb2\xa8\xb2\xa8'

endswith

 1 功能:判断字符串是否以某个字符或子序列结尾的,返回值为布尔型
2 语法:S.endswith(suffix[, start[, end]]) -> bool
3 name = 'spiritman'
4 name.endswith('s')
5 结果:False
6 name.endswith('n')
7 结果:True
8 name.endswith('man')
9 结果:True

expandtabs

 1 功能:将制表符'\t'转换成指定宽度的tab键分割,默认tabsize=8
2 语法:S.expandtabs([tabsize]) -> string
3 name = 'spirit\tman'
4 name.expandtabs()
5 结果:'spirit man'
6 name.expandtabs(4)
7 结果:'spirit man'

find

1 功能:在字符串中查找指定字符串,找到则返回其索引值,找不到返回-1
2 语法:s.find(sub [,start [,end]]) -> int
3 name = 'spiritman'
4 name.find('s')
5 结果:0
6 name.find('i')
7 结果:2
8 name.find('m',1,4)
9 结果:-1

format

1 功能:格式化输出字符串
2 语法:S.format(*args, **kwargs) -> string
3 test = 'I\'m {},{}'
4 test.format('spiritman',' Welcome')
5 结果: "I'm spiritman,Welcome"

index

1 功能:在字符串中查找指定的字符串,找到则返回索引值,找不到时报错
2 语法:S.index(sub [,start [,end]]) -> int
3 name = 'spiritman'
4 name.index('r')
5 结果:3
6 name.index('rit')
7 结果:3

join

1 功能:字符串连接
2 语法:S.join(iterable) -> string
3 name = 'spiritman'
4 '*'.join(name)
5 结果:'s*p*i*r*i*t*m*a*n'

isalnum

1 功能:检查判断字符串是否包含字母数字字符
2 语法: S.isalnum() -> bool
3 name = 'spiritman'
4 name.isalnum()
5 结果:True

isalpha

1 功能:检查字符串是否只由字母组成
2 语法:S.isalpha() -> bool
3 name = 'spiritman1'
4 name.isalpha()
5 结果:False

isdecimal

1 功能:检查字符串是否只包含十进制字符。该方法只存在于unicode对象
2 语法:S.isdecimal() -> bool
3 name = 'spiritman'
4 name.isdecimal()
5 结果:False

isdigit

1 功能:检测字符串是否只由数字组成
2 语法:S.isdigit() -> bool
3 num = '21312414'
4 num.isdigit()
5 结果:True

isspace

1 功能:检测字符串是否为空格
2 语法:S.isspace() -> bool
3 name = ' '
4 name.isspace()
5 结果:True
6 test = 'spiritman'
7 test.isspace()
8 结果:False

istitle

1 功能:判断字符串是否适合当做标题(即每个单词首字母大写)
2 语法:S.istitle() -> bool
3 s1 = 'A People'
4 s2 = 'a people'
5 s1.istitle()
6 结果:True
7 s2.istitle()
8 结果:False

isupper

1 功能:判断字符串中所有字母字符是否都是大写字母
2 语法:S.isupper() -> bool
3 name = 'spiritman'
4 NAME = 'SPIRITMAN'
5 name.isupper()
6 结果:False
7 NAME.isupper()
8 结果:True

ljust

1 功能:返回一个以原字符串左对齐,并使用空格填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串
2 语法:S.ljust(width[, fillchar]) -> string
3 width #指定字符串长度
4 fillchar #填充字符,默认空格
5 name = 'spiritman'
6 name.ljust(20.'*')
7 结果:'spiritman***********'

lower

1 功能:将所有的字母转换成小写
2 语法:S.lower() -> string
3 name = 'SpiritMan'
4 name.lower()
5 结果:'spiritman'

lstrip

1 功能:删除字符串左边指定的字符,默认为空格
2 语法:S.lstrip([chars]) -> string or unicode
3 name = ' spiritman '
4 name1 = 'xxxspiritmanxxx'
5 name.lstrip()
6 结果:'spiritman '
7 name1.lstrip('x')
8 结果:'spiritmanxxx'

rstrip

1 功能:删除字符串右边指定的字符,默认为空格
2 语法:S.rstrip([chars]) -> string or unicode
3 name = ' spiritman '
4 name1 = 'xxxspiritmanxxx'
5 name.rstrip()
6 结果:' spiritman'
7 name1.rstrip('x')
8 结果:'xxxspiritman'

strip

1 功能:删除字符串两边指定的字符,默认为空格
2 语法:S.strip([chars]) -> string or unicode
3 name = ' spiritman '
4 name1 = 'xxxspiritmanxxx'
5 name.strip()
6 结果:'spiritman'
7 name1.strip('x')
8 结果:'spiritman'

partition

1 功能:根据指定的分隔符将字符串进行分割。如果字符串包含指定的分隔符,则返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串。
2 语法:S.partition(sep) -> (head, sep, tail)
3 sep = 'rit'
4 name = 'spiritman'
5 name.partition(sep)
6 结果:('spi','rit','man')

replace

 1 功能:字符串替换。若指定参数count,则替换不超过count次
2 语法: S.replace(old, new[, count]) -> string
3 参数: old -----将被替换的子字符串
4 new ---- 新字符串,用于替换old字符串
5 count--- 可选参数,替换不超过count次
6 str = 'this is a test file....wow!!! this is a realy file'
7 str.replace('is','was')
8 结果:'thwas was a test file....wow!!! thwas was a realy file'
9 str.replace('is','was',3)
10 结果:'thwas was a test file....wow!!! thwas is a realy file'

split

1 功能:字符串切割,默认空格
2 语法: S.split([sep [,maxsplit]]) -> list of strings
3 name = 'spiritman'
4 name.split()
5 结果:['spiritman']
6 name.split('i')
7 结果:['sp', 'r', 'tman']

__add__

1 功能:在字符串后面添加指定的字符或字符串
2 name = 'spiritman'
3 str = 'liu'
4 name.__add__('s')
5 结果:'spiritmans'
6 name.__add__(str)
7 结果:'spiritmanliu'

__contains__

1 功能:判断指定字符串是否包含在字符串中,返回值为True和False
2 name = 'spiritman'
3 name.__contains__('i)
4 结果:True

__eq__

1 功能:判断字符串是否相等,返回值为True和False
2 str1 = 'spiritman'
3 str2 = 'spiritmans'
4 str1.__eq__(str2)
5 结果:False

Python 字符串 (str)的更多相关文章

  1. Python字符串str的方法使用

    #!usr/bin/env python# -*-coding:utf-8-*-#字符串通常用双引号或单引号来表示:'123',"abc","字符串"#str字 ...

  2. python字符串str

    字符串str常用操作方法(都会产生新的数据) 1.取值: (1)索引:s[0] (2)切片:s[起始索引:结束索引:步长] 起始索引为0,可以省略 s最后一个索引可以取-1 结束索引省略,默认取到最后 ...

  3. python 字符串str和json格式转换

    最近在写一个脚本,需要处理从excel中读取的数据,发现读取的json格式数据进行转换时报错 ValueError: Expecting property name enclosed in doubl ...

  4. python字符串str和字节数组相互转化

    b = b"Hello, world!" # bytes object s = "Hello, world!" # str object print('str ...

  5. python字符串str和字节数组bytes相互转化

    1 引言 后续待补充 2 代码 b = b"Hello, world!" # bytes s = "Hello, world!" # string print( ...

  6. python字符串(str)

    # value = "raitOrEi" # v = value.capitalize()#首字母大写 # print(v) # v1 = v.casefold()#全部变小写,不 ...

  7. python字符串,常用编码

    Python的字符串和编码 1.常用编码 与python有关的编码主要有:ASCII.Unicode.UTF-8 其中ASCII如今可以视作UTF-8的子集 内存中统一使用Unicode编码(如记事本 ...

  8. python字符串/列表/元组/字典之间的相互转换(5)

    一.字符串str与列表list 1.字符串转列表 字符串转为列表list,可以使用str.split()方法,split方法是在字符串中对指定字符进行切片,并返回一个列表,示例代码如下: # !usr ...

  9. (原创)Python字符串系列(1)——str对象

    在本博客 <Python字符串系列> 中,将介绍以下内容: Python内置的str对象及操作 字符串的格式化 Python中的正则表达式 re模块 本文将介绍Python内置的 str ...

随机推荐

  1. 编写高质量代码改善C#程序的157个建议——建议15: 使用dynamic来简化反射实现

    建议15: 使用dynamic来简化反射实现 dynamic是Framework 4.0的新特性.dynamic的出现让C#具有了弱语言类型的特性.编译器在编译的时候不再对类型进行检查,编译器默认dy ...

  2. URLRewrite 实现方法详解

    所谓的伪静态页面,就是指的URL重写,在ASP.NET中实现非常简单首先你要在你的项目里引用两个DLL:ActionlessForm.dll.URLRewriter.dll,真正实现重写的是 URLR ...

  3. chkconfig的原理 和添加开机自启动的办法

    当我们使用 chkconfig --list的时候 都会又  123456 这样的级别. 当某个级别是 on 他就会开机启动,当他是off 的时候他就不会开机自启动. 那么这是什么原因呢?他的 原理是 ...

  4. C语言编程基础

    主流C语言编译器介绍 关于GNU规范的语法扩展 用C语言构建一个可执行程序的流程 宏定义(无参宏定义和带参宏定义),C语言宏定义详解 条件编译,C语言条件编译详解 原码.反码.补码及位操作符,C语言位 ...

  5. django 实现电子支付功能

    思路:调用第三方支付 API 接口实现支付功能.本来想用支付宝来实现第三方网站的支付功能的,但是在实际操作中发现支付宝没有 Python 接口,网上虽然有他人二次封装的的 Python 接口,但是对我 ...

  6. spark执行例子eclipse maven打包jar

    首先在eclipse Java EE中新建一个Maven project具体选项如下 点击Finish创建成功,接下来把默认的jdk1.5改成jdk1.8 然后编辑pom.xml加入spark-cor ...

  7. ubutu16.04修改分辨率

    http://blog.csdn.net/oiken/article/details/71088230 vmware不能自动适应Ubuntu16.04的分辨率,而且Ubuntu16.04的displa ...

  8. urlencode编码问题(以及urlparse) 转

    网址链接中的中文编码 中文的gbk(GB2312)编码: 一个汉字对应两组%xx,即%xx%xx 中文的UTF-8编码: 一个汉字对应三组%xx,即%xx%xx%xx 可以利用百度进行URL编码解码 ...

  9. 【转】idea新建项目文件名为红色的解决办法

    idea如果当前project用了版本控制器,其下面新建的所有的项目默认都是加入到版本控制里面,所以项目名称和文件都是红色的. 解决办法: ctrl + alt + s 进入设置界面,–>ver ...

  10. Android IntentService 的使用

    1.service 执行耗时任务的步骤 2.IntentService (1)介绍 (2)使用方法 (3)优点 (4)在AndroidManifest.xml文件中添加service设置 <se ...