6.1处理字符串
- 字符串字面量
(1)python中输入字符串:以单引号开始和结束
(2)字符串内使用单引号:
①双引号;②转义字符;③原始字符串;④多行字符串
2.双引号
(1)字符串以双引号开始和结束
(2)字符串以双引号开始,python知道单引号时字符串的一部分,而不再在表示字符串的结束
3.转义字符
(1)字符串中既需要使用单引号又需要使用双引号时使用转义字符
(2)常见的转义字符
4.原始字符串
(1)在字符串开始的引号之前加上r,字符串变为原始字符串
(2)原始字符串忽略所有的转义字符,打印出字符串中的所有倒斜杠
>>>print(r‘That is Carol\’s cat.’)
That is Carol\’s cat.
5.多行字符串
(1)多行字符串的起止是3个单引号或者3个双引号
(2)三重引号之间的所有引号、制表符、换行,都被认为是字符串的一部分
(3)#表示这一行是注释,但多行字符串常常用作多行注释
6.字符串的下标&切片
(1)字符计数包含空格和感叹号
(2)指定一个下标,将得到字符串在该处的字符;指定一个范围,开始下标将被包含,结束下标则不包含
#代码略
(3)通过切片并将结果子字符串保存在另一个变量,可同时拥有完整的字符串和子字符串,便于便捷、简单的访问
>>>spam = ‘hello world!’
>>>fizz = spam[0:5]
>>>fizz
‘hello’
7.字符串的in 和not in操作符
(1)表达式测试第一个字符串(精确匹配,区分大小写)是否在第二个字符串中
#代码略
6.2字符串方法
- 字符串方法:upper() 、lower() 、isupper() 、islower()方法
(1)upper() 方法:返回一个新的字符串,将原字符串的所有字母转换为大写
(2)lower() 方法:返回一个新的字符串,将原字符串的所有字母转换为小写
>>>spam = ‘Hello world’
>>>spam = spam.upper()
>>>spam
‘HELLO WORLD’
>>>spam = spam.lower()
>>>spam
‘hello world’
(3)isupper() 、islower() 方法:字符串至少有一个字母,并且所有的字母都是大写或者小写,isupper() fou、islower() 方法相应返回True;否则,返回False
- isX字符串方法
#isalpha()方法
>>>‘hello’.isalpha()
True
>>>‘hello123’.isalpha()
False
#isalnum()方法
>>>‘hello123’.isalnum()
True
‘hello’.isalnum()
True
#isdecimal()方法
>>>‘123’.isdecimal()
True
#isspace()方法
>>>‘’.isspace()
True
#istitle()方法
>>>‘This Is Title Case’.istitle()
True
>>>‘THIS IS TILTE CASE’.istitle()
False
- 字符串方法:startswitch() 和 endswitch() 方法 和 endswitch() 方法
(1)当startswitch() 和 endswitch() 方法调用的字符串以该方法传入的字符串开始或者结束,返回值为True
(2)只需要检查字符串的开始部分或者结束部分是否等于方法调用传入的字符串,而不是整个字符串
>>>‘Hello Wlord!’.startswitch(‘Hello’)
True
>>>‘Hello Wlord!’.endswitch(‘Wlord!’)
True
>>>‘abc123’.startswitch(‘abcdef’)
False
>>>‘abc123’.endswitch(‘12’)
False
- 字符串方法:join() 、split() 方法
(1)join() 方法:
– 将一个字符串列表连接成为一个单独的字符串;
– 参数是一个字符串列表,返回一个字符串,返回的字符串由传入的列表中每个字符串连接而成
>>>‘,’.join([‘cats’,‘rats’,‘bats’])
‘cats,rats,bats’
>>>‘ ’.join([‘cats’,‘rats’,‘bats’])
‘cats rats bats’
>>>‘ABC’.join([‘cats’,‘rats’,‘bats’])
‘catsABCratsABCbats’
(2)split() 方法:
– 针对一个字符串调用,返回一个字符串列表
– 可向split() 方法传入各种分割字符:空白字符(空格、制表符、换行)或按照不同的字符分割
#空白字符
>>>‘My name is Simon’.split()
[‘My’,‘name’,‘is’,‘Simon’]
#按照不同的字符分割
>>>‘MyABCnameABCisABCSimon’.split(‘ABC’)
[‘My’,‘name’,‘is’,‘Simon’]
- 对齐文本:rjust() 、ljust() 、center() 方法
(1)rjust() 、ljust() 方法:
– 返回调用他们的字符串的填充版本,通过插入空格对齐文本
– rjust() 、ljust() 方法第一个参数是一个整数的长度,用于对齐字符串;第二个参数是指定填充字符,代替空格字符
>>>‘Hello’.rjust(10)
‘ Hello’
>>>‘Hello’.ljust(10)
‘Hello ’
>>>‘Hello’.ljust(20,‘*’)
‘Hello***************’
>>>‘Hello’.rjust(20,‘-’)
‘---------------Hello’
(2)center() 方法:让文本居中
#代码略
- 删除空白字符:strip() 、rstrip() 、lstrip() 方法
– strip()方法:返回新的字符串,它的开头或者末尾都没有空白字符;参数可指定两边哪些字符应该删除
– rstrip() 、lstrip() 方法相应删除左边或者右边的空白字符串
>>> spam = ‘ Hello World ’
>>>spam.strip()
‘Hello World’
>>>spam.rtrip()
‘ Hello World’
>>>spam.ltrip()
‘Hello World ’
>>>spam = ‘SpamSpamBaconSpamEggsSpamSpam’
>>>spam.stirp(‘ampS’)
‘BaconSpamEggs’
7.拷贝粘贴字符串:pyperclip模块
(1)pyperclip模块并不是python自带的,需要安装
(2)pyperclip模块有copy()、paste()函数,向计算机的剪贴板发送文本,或者从它接收文本