一、什么使字符串
- 字符串非常简单。它们其实就是一段文本,其中的字符是用Unicode码点表示的。
- 字符串就是一系列字符。在Python中,用引号括起的都是字符串,其中的引号可以是单引号, 也可以是双引号。
例如:
'这是字符串!'
"这是字符串!"
"""这是字符串!"""
二、字符串的常用方法
1、常用判断方法——判断字符串大小写
- 判断大小写,返回值为布尔值:正确返回True、不正确False
str.isupper()
name = "stars"
print(name.isupper()) # 判断字符串字母全部是大写
>>>False
str.istitle()
name = "stars"
print(name.istitle()) # 判断字符串首字母是大写
>>>False
str.islower()
name = "stars"
print(name.islower()) # 判断字符串字母全部是小写
>>>True
2、常用判断方法——判断字符类型
- 判断字符类型同样返回布尔值:正确返回True、不正确False
str.isalnum()
name = "stars"
print(name.isalnum()) # 判断字符都是数字或者字母
>>>True
str.isalpha()
name = "stars"
print(name.isalpha()) # 判断字符都是字母
>>>True
str.isdigit()
name = "stars"
print(name.isdigit()) # 判断字符都是数字
>>>False
str.isspace()
name = "stars"
print(name.isspace()) # 判断字符都是空白字符
>>>False
3、常用转换方法——转换字符串大小写(返回副本)
- 什么是副本?——简单理解,就是转换后的字符串,返回的字符串不是本身,而是另一个值。
- 原因:python中字符串是不能修改的!
str.title()
name = "stars"
print(name.title()) # 使字符串的首字母大写
>>>Stars
str.upper()
name = "stars"
print(name.upper()) # 使字符串的字母全部大写
>>>STARS
str.lower()
name = "STARS"
print(name.lower()) # 使字符串的字母全部小写
>>>stars
4、常用字符串转义字符
print('\t' "python") # "\t"等于按Tab键,缩进
>>> python
print("stars" '\n' "moon") # "\n"表示换行
>>>stars
moon
print('你好吗?' '\r' '朋友') # "\r"是将光标移到一行的开始,所以"\r"之后的内容会覆盖掉上次打印的内容
>>>朋友
print(r'i love you \ni love you too') # 字符串前加字母"r"表示后面字符串中不进行转义
>>>i love you \ni love you too
print('i love you \\i love you too') # 可以看到打印结果中间隔了一个反斜杠
>>>i love you \i love you too
print('stars\bcool') # "\b"退格符,将光标前移,覆盖前面一个内容
>>>starcool
5、其他常用字符串操作方法
- 去除字符串中的空白
str.strip()
name = " stars "
print(name.strip()) # 去除name中两边的空白(返回副本)
>>>stars
str.lstrip()
name = " stars "
print(name.lstrip()) # 去除name中左边的空白(返回副本)
>>>stars
str.rstrip()
name = " stars "
print(name.rstrip()) # 去除name中右边的空白(返回副本)
>>> stars
- 字符串居中
str.center()
name = "stars"
print(name.center(20, "*")) # 提供两个参数设置居中距离和填充字符
- 查找字符串
str.find()
name = "stars"
print(name.find("s"))
>>>0
print(name.find("z"))
>>>-1 # 在字符串中找子串,有返回索引,没有返回 "-1"
str.index()
name = "stars"
print(name.index("s"))
>>>0
# 类似于 find(),但在找不到子类时会引发 ValueError。
- 替换字符串
str.replace()
name = "stars"
print(name.replace("stars", "moon"))
>>>moon
# 将指定子串都替换为另一个字符串,并返回替换后的结果。
- 字符串拆分和拼接
str.split()
name = "stars is boss"
print(name.split())
>>>['stars', 'is', 'boss']
# split用于将字符串拆分为序列(返回列表)
str.join()
name = "+"
print(name.join("1234"))
>>>1+2+3+4
# join方法用与拼接字符串
- 格式化字符串
print('{} {}'.format('hello','world'))
>>>hello world
更多方法请参考下方官方文档
官方文献:https://docs.python.org/zh-cn/3.9/tutorial/introduction.html#strings
要理解新的编程概念,最佳的方式是尝试在程序中使用它们。如果你在做本篇的练习时陷入了困境,请尝试做点其他的事情。如果这样做后依然无法摆脱困境,请复习相关内容。