format函数

  • 基本操作
1
2
3
str1 = '我的爱好是{}'
result = str1.format('学习')
print(result)
  • 提升操作,多个占位符,多个参数
1
2
3
str1 = '我的好朋友是:{},{},{}'
result = str1.format('张三','李四','王五')
print(result)
  • 传入多个数据,占位符中使用参数编号
1
2
3
4
str1 = '小明的身高是:{0},小红的身高是{2},小刚的身高是{1}'
# 0 1 2
result = str1.format(170,180,160)
print(result)
  • 传入多个数据,使用关键字参数传递
1
2
3
str1 = '小明的身高是:{xm},小红的身高是{xh},小刚的身高是{xg}'
result = str1.format(xg = 183,xh = 172,xm = 175)
print(result)
  • 参数是一个容器的方式,在占位符中进行拆分
1
2
3
4
5
6
7
8
9
str1 = '小明的身高是:{},小红的身高是{},小刚的身高是{}'
heights = [175,165,185]
result = str1.format(heights[0],heights[1],heights[2])
print(result)

str1 = '小明的身高是:{0[0]},小红的身高是{0[1]},小刚的身高是{0[2]}'
heights = [175,165,185]
result = str1.format(heights)
print(result)

限定符号

使得格式化具有更多功能的符号.

  • 对齐限定符号
1
2
3
4
5
6
7
<左对齐  ^  居中对齐  >右对齐

#str1 = '我的女朋友是{0:#<10}'
#str1 = '我的女朋友是{0:#^10}'
str1 = '我的女朋友是{0:#>10}'
result = str1.format('小红')
print(result)
  • 进制转换限定符号
1
2
3
4
5
6
#str1 = '我的体重是{0:d}公斤'#10进制
#str1 = '我的体重是{0:o}公斤'#8进制
#str1 = '我的体重是{0:b}公斤'#2进制
str1 = '我的体重是{0:x}公斤'#16进制
result = str1.format(90)
print(result)
  • 精度限定符号
1
2
3
str1 = 'pi的值是{0:.3f}'
result = str1.format(3.141592653)
print(result)
  • 金融数字限制符号
1
2
3
str1 = '我的头发有{0:,}根'
result = str1.format(1235245745754)
print(result)

bytes类型

bytes类型不是6大类数据类型:与字符串类型相似的一种数据类型,与字符相关!

计算机存储或者使用字符串的过程
1.字符串计算机不会识别(字符串类型) ->2.将字符串转换位计算机能够识别的数据(bytes类型)->3.使用

1
2
3
4
5
6
7
8
9
#bytes类型和string类型的相互转换
#字符串.encode() 将字符串编码成bytes类型
#bytes.decode() 将bytes类型解码成字符串类型

gohome = '高高兴兴回家去'#string
gohomeby = gohome.encode()#bytes 编码
print(gohomeby,type(gohomeby))
result = gohomeby.decode()#string 解码
print(result,type(result))