Python字符串三种格式化输出


Posted in Python onSeptember 17, 2020

字符串格式化输出是python非常重要的基础语法,今天就把三种格式化输出做一个简单的总结,希望对大家有帮助。

格式化输出:内容按照一定格式要求进行输出。

1.使用占位符%输出

python2.6版本之前,使用%格式化字符串沿用的是C语言的输出格式。

使用说明:

print("格式化字符串" % 变量)

#变量超过2个使用元组格式:

print("格式化字符串" % (变量1,变量2))

使用%占位符表示字符串中变量位置。

传入的值要与%占位符的变量一一对应。

其中,%s表示字符串,%d表示整数,%f表示小数(默认保留小数点后6位,%.2f保留两位小数),存在格式化标志时,需要用 %%表示一个百分号。

name='xiaoming'
age=12
print("My name is %s,My age is %d" %(name,age))
#输出:My name is xiaoming,My age is 12

2.format格式化

format是python2.6新增的一个格式化字符串的方法,相比%格式化方法有如下优点:

  • 单个参数可以多次输出,参数顺序可以不相同
  • 填充方式十分灵活,对齐方式十分强大
  • 官方推荐用的方式

使用说明:

print("...{索引}, ... , {索引}, ...".format(值1, 值2))
#索引{}为空,默认按照顺序取值
print("...{key1}, ... , {key2}, ...".format(key1=value,key2=value))
name='xiaoming'
age=12
print('My name is {}, My age is {}'.format(name,age))
print('My name is {0}, My age is {1}'.format(name,age))
print('My name is {name}, My age is {age}'.format(name='xiaoming',age=12))
#输出:My name is xiaoming,My age is 12

format进阶

1.填充对齐

# 先取到值,然后在冒号后设定填充格式:{索引:[填充字符][对齐方式][宽度]}
# *<20:左对齐,总共20个字符,不够的用*号填充
print('{0:*<20}'.format('hellopython'))
# *>20:右对齐,总共20个字符,不够的用*号填充
print('{0:*>20}'.format('hellopython'))
# *^20:居中显示,总共20个字符,不够的用*号填充
print('{0:*^20}'.format('hellopython'))
输出:
hellopython*********
*********hellopython
****hellopython*****

2.位数与进制转换

#保留2位有效数字
print("{:.2f}".format(3.1415926))
#转成二进制
print('{0:b}'.format(16))
#转成八进制
print('{0:o}'.format(10))
#转成十六进制
print('{0:x}'.format(15)) 
输出
3.14
10000
12
f

f-string格式化

在Python 3.6中引入 了f-strings,不仅比str.format使用简单,而且效率也更高。

使用说明

f-string是字符串前面加上 "f",{}直接使用变量、表达式等。

name='xiaoming'
age=12
#{}中直接使用变量
print(f'My name is {name},My age is {age}')
#{}中运行表达式
print(f'{1+2+3}')
#调用Python内置函数
print(f'{name.upper()}')
#用lambda匿名函数:可以做复杂的数值计算
fun = lambda x : x+1
print(f'{fun(age)}')
#输出
My name is xiaoming,My age is 12
6
XIAOMING
13

总结

到此这篇关于Python字符串三种格式化输出的文章就介绍到这了,更多相关Python字符串格式化输出内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
初步理解Python进程的信号通讯
Apr 09 Python
利用python将json数据转换为csv格式的方法
Mar 22 Python
对tensorflow 的模型保存和调用实例讲解
Jul 28 Python
Python连接Mssql基础教程之Python库pymssql
Sep 16 Python
django 外键model的互相读取方法
Dec 15 Python
python图像和办公文档处理总结
May 28 Python
分享8个非常流行的 Python 可视化工具包
Jun 05 Python
python传到前端的数据,双引号被转义的问题
Apr 03 Python
结束运行python的方法
Jun 16 Python
Python文件夹批处理操作代码实例
Jul 21 Python
python中numpy.empty()函数实例讲解
Feb 05 Python
深入探讨opencv图像矫正算法实战
May 21 Python
python判断变量是否为列表的方法
Sep 17 #Python
Django实现文章详情页面跳转代码实例
Sep 16 #Python
如何基于Django实现上下文章跳转
Sep 16 #Python
Python通过类的组合模拟街道红绿灯
Sep 16 #Python
python如何绘制疫情图
Sep 16 #Python
如何用Python绘制3D柱形图
Sep 16 #Python
Python Merge函数原理及用法解析
Sep 16 #Python
You might like
使用PHP函数scandir排除特定目录
2014/06/12 PHP
php正则preg_replace_callback函数用法实例
2015/06/01 PHP
Yii中CArrayDataProvider和CActiveDataProvider区别实例分析
2016/03/02 PHP
PHP设计模式之工厂模式(Factory Pattern)的讲解
2019/03/21 PHP
表单JS弹出填写提示效果代码
2011/04/16 Javascript
JQUERY1.6 使用方法四 检测浏览器
2011/11/23 Javascript
基于jQuery的烟花效果(运动相关)点击屏幕出烟花
2012/06/14 Javascript
EXTjs4.0的store的findRecord的BUG演示代码
2013/06/08 Javascript
利用js 进行输入框自动匹配字符的小例子
2013/06/29 Javascript
js获取当月最后一天实例代码
2013/11/19 Javascript
javascript中实现兼容JAVA的hashCode算法代码分享
2020/08/11 Javascript
移动端js触摸事件详解
2016/09/18 Javascript
jQuery实现导航滚动到指定内容效果完整实例【附demo源码下载】
2016/09/20 Javascript
js 输入框 正则表达式(菜鸟必看教程)
2017/02/19 Javascript
JS+html5 canvas实现的简单绘制折线图效果示例
2017/03/13 Javascript
react redux入门示例
2018/04/19 Javascript
详解React服务端渲染从入门到精通
2019/03/28 Javascript
js设计模式之代理模式及订阅发布模式实例详解
2019/08/15 Javascript
JavaScript中this的学习笔记及用法整理
2020/02/17 Javascript
[42:24]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第三场 11.27
2020/12/01 DOTA
python网络编程学习笔记(四):域名系统
2014/06/09 Python
[原创]教女朋友学Python(一)运行环境搭建
2017/11/29 Python
Django 开发环境配置过程详解
2019/07/18 Python
python数据类型之间怎么转换技巧分享
2019/08/20 Python
浅谈matplotlib.pyplot与axes的关系
2020/03/06 Python
Python操作Word批量生成合同的实现示例
2020/08/28 Python
python查询MySQL将数据写入Excel
2020/10/29 Python
世界上最好的帽子:Tilley
2016/11/27 全球购物
墨西哥巴士车票在线购买:ClickBus
2018/03/27 全球购物
小区停车场管理制度
2014/01/27 职场文书
重阳节活动总结
2014/08/27 职场文书
出租房屋协议书
2014/09/14 职场文书
2014年文秘工作总结
2014/11/25 职场文书
2015年公司新年寄语
2014/12/08 职场文书
快速学习Oracle触发器和游标
2021/06/30 Oracle
VS2019连接MySQL数据库的过程及常见问题总结
2021/11/27 MySQL