作者博文地址: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. Alpha项目复审

    队名 优点 缺点 排名 拉登是我罩的 1.最底层.从无到有实现的软硬件结合的俄罗斯方块游戏. 2.从画电路原理图.PCB电路板设计.接线.操作系统(没用到操作系统).驱动程序.应用程序开发,串口通信. ...

  2. ElasticSearch 笔记(一)

    一.Elasticsearch 印象 分布式.全文检索.数据分析. 二.为什么不用传统关系型数据库,如 MySQL,做搜索 举个反例.假设有以下数据库表 t_game: id   name 1 唐僧取 ...

  3. HTML5+CSS3网站设计教程 (张晓景,胡克) [iso]

    <HTML5+CSS3网站设计教程>系统地讲解了CSS的基础理论和实际运用技术,并结合多个案例讲解了采用CSS与层布局相结合制作网页的方法,在详细讲解各个案例的制作中,不仅介绍了CSS样式 ...

  4. C# 类型初始化(Type initialization)

    这些天突然看到一些大虾门写的有关类型初始化的文章.那种感觉真叫跌宕起伏啊. 博文地址如下,自己慢慢体会吧! 起步:http://www.cnblogs.com/artech/archive/2008/ ...

  5. 死磕Java之聊聊LinkedList源码(基于JDK1.8)

    工作快一年了,近期打算研究一下JDK的源码,也就因此有了死磕java系列 LinkedList 是一个继承于AbstractSequentialList的双向链表,链表不需要capacity的设定,它 ...

  6. virtueBox实现虚拟机的复制和粘贴

    1.在设备--共享粘贴板--勾选双向. 2.在设备--拖放--勾选双向. 3.在设备--安装增强功能,然后进入虚拟机安装增强功能即可.

  7. php代码审计4审计代码执行漏洞

    代码执行漏洞代码执行漏洞是指应用程序本身过滤不严,用户可以通过请求将代码注入到应用中执行,当应用在调用一些能将字符串转化成代码的函数(如php中的eval)时,没有考虑到用户是否能控制这个字符串,造成 ...

  8. 解决双击dwg文件ARX自定义实体提示代理的问题

    双击dwg文件的时候,如果没有通过注册表设置会提示代理实体. 注册表自动加载arx 注册表参考路径 R18.1 是cad版本 ACAD-9001:409 是cad的地区语言,409是英文 ,804是中 ...

  9. MySQL5.7配置(第一次使用)

    MySQL5.7配置(第一次使用) 最近因为工作需要学习mysql的增删改查.用的公司的电脑,之前有人已经安装过mysql5.7,等于使用了免安装版,重新开始配置.参考了以下文章 http://blo ...

  10. Linux常用的命令(3)

    1 文件的内容显示 cat 显示全部 more: 分屏幕显示,只能向后翻 less: 分屏幕显示,可以向上翻 head:查看前n行 默认10行 tail:查看后n行 -n -f: 查看文件尾部,不退出 ...