python 工具

Python 字符串类型(String)

语法:变量名 = 字符串常量/字符串类型变量

1. 单行字符串

# 单引号/双引号开头,单引号/双引号结尾
str1 = 'hello, world'
str2 = "hello, world"

# 单引号字符串中可以包含双引号,双引号字符串中可以包含单引号
str3 = 'hello"world'
str4 = "hello'world"

# Python会自动在任意的表达式中合并相邻的字符串常量(把这种形式放到圆括号中,就可以允许它跨越多行)
title = "Meaning " "of " "Life" # title ="Meaning of Life"
number = ("123\n" "456\n" "789") # 可以通过这种形式定义一个多行字符串

2. 多行字符串

# 以三重引号(单引号/双引号)开头和结尾

# 单引号
str5 = '''1.hello
2.world'''

# 双引号
str5 = """1.hello
2.world"""

3. 转义字符

# \\ 反斜杠(\)
# \' 单引号(')
# \" 双引号(")
# \n 换行符(Newline)
# \t 水平制表符(Tab)
# \r 回车符(Carriage Return)
# \b 退格符(Backspace)
# \f 换页符(Formfeed)
# \v 垂直制表符(Vertical Tab)
# \a 响铃符(Bell/Alert)
# \0 空字符(Null Character)
# \yyy 八进制数,y 代表 0~7 的字符,例如:\012 代表换行。
# \xyy 十六进制数,以 \x 开头,y 代表的字符,例如:\x0a 代表换行。
print('\x68\x65\x6C\x6C\x6F\x2C\x77\x6F\x72\x6C\x64\x21') #输入hello,world!
使用raw字符串抑制转义
# 使用raw字符串抑制转义,在字符串前加上r
str6 = r'hello,world\n'

4. 字符串格式化

[1] % (继承于c语言)

  • 语法: '转换目标1 转换目标2' % (对象1, 对象2)
  • 转换目标: %字符码
  • 转换目标和对象的数量必须一致
name = '小明'
age = 10
str = '我的名字叫做%s,年龄为%d' % (name, age)
序号 字符码 含义
1 s 字符串(或任何对象)
2 r s,但使用repr,而不是str
3 c 字符及其ASCII码
4 b 二进制 (整数)
5 d 十进制 (整数)
6 o 八进位整数
7 x 十六进制整数
8 x X,但打印大写
9 e 浮点指数
10 E e,但打印大写
11 f 浮点十进制
12 F f,但打印大写
13 g 浮点e或f
14 G 浮点E或f
15 % 显示百分比

[2] format (python2.6新增)

  • 语法: '{} {}'.format(对象1, 对象2)
  • 使用{}替换转换目标
  • 对象的数量必须大于等于大括号的数量
str = '我的名字是{},年龄:{}'.format('小刚', 13)	# 我的名字是小刚,年龄为13

[3] f-string (python3.6 新增)

  • f-string 以 f 或 F 开头,字符串内容用引号包围,表达式放在大括号 {}
x = 10
y = 20
print(f"{x} + {y} = {x + y}") # 输出: 10 + 20 = 30