1、概述
2、操作
2.1 字符串字面量
在 Python 中输入字符串值相当简单的: 它们以
单引号开始和结束
。但是如何才能在字符串内使用单引号呢?输入'I'm OK'
是不行的。因为 Python 认为这个字符串在I
之后就结束了,剩下的('m OK
) 是无效的 Python 代码,好在,有几下几种方法输入字符串。
2.2 双引号
- 字符串可以用
双引号
开始和结束,就像单引号
一样。使用双引号的一个好处:就是字符串中可以使用单引号
字符。
>>> name = "I'm YoYo"
>>> name
"I'm YoYo"
>>>
2.3 转义字符
- 斜杠
"\"
表示
>>> name = 'I\'m YoYo'
>>> name
"I'm YoYo"
>>>
2.4 原始字符串
- 在字符串开始的引号之前加上
"r"
,使它称为原始字符串
原始字符串
完全忽略所有的转义字符
>>> print("I'm \n YoYo") # \n 换行
I'm
YoYo
>>> print(r"I'm \n YoYo")
I'm \n YoYo
>>>
2.5 用三重引号的多行字符串
- 多行字符串的起止是 3 个单引号 或 3 个多引号
print('''SELECT *
FROM the_world
WHERE 1 = 1''')
SELECT *
FROM the_world
WHERE 1 = 1
2.7 字符串下标和切片
- 下标从 0 开始
- 最后一个下标为 -1
- [n:m]: n <= x <= m (含头不含尾)
>>> str = "Hello World"
>>> str[0]
'H'
>>> str[-1]
'd'
>>> str[1:3]
'el'
>>> str[0:]
'Hello World'
>>> str[:-1]
'Hello Worl'
>>>
2.8 字符串的 in 和 not in 操作符
- 返回 Boolean 值
>>> str = "Hello World"
>>> 'Hello' in str
True
>>> 'Helo' in str
False
>>> 'Hello' not in str
False
>>> 'Helo' not in str
True
>>>
3、方法
3.1 upper()、lower()
- 大小写
- 返回一个新字符串,而非改变字符串本身
>>> str = 'Hello World'
>>> str.upper()
'HELLO WORLD'
>>> str
'Hello World'
>>> str.lower()
'hello world'
>>> str
'Hello World'
>>>
3.2 isupper()、islower()
- 检查字符是否大小写
- 返回 Boolean 类型数据
>>> str = 'Hello World'
>>> str.islower()
False
>>> str
'Hello World'
>>> str = 'Hello World'
>>> str.isupper()
False
>>> str.islower()
False
>>> str.upper().isupper()
True
>>>
3.3 isX()
除了 isupper() 和 islower() 外,还有几个字符串方法。
返回值都是 Boolean 类型
- isalpha():字符串是否只包含
字母
- isalnum():字符串是否只包含
字母和数字
- isdecimal():字符串是否只包含
数字字符
- isspace():字符串是否只包含
空格、制表符和换行
- istitle():字符串是否以
大写字母
开头
3.4 startswith()、endswith()
- startswith():以什么开头
- endswith():以什么结尾
>>> str = "Hello World"
>>> str.startswith("H")
True
>>> str.endswith("d")
True
>>>
3.5 join()、spilt()
- return str = ‘模式符’.join([列表]):拼接
- return list = str.spilt():拆分
>>> ','.join(['a', 'b', 'c'])
'a,b,c'
>>> '+'.join(['a', 'b', 'c'])
'a+b+c'
>>>
>>> 'a,b,c'.split()
['a,b,c']
>>> str = '''a
... b
... c
... d'''
>>> str.split('\n')
['a', 'b', 'c', 'd']
>>>
3.6 用 rjust()、ljust() 和 center() 对齐文本
>>> str = 'Hello'
>>> str.rjust(10)
' Hello'
>>> str.ljust(10)
'Hello '
>>> str.center(10)
' Hello '
>>>
>>> str.rjust(10, '*')
'*****Hello'
>>> str.ljust(10, '*')
'Hello*****'
>>> str.center(10, '*')
'**Hello***'
>>>
3.7 用 strlp()、rstrlp() 和 lstrlp() 删除空白字符
>>> str = " Hello World "
>>> str.strip()
'Hello World'
>>> str.lstrip()
'Hello World '
>>> str.rstrip()
' Hello World'
>>> str.strip("d")
' Hello World '
>>> str.strip("d ")
'Hello Worl'
>>>
3.8 用 pypercllp 模块拷贝粘贴字符串
- copy()
- paste()
- 第三方模块,需要手动导入
>>> import pyperclip as a
>>> a.copy("Hello World")
>>> a.paste()
'Hello World'