您的位置:

Python字符串操作

Python中字符串是非常重要的数据类型,在Python中操作字符串是一项基础工作。字符串操作包括字符串创建、串联、截取、查找、替换等一系列操作。

一、字符串创建

在Python中使用引号创建字符串,可以使用单引号(')和双引号(")。

str1 = 'Hello World!'
str2 = "Python String Manipulation"

创建字符串时需要注意文本中有单引号或双引号的情况。在这种情况下,我们需要使用转义字符来标记字符串中的引号。

str3 = 'She said, "I love Python!"'
str4 = "Dad asked, \"Did you finish your homework?\""

在Python中也可以使用三重引号('''或""")创建多行字符串。

str5 = '''Python is a great programming language.
It allows you to do many things in a simple way.'''

二、字符串串联

在Python中,可以使用加号(+)将两个字符串连接起来,生成一个新的字符串。

str1 = 'Hello'
str2 = 'World'
str3 = str1 + ' ' + str2
print(str3)
# 输出:Hello World

还可以使用乘号(*)将一个字符串重复n次。

str4 = 'Python '
str5 = str4 * 3
print(str5)
# 输出:Python Python Python

三、字符串截取

在Python中,可以使用方括号来截取字符串中的部分内容。

str1 = 'Hello World'
print(str1[0])    # 输出:H
print(str1[1:5])  # 输出:ello
print(str1[-6:-1])  # 输出:World

方括号内可以是一个数字,也可以是两个数字用冒号隔开,表示截取的起始和结束位置。其中带有冒号表示左闭右开区间。

四、字符串查找

在Python中,可以使用find()函数查找字符串中是否包含指定的子字符串。

str1 = 'Hello World'
print(str1.find('Hello'))  # 输出:0
print(str1.find('Python')) # 输出:-1

如果字符串中包含指定的子字符串,则返回第一个符合条件的位置。如果字符串中不包含指定的子字符串,则返回-1。

还可以使用in关键字判断一个子字符串是否在原字符串中。

str1 = 'Hello World'
if 'Hello' in str1:
    print('字符串中包含Hello')
else:
    print('字符串中不包含Hello')

五、字符串替换

在Python中,可以使用replace()函数将字符串中的指定子字符串替换为另一个字符串。

str1 = 'Hello World'
new_str1 = str1.replace('World', 'Python')
print(new_str1)
# 输出:Hello Python

replace()函数会返回一个新的字符串,原来的字符串不会改变。

六、字符串格式化输出

在Python中,可以使用占位符来对字符串进行格式化输出。

常见的占位符:

  • %d:整数
  • %f:浮点数
  • %s:字符串
  • %x:十六进制整数
age = 18
print('我今年%d岁。' % age)

pi = 3.1415926
print('圆周率约为%f。' % pi)

name = 'Tom'
print('我叫%s。' % name)

还可以使用format()函数对字符串进行格式化输出。

age = 18
print('我今年{}岁。'.format(age))

pi = 3.1415926
print('圆周率约为{:.2f}。'.format(pi))

name = 'Tom'
print('我叫{0},我今年{1}岁。'.format(name, age))

format()函数可以在占位符中使用数字来指定使用哪个参数,也可以省略数字按顺序使用。

七、字符串常用函数

Python中还有很多常用的字符串函数,在使用时可以通过Python文档或搜索引擎来查找相关资料。

常用的字符串函数:

  • len():返回字符串长度
  • upper():将字符串中所有字母转为大写
  • lower():将字符串中所有字母转为小写
  • isdigit():判断字符串是否只包含数字字符
  • isalpha():判断字符串是否只包含字母字符
  • startswith():判断字符串是否以指定字符串开头
  • endswith():判断字符串是否以指定字符串结尾
str1 = 'Hello World'
print(len(str1))           # 输出:11
print(str1.upper())        # 输出:HELLO WORLD
print(str1.startswith('H'))  # 输出:True
print(str1.endswith('ld'))    # 输出:True

八、总结

在Python中,字符串是一种常见的数据类型,字符串操作是程序员必备的基本功之一。本文介绍了字符串的创建、串联、截取、查找、替换和格式化输出等操作,以及常用的字符串函数。