六、python中的格式化输出及常用的转义字符

python中的格式化输出总的来讲有两种方式,一种是类似于C语言,用“%”后接相应的字母表示要输出的语句,再在后面添加具体的值;二是通过format函数实现。

通过“%”实现格式化输出

在这种方式下,我们的一般格式为[name][flag][width][.][precision]type,这个格式中各个字段的具体情况如下:

  1. name:可以为空

  2. flag:为标记限定位,其具体的取值和含义为:

    1. +— 右对齐
    2. -— 左对齐
    3. 0— 如果宽度不足,使用0来补充
    4. #— 将数字的进制显示出来
  3. width:指定字符串的宽度

  4. .:小数点

  5. type:类型,其具体的取值和含义如下:

    1. c— 字符,根据ASCall码转换
    2. d— 十进制整数
    3. o— 八进制
    4. x— 十六进制
    5. f— 浮点型
    6. e— 科学技术法
    7. g— 根据数字自动选择
    8. s— 字符串

备注: 在这种格式中,标记限定位一般和%s联合使用。
例如:

name = input("请输入你的姓名:")
age = int(input("请输入你的年龄:"))
job = input("请输入你的工作:")
hobby = input("请输入你的爱好:")
height = float(input("请输入身高:"))
msg = '''-------------- info of %s -----------------
Name     : %s 
Age      : %d
Height   : %f(m)
Job      : %s 
Hobby    : %s ''' %(name, name, age,height, job, hobby)
print(msg)

从中,我们可以看到,可以通过百分号后接各种字母来表示不同类型的数据,其中,“%d”表示这里要传入的是一个整数,“%s”表示字符串,“%f”表示实数,然后在字符串结尾后加“%()”,括号里面填入相应位置的变量。

通过format函数实现

1、方案一
用大括号在字符里面占位,然后在后面用format函数填入相应的值即可;基本语法用一个实例进行说明:

msg = '我叫{},今年{},再说一下我叫{}'.format('刘子怡',36,'girl','太白')

2、方案二
用大括号在字符里面占位,不过在括号里面填入相应的序号,当再次需要同样的字符时,在填入该字符第一次出现时的序号即可。还是上述实例:

msg = '我叫{0},今年{1},再说一下我叫{0}'.format('刘子怡',36)

3、方案三
用大括号在字符里面占位,和二不相同的是这里需要填入变量名,然后在format函数中给相应的变量赋值即可;还是以2中实例来看:

msg = '我叫{name},今年{age},再说一下我叫{name}'.format(name='刘子怡',age=18)
常用的转义字符

常用的转义字符及其含义如下:

  1. \t ——制表符,类似于tab
  2. \b——退格符,作用域backspace按键相同
  3. \r——将光标移动到行首,也有说法解释为换行
  4. \n——换行,作用域回车相同

附: 在进行字符串格式化输出时,如果左对齐和右对齐都不能使字符串的内容对齐,可以使用制表符(\t),并且前面必须用足够的空格与前面内容相隔

你可能感兴趣的:(python编程基础,python中格式化输出)