Python3 字符串
757字约3分钟
2024-08-10
字符串创建
字符串是 Python
中最常用的数据类型。我们可以使用引号 '
或 "
来创建字符串
创建字符串很简单,只要为变量分配一个值即可
# 单引号定义法
message = '今天要下雨'
# 双引号定义法
message = "今天要下雨"
# 三引号定义法
message = """
今天
要
下雨
"""
字符串拼接
直接通过 +
操作符拼接
str = "Hello" + "World" + "!";
print(str) # HelloWorld!
通过 str.join()
方法拼接
str_list = ["Hello", "world", "!"]
print("".join(str_list)) # Helloworld!
print(",".join(str_list)) # Hello,world,!
通过 str.format()
方法拼接
str = "{} {}!".format("Hello", "World")
print(str) # Hello World!
通过 %
操作符拼接
str = "%s %s!" % ("Hello", "World")
print(str) # Hello World!
通过 ()
多行拼接
str = (
"Hello"
" "
"World"
"!"
)
print(str) # Hello World!
通过 F-strings
拼接
str_one = "Hello"
str_two = "World"
print(f"{str_one} {str_two}!") # Hello World!
转义字符
需要在字符中使用特殊字符时,python
用反斜杠 \
转义字符
# 在字符串内包含双引号
message = '"今天要下雨"'
# 在字符串内包含单引号
message = "'今天要下雨'"
# 使用转义字符 \ 解除引号的效用
message = "\"今天要下雨\""
message = '\'今天要下雨\''
字符串运算符
下表中变量 a
为 Hello
,b
为 Python
操作符 | 描述 | 实例 |
---|---|---|
+ | 字符串连接 | a + b 输出结果: HelloPython |
* | 重复输出字符串 | a*2 输出结果:HelloHello |
[] | 通过索引获取字符串中字符 | a[1] 输出结果 e |
[ : ] | 截取字符串中的一部分,遵循左闭右开原则,str[0:2] 是不包含第 3 个字符的。 | a[1:4] 输出结果 ell |
in | 成员运算符 - 如果字符串中包含给定的字符返回 True | 'H' in a 输出结果 True |
not in | 成员运算符 - 如果字符串中不包含给定的字符返回 True | 'M' not in a 输出结果 True |
字符串格式化
Python
支持格式化字符串的输出。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s
的字符串中
符 号 | 描述 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%u | 格式化无符号整型 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | %f和%e的简写 |
%G | %f 和 %E 的简写 |
%p | 用十六进制数格式化变量的地址 |
对表达式进行字符串格式化
print("1 + 1 的结果是:%d" % (1 + 1))
# 1 + 1 的结果是:2
print(f"1 * 2 的结果是:{1 * 2}")
# 1 * 2 的结果是:2
print("字符串在 Python 中的类型名是:%s" % type("字符串"))
# 字符串在 Python 中的类型名是:<class 'str'>