作者博文地址:http://www.cnblogs.com/spiritman/

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

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

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

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

capitalize

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

casefold

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

center

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

count

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

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

expandtabs

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

find

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

format

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

index

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

join

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

isalnum

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

isalpha

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

isdecimal

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

isdigit

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

isspace

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

istitle

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

isupper

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

ljust

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

lower

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

lstrip

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

rstrip

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

strip

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

partition

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

replace

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

split

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

__add__

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

__contains__

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

__eq__

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

作者博文地址:http://www.cnblogs.com/spiritman/

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

  1. python 序列:字符串、列表、元组

    python 序列:字符串.列表.元组   序列:包含一定顺序排列的对象的一个结构 内建函数:str() list() tuple() 可以使用str(obj)可以把对象obj转换成字符串 list( ...

  2. Python——序列与字符串

    序列与字符串 一. 列表 列表是Python的内置可变序列,是包含若干元素的有序连续内存空间.同一列表元素的数据类型可以各不相同,可以分别为整数.实数.字符串等基本类型,也可以是列表.元组.字典.集合 ...

  3. 3、python数据类型之字符串(str)

    字符串是任何计算机语言中最常见的数据类型,python中也不例外,因此熟练掌握字符串是学习python的必备技能.python中字符串三种定义方式 str = 'wang' str = "w ...

  4. python数据类型之字符串(str)和其常用方法

    字符串是有序的,不可变的. 下面的例子说明了字符串是不可变的 name = 'alex' name = 'Jack' """ 并没有变,只是给name开启了一块新内存,储 ...

  5. 『无为则无心』Python基础 — 16、Python序列之字符串的下标和切片

    目录 1.序列的概念 2.字符串的下标说明 3.字符串的切片说明 1.序列的概念 序列sequence是Python中最基本的数据结构.指的是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通 ...

  6. python序列类型字符串的方法L.index()与L.find()区别

    首先官方解释 S.index(sub[, start[, end]]) -> int Like S.find() but raise ValueError when the substring ...

  7. Python基础之字符串(str)常用操作

    1.字符串常用的方法 len()返回字符串的长度 ##Python3 >>> print(len('ab12我')) 5 ##Python2 >>> print(l ...

  8. python之将一个字符串str的内容倒叙过来,并输出。

    inStr = input() flashback = inStr[::-1] print(flashback)

  9. python学习笔记:python序列

    python序列包括字符串.列表和元组三部分,下面先总的说一下python序列共有的一些操作符和内建函数. 一.python序列 序列类型操作符 标准类型的操作符一般都能适用于所有的序列类型,这里说一 ...

随机推荐

  1. Oracle AWR与警报系统一

    管理自动工作负荷知识库 Oracle收集大量有关性能和活动的统计信息.这些信息在内存中积累,并定期写入数据库:写入到构成自动工作负荷知识库(Automatic Workload Repository, ...

  2. oracle基础教程oracle客户端详解

    oracle基础教程oracle客户端工具详解 参考网址:http://www.oraclejsq.com/article/010100114.html 该教程介绍了oracle自带客户端sqlplu ...

  3. 【Linux】文件、目录权限及归属

    访问权限: 可读(read):允许查看文件内容.显示目录列表 可写(write):允许修改文件内容,允许在目录中新建.移动.删除文件或子目录 可执行(execute):允许运行程序.切换目录 归属: ...

  4. attr 和 prop的区别

    attr 返回的是字符串 prop 返回的是布尔值

  5. css布局-内容自适应屏幕

    css页面布局,实现内容部分自适应屏幕,当内容高度小于浏览器窗口高度时,页脚在浏览器窗口底部:当内容高度高于浏览器窗口高度时,页脚自动被撑到页面底部. <style type="tex ...

  6. JQuery 同时获取多个标签的指定内容并储存为数组

    在网页开发中经常会碰到获取同种类型的 标签 的值得问题,比如下面的两种情况. 当需要批量获取同种标签的指定值时,新人就会碰上一点小麻烦. 比如 id=problem1的demo var list1=$ ...

  7. 四、spring成长之路——springIOC容器(下)

    目录 5.spring注解开发(Spring扩展知识) 5.1定义配置类:@Configuration 声明一个类为IOC容器 @Bean定义一个Bean 5.2.按照条件进行注入 5.3.@Impo ...

  8. html-表单标签

    表单标签 * 可以提交数据到**网站上的服务器,这个过程可以使用表单标签实现 * <form></form>:定义一个表单的范围 - 属性 ** action:提交到地址,默认 ...

  9. Hive HQL基本操作

    一. DDL操作 (数据定义语言) 具体参见:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL 其实就是我们在创建 ...

  10. 笔记(assert 断言)

    并发:在同一个时间段交替执行多个任务并行:在同一个时间点同时执行多个任务串行:同时执行的多个任务按顺序执行(换句话说就是一个任务执行完后才能执行下一个任务) #mysql limit用法: selec ...