一、将某个对象转换为字符串,有str()和repr()两种方法
区别:
repr() 转化为供解释器读取的形式
str() 转化为适于人阅读的形式
a = 123456
print('repr输出:', repr(a))
print('str输出:', str(a))
b = "Hello,\nworld"
print('repr输出:', repr(b))
print('str输出:', str(b))
运行结果:
repr输出: 123456
str输出: 123456
repr输出: 'Hello,\nworld'
str输出: Hello,
world
二、长字符串跨行
可以用下面几种方式
1、字符串用三引号'''、或三个双引号"""括起来
a = '''Hello,
world'''
print(a)
运行结果:
Hello,
world
2、行尾加上反斜杠 \,运行结果和上面区别是字符串不换行
b = "Hello,\
world"
print(b)
运行结果:
Hello,world
如果要指定以反斜杠结尾,需要再加2个反斜杠 \
b = "Hello,\\\
world"
print(b)
运行结果:
Hello,\world
三、原始字符串,前缀加上r
print('c:\now')
print(r'c:\now')
运行结果如下,原始字符串会原样输出:
c:
ow
c:\now
原始字符串不能以单个反斜杠 \结尾,如果要指定以反斜杠结尾,可以将反斜杠单独作为作为一个字符串
print(r'c:\now''\\')
运行结果:
c:\now\
四、字符串的格式化
1、用百分比符号 % 表示,在%左边指定一个字符串,在%右边指定要设置格式的值。
指定要设置其格式的值(如字符串或数字)时,可使用单个值,也可使用元组、字典。
常用的几个格式化符号:
%s 格式化字符串
%d 格式化整数
%f 格式化浮点数字,可指定小数点后的精度
print("Hello,%s" % "world")
format = "%d %f %.2f"
values = (2019, 2010, 2011)
result = format % values #这里的%两旁也可以不留空格
print(result)
运行结果:
Hello,world
2019 2010.000000 2011.002、模板字符串格式化,使用关键字参数赋值
from string import Template
tmpl = Template("Hello, $who!$year")
print(tmpl.substitute(who="world",year=2019))
运行结果:
Hello, world!2019
3、变量与替换字段同名,可使用简写,在字符串前面加上f
h = "Hello"
w = "world"
print(f"{h},{w}")
运行结果:
Hello,worlds
4、使用字符串方法format,每个替换字符用花括号{}表示
4.1精简版
(1)未命名字段,直接花括号
a = "{},{}".format("Hello","world")
print(a)
运行结果:
Hello,world
(2)索引
a = "{1},{0}, {1}".format("Hello","world")
print(a)