什么是格式化
定义:一个固定的字符串中有部分元素是根据变量的值而改变的字符串
今天是xx,星期xx,大家好
date = '2022.1211'
day = '--'
根据类型定义的格式化
'my name is %s, my age is %s' % ('dewei', 33)
#coding:utf-8 info = 'my name id %s, my age is %s' % ('xiaomu', 10) print(info) info = 'my name id %s, my age is %s' name_01 = 'hello' age_01 = 10 print(info % (name_01, age_01)) message = '你好,今天是%s, 你的手机号码: %s 已经欠费了,请尽快充值' #两个元素及以上需要用元祖()包裹 print(message % ('星期一', 1123333333)) books = ['python', 'css', 'html'] info_2 = 'my name id %s, my age is %s, my book is %s' print(info_2 % (name_01, age_01, books)) dict_01 = {'a':'a', 'b': 'b'} print('dict is %s' % dict_01)
字符串格式化函数 format
info_3 = 'my name is {}, my age is {}' print(info_3.format(name_01,age_01)) info_4 = 'my name is {0}, my age is {1}, my book is {2}' print(info_3.format(name_01,age_01, books))
python3.6加入的新格式化方案 f-strings
#需要提前定义好变量名 info_5 = f'my name is {name_01}, my age is {name+02}' print(info_5)
字符串格式化的常用格式符
格式化符号 --- 用于对应各种数据类型的格式化符号
%s 格式化字符串,通用类型
%d 格式化整型
%f 格式化浮点型
%u 格式化无符号整型(正整型)
%c 格式化字符 (只能有一个字符)
#coding:utf-8 print('%c' % 1020) #最大是7位数 print('%c' % 'a')
print('%u' % -1)
print('%f' % 1.2) #1.200000
print('%f' % 3.14) #3.140000
print('%f' % 12) #12.000000
print('%d' % 10)
print('%d' % -10)
print('%d' % 1.2) #1
#format支持 %d %f
print('{:d}'.format(1))
print('{:f}'.format(1.2))
不常用的格式符
%o 格式化无符号八进制数
%x 格式化无符号16进制数
%e 科学计数法格式化浮点数
number = int('123ab', 16) print(number) #74667 print('%x' % number)
print('%e' % 1.2) #1.200000e+00
Believe in yourself