栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Python全站自动化测试-Python格式化输出

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python全站自动化测试-Python格式化输出

文章目录
  • 格式化输出
    • 1、%格式化输出
        • 1.1 按位置顺序依次输出
        • 1.2 自定义key输出
        • 1.3 自定义宽度、小数、对齐
        • 1.4 进制转换
        • 1.5 百分比显示
        • 1.6 %格式输出符
    • 2、format格式化
        • 2.1 通过位置匹配
            • 2.1.1 不指定位置,format值会依次传入缺省位置内。
            • 2.1.2 指定位置,format依据指定下标进行传入。
        • 2.2 通过名字匹配
            • 2.2.1 索引匹配参数
            • 2.2.2 字典匹配参数
            • 2.2.3 format变形用法,以f‘{}’形式表达
      • 拓展:常用转义字符

格式化输出

python格式化输出有两种方式:百分号和format
format的功能要比百分号方式强大,其中format独有的可以自定义字符填充空白、字符串居中显示、转换二进制、整数自动分割、百分比显示 等功能是百分号方式不能相比的

1、%格式化输出

是一个占位符,会被表达式(数字、字符串、加减乘除、变量、常量等各种形式)的值代替

1.1 按位置顺序依次输出
print('姓名%s, 年龄%d岁' % ('张三', 20))
# >>>姓名张三, 年龄20岁
1.2 自定义key输出
print("姓名%(name)s, 年龄%(age)d岁" %{'name':'张三', 'age':20})
# >>>姓名张三, 年龄20岁
1.3 自定义宽度、小数、对齐
print("姓名%(name)+2s, 年龄 %(age)d 岁, 身高 %(height).2f 米" % {'name':'张三','age':20,'height':1.7512})
# >>>姓名张三, 年龄 20 岁, 身高 1.75 米
#定义名字宽度为2,并右对齐.定义身高为浮点类型,保留小数点2位
1.4 进制转换
print( "原数: %d, 八进制:%o , 十六进制:%x" % (15,15,15))
# >>>原数: 15, 八进制:17 , 十六进制:f
1.5 百分比显示
print("百分比显示:%.2f%%" % 75)
# >>>百分比显示:75.00%
1.6 %格式输出符
  • %d、%i:将整数、浮点数转换为带符号的十进制表示
  • %r :使用 repr() 函数将表达式转换为字符串
  • %s :使用 str() 函数将表达式转换为字符串
  • %o :将整数转换为带符号的八进制表示
  • %x、%X:将整数转换为带符号的十六进制表示
  • %e %E:将整数、浮点数转化为科学计数法表示的浮点数
  • %f、%F:将整数、浮点数转化为十进制浮点数
  • %g :智能选择使用 %f 或 %e 格式,自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是e)
  • %G:智能选择使用 %F 或 %E 格式,自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是E)
  • %c :格式化字符及其 ASCII 码,整数:将数字转换成其unicode对应的值,10进制范围为 0 <= i <= 1114111(py27则只支持0-255);字符:将字符添加到指定位置
  • %+ 右对齐;正数前加正号,负数前加负号;
  • %- 左对齐;正数前无符号,负数前加负号;
  • %空格 右对齐;正数前加空格,负数前加负号;
  • %0 右对齐;正数前无符号,负数前加负号;用0填充空白处
  • %,当字符串中存在格式化标志时,需要用 %%表示一个百分号 注:Python中百分号格式化是不存在自动将整数转换成二进制表示的方式
2、format格式化

format函数把字符串当成一个模板,通过传入的参数进行格式化,使用大括号{}表示;格式转换在占位符后使用’:’,表达式{x:f}.format(x=99.9)

有已知变量:

name = '张三'
age = 20
sex = '男'
score =  99.9
2.1 通过位置匹配 2.1.1 不指定位置,format值会依次传入缺省位置内。
print('名字{}, 年龄{}岁, 性别{}'.format(name, age, sex))
# >>>名字张三, 年龄20岁, 性别男
2.1.2 指定位置,format依据指定下标进行传入。
print('名字{1}, 年龄{1}岁, 性别{1})'.format(name, age, sex))
# >>>名字20, 年龄20岁, 性别20
2.2 通过名字匹配 2.2.1 索引匹配参数
print('姓名{name}, 年龄{age}岁, 性别{sex}, 分数{score:.2f}' .format (name = '张三', age = 18, sex = '男', score = 99.9))
# >>>姓名张三, 年龄18岁, 性别男, 分数99.9
2.2.2 字典匹配参数
info = {'name': '张三', 'score': 99.9, 'age': 18, 'sex': '男', '百分比': 0.99}
print('姓名{name}, 年龄{age}岁, 性别{sex}, 分数{score :4.3f} , 百分比{百分比:.3%}'.format(**info))
# >>>姓名张三, 年龄18岁, 性别男, 分数99.900 , 百分比99.000%
2.2.3 format变形用法,以f‘{}’形式表达
print(f'姓名{name}, 年龄{age}岁, 性别{sex}, 分数{score:4.3f}')
# >>>姓名张三, 年龄20岁, 性别男, 分数99.900
拓展:常用转义字符
  • (在行尾) 续行符
  • 反斜杠符号
  • ’ 单引号
  • ” 双引号
  • a 响铃
  • b 退格
  • e 转义
  • 00 空
  • n 换行
  • v 纵向制表
  • t 横向制表
  • r 回车
  • f 翻页
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/914820.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号