[Python 3系列]字符串操作,,一、处理字符串特殊符


一、处理字符串


特殊符号

▎如何在字符串内使用特殊符号?

>>>text1=‘Hiscat‘snameisTom.‘File"<stdin>",line1text1=‘Hiscat‘snameisTom.‘^SyntaxError:invalidsyntax>>>text1=‘Hiscat\‘snameisTom.‘##“\”转义字符>>>text2="Hiscat‘snameisTom."##可以使用双引号开始和结束>>>print(r‘Hiscat\‘snameisTom.‘)##原始字符串Hiscat\‘snameisTom.>>>text1"Hiscat‘snameisTom.">>>text2"Hiscat‘snameisTom."


▎转义字符:

\‘ 单引号

\" 双引号

\t 制表符

\n 换行符

\\ 倒斜杠

>>>print("\tHiscat‘snameis\nTom.")Hiscat‘snameisTom.


三重引号

多行字符串的起止是3个单引号或3个双引号。“三重引号”之间所有引号、制表符或换行,都被认为是字符串的一部分。python的代码块缩进规则不适用于多行字符串。

多行字符串还常常用作多行注释。

>>>print(‘‘‘Hello,...CanyoufindmyWorld....viaTom.‘‘‘)Hello,CanyoufindmyWorld.viaTom.


字符串切片

字符串像列表一样,使用下标和切片。

字符串切片并没有修改原来的字符串。

>>>text1=‘Hiscat\‘snameisTom.‘>>>text1[:10]"Hiscat‘s">>>text2="Hiscat‘snameisTom.">>>text2[:10]"Hiscat‘s"


in和not in

测试第一个字符串(精确匹配)是否在第二个字符串中。

>>>text1=‘Hiscat\‘snameisTom.‘>>>"cat"intext1True>>>"tom"notintext1True


二、字符串方法


大小写

upper()和lower()字符串方法返回一个新字符串,其中原字符串的所有字母都被相应地转换为大写或小写。字符串中非字母字符保持不变。

>>>text1=‘Hiscat\‘snameisTom.‘>>>text1.upper()"HISCAT‘SNAMEISTOM.">>>text1.lower()"hiscat‘snameistom.">>>text1##这些方法没有改变字符串本身,而是返回一个新字符串。"Hiscat‘snameisTom."


isupper()和islower()方法用来判断字符串内所有字母是否都是大写或小写。

>>>‘Hello‘.islower()False>>>‘Hello‘.isupper()False>>>‘Hello‘.upper().isupper()True>>>‘Hello‘.lower().islower()True>>>‘Hello123‘.lower().islower()True>>>‘Hello123‘.upper().isupper()True


▎其他常用的判断字符串方法:

isalpha()返回True,如果字符串只包含字母,并且非空;

isalnum()返回True,如果字符串只包含字母和数字,并且非空;

isdecimal()返回True,如果字符串只包含数字,并且非空;

isspace()返回True,如果字符串只包含空格、制表符和换行,并且非空;

istitle()返回True,如果字符串只包含首字母大写、后面都是小写字母的单词;


开始和结束

startswith()和endswith()方法返回True,如果它们所调用的字符串以该方法传入的字符串开始或结束。否则,方法返回False。

>>>text1=‘Hiscat\‘snameisTom.‘>>>text1.startswith(‘Hiscat‘)True>>>text1.startswith(‘hiscat‘)False>>>text1.endswith(‘om.‘)True>>>text1.endswith(‘.‘)True


插入与分割

join()方法在一个字符串上调用,参数是一个字符串列表,返回一个字符串。返回的字符串由传入的列表中每个字符串连接而成。

调用join()方法的字符串,被插入到列表参数中每个字符串的中间。

join()方法是针对一个字符串而调用的,并且传入一个列表值。

>>>‘#‘.join([‘Tom‘,‘Jack‘,‘Mike‘,‘Alice‘])‘Tom#Jack#Mike#Alice‘>>>‘\n‘.join([‘Tom‘,‘Jack‘,‘Mike‘,‘Alice‘])‘Tom\nJack\nMike\nAlice‘


split()方法针对一个字符串调用,返回一个字符串列表。

默认按照各种空白字符分割,如空格、制表符或换行符。

一个常见的split()用法,是按照换行符分割多行字符串。

>>>text‘Tom\nJack\nMike\nAlice‘>>>text.split()[‘Tom‘,‘Jack‘,‘Mike‘,‘Alice‘]>>>text.split(‘i‘)[‘Tom\nJack\nM‘,‘ke\nAl‘,‘ce‘]


对齐文本

rjust()和ljust()字符串方法返回调用它们的字符串的填充版本,通过插入空格来对齐文本。

这两个方法的第一个参数是一个整数长度,用于对齐字符串。第二个可选参数是指定一个填充字符,取代空格字符。

center()字符串方法与rjust()和ljust()类似,但它让文本居中。

利用这三个方法确保字符串整齐对齐,即使不清楚有多少字符。

>>>‘Hello‘.rjust(10)‘Hello‘>>>‘Hello‘.ljust(20)‘Hello‘>>>‘Hello‘.center(20,‘-‘)‘-------Hello--------‘>>>‘Hello‘.rjust(10).ljust(20)‘Hello‘>>>‘Hello‘.rjust(10).ljust(20,‘-‘)‘Hello----------‘


删除空白字符

strip()字符串方法将返回一个新的字符串,它的开头或末尾都没有空白字符。

lstrip()和rstrip()方法将相应删除左边或右边的空白字符。

有一个可选参数,指定两边的哪些字符应该删除。

>>>text=‘HelloWorld‘>>>text.strip()‘HelloWorld‘>>>text.lstrip()‘HelloWorld‘>>>text.rstrip()‘HelloWorld‘>>>text.strip(‘Held‘)‘oWor‘


拷贝粘贴字符串

pyperclip模块有copy()和paste()函数,可以向计算机的剪贴板发送文本,或从它接收文本。

▎pyperclip模块不是python自带的,需要安装。

[root@juispansrc]#wgethttps://bootstrap.pypa.io/get-pip.py......2017-07-1503:11:16(24.4KB/s)-已保存“get-pip.py”[1595408/1595408])[root@juispansrc]#pythonget-pip.py......Successfullyinstalledpip-9.0.1setuptools-36.2.0wheel-0.29.0[root@juispansrc]#pip-Vpip9.0.1from/usr/lib/python2.7/site-packages(python2.7)[root@juispansrc]#pipinstallpyperclipCollectingpyperclipDownloadingpyperclip-1.5.27.zipBuildingwheelsforcollectedpackages:pyperclipRunningsetup.pybdist_wheelforpyperclip...doneStoredindirectory:/root/.cache/pip/wheels/0b/fe/d7/1ab1ec7a91dc707d04b872214f6ce617f1b04a027de12fd4feSuccessfullybuiltpyperclipInstallingcollectedpackages:pyperclipSuccessfullyinstalledpyperclip-1.5.27
>>>importpyperclip>>>pyperclip.copy(‘HelloWorld‘)>>>pyperclip.paste()‘HelloWorld‘


本文出自 “乱码时代” 博客,请务必保留此出处http://juispan.blog.51cto.com/943137/1947923

[Python 3系列]字符串操作

评论关闭