Python字符串是一种不可变的字符序列,用于表示文本数据,在Python中,字符串是由一系列字符组成的,这些字符可以包括字母、数字、符号等,字符串可以用单引号(')或双引号(")括起来,也可以使用三引号(''' 或 """)创建多行字符串。
1、创建字符串
创建字符串的方法有很多,以下是一些常见的方法:
- 直接赋值:将一个字符或一串字符直接赋值给一个变量,即可创建一个字符串。
str1 = 'hello' str2 = "world"
- 使用str()
函数:可以将其他类型的数据转换为字符串。
num = 123 str3 = str(num)
- 三引号:可以使用三引号创建一个多行字符串。
str4 = ''' hello, world! this is a multiline string. '''
2、字符串的基本操作
Python提供了许多内置方法来操作字符串,以下是一些常用的方法:
- len()
:返回字符串的长度。
str5 = 'hello' print(len(str5)) # 输出:5
- str.upper()
和str.lower()
:将字符串中的所有字符转换为大写或小写。
str6 = 'Hello World' print(str6.upper()) # 输出:HELLO WORLD print(str6.lower()) # 输出:hello world
- str.capitalize()
:将字符串的第一个字符转换为大写。
str7 = 'hello world' print(str7.capitalize()) # 输出:Hello world
- str.strip()
:去除字符串两端的空白字符(空格、换行符、制表符等)。
str8 = ' hello world ' print(str8.strip()) # 输出:hello world
- str.split()
:将字符串按照指定的分隔符分割成一个列表。
str9 = 'hello,world,python' print(str9.split(',')) # 输出:['hello', 'world', 'python']
- str.join()
:将一个列表中的元素用指定的分隔符连接成一个字符串。
list1 = ['hello', 'world', 'python'] print('-'.join(list1)) # 输出:hello-world-python
3、字符串格式化
Python提供了多种方法来格式化字符串,以下是一些常用的方法:
- %
操作符:使用%
操作符将变量插入到字符串中。
name = 'Tom' age = 18 print('My name is %s and I am %d years old.' % (name, age)) # 输出:My name is Tom and I am 18 years old.
- str.format()
方法:使用str.format()
方法将变量插入到字符串中,这种方法更灵活,支持更多的格式化选项。
name = 'Tom' age = 18 print('My name is {} and I am {} years old.'.format(name, age)) # 输出:My name is Tom and I am 18 years old.
- f-string:从Python 3.6开始,可以使用f-string(格式化字符串字面值)来格式化字符串,这种方法更简洁,可以直接在字符串中插入变量。
name = 'Tom' age = 18 print(f'My name is {name} and I am {age} years old.') # 输出:My name is Tom and I am 18 years old.
4、字符串查找与替换
Python提供了多种方法来查找和替换字符串中的子串,以下是一些常用的方法:
- str.find()
:返回子串在字符串中首次出现的位置,如果没有找到则返回-1。
str10 = 'hello world' print(str10.find('world')) # 输出:6
- str.replace()
:将字符串中的某个子串替换为另一个子串,如果指定了第三个参数,则替换所有匹配的子串。