python中print格式化输出的问题


Posted in Python onApril 16, 2021

前言

福宝们,下午好啊。改版后的第4.5章阅读量有点少呀,不知道是不是拖更了一天的缘故。呜呜呜,以后一定要做个不拖更的好熊,所以今天继续爆肝第五章:print格式化输出。在写第三章的时候用到过其中一种: " f … {} " 的组合。之前的评论下面有小伙伴疑惑,那今天就来详细讲解一下这个东西,另外还有其他格式化的方式。那我们开始今天的学习吧。

提示:以下是本篇文章正文内容,下面案例可供参考

一、f-String格式化

所谓格式化输出,就是创建一个可以嵌入变量内容的字符串。如果不进行格式化,变量名就会被直接打印出来,发挥不了他的作用。所以我们现在开始讲之前用到的:f-String格式化。这个上面也说过,格式: f" … {} … ",其中你要在字符串里调用变量,需要把变量写在 " { } " 中,字符串的开头还要写个 " f " 。f 就代表着format,也就是格式化的意思。这个组合是固定的,缺一不可,你写出了 " f ",就相当于告诉了python,这是一个已经格式化的字符串。python就会去看那些变量,当然你要是前面写了f,中间没有写中括号,也是可以正常执行的。只不过没有去调用变量。

name = "痴月熊"
name2 = "憨憨熊"
age = 18
age2 = 19
print(f"{name}:下午好各位,我是{name},{age}的文艺小青年。这是我铁子{name2},他{age2},请多关照")
print(f"{name2}:嗷嗷嗷~")

RUN:

痴月熊:下午好各位,我是痴月熊,18的文艺小青年。这是我铁子憨憨熊,他19,请多关照
憨憨熊:嗷嗷嗷~

二、占位符

首先还是看个表,常见的占位符号

 

符号 意义
%d 整数
%f 浮点数
%s 字符串

占位符,顾名思义。就是在一段字符串中占一个位置,然后引用变量插进来。具体格式是 print("…%d…" % (变量)),下面还是直接通过练习来看一下效果。

name = "憨憨熊"
once = 1
num = 4.2
print("%s 最喜欢的事情就是打游戏,他最擅长的还是动作冒险类" % name)
print("魂斗罗他甚至只需要 %d 条命就可以通关" % once)
print("即使他两个眼睛都已经%f度了,还是不能放下游戏机" %num)

RUN:

憨憨熊 最喜欢的事情就是打游戏,他最擅长的还是动作冒险类
魂斗罗他甚至只需要 1 条命就可以通关
即使他两个眼睛都已经4.200000度了,还是不能放下游戏机

效果就是这样啦,当然也可以放在一起试一下。

name = "憨憨熊"
once = 1
num = 4.2
print("""
%s 最喜欢的事情就是打游戏,他最擅长的还是动作冒险类.
魂斗罗他甚至只需要 %d 条命就可以通关.
即使他两个眼睛都已经%f度了,还是不能放下游戏机
""" % (name,once,num))

RUN:

憨憨熊 最喜欢的事情就是打游戏,他最擅长的还是动作冒险类.
魂斗罗他甚至只需要 1 条命就可以通关.
即使他两个眼睛都已经4.200000度了,还是不能放下游戏机

使用占位符的时候,一定要想好变量的数据类型,如果你写了个%d,结果你放了个字符串进去就会报错。当然数字也可以作为字符串,你写成%s也可以执行。不过为了方便浏览,最好根据数据类型填入相应的占位符。另外如果你占位符是%d,你放了个浮点型进去,他就会给你强制转换为整数,反之也是一样的。如下:

num1 = 4.2
num2 = 4
print("%d" % num1)
print("%f" % num2)

RUN:

4
4.000000

三、format格式化

第三种就是利用format函数,在python里也叫方法。基本语法是在字符串中写入 " {} ",最后再字符串的末尾调用.format方法,将变量插入到{}。看起来是不是像f-string格式化,format格式化是在python2.6更新的,而f-string是在python3.6。当然个人认为这个用起来不太舒服,还是上面两个好用点。有很多时候,想要插入变量,都要在后面写一大堆参数。好麻烦! 以下就是效果啦。

name1 = "痴月熊"
name2 = "憨憨熊"
time = 12
num = 2
print("此时半夜{}点:\"呜呜呜, {}.\"".format(time,name1))
print("{name2},大晚上{time}点的,你在瞎叫啥".format(time=time, name2=name2))
print("我居然花了{}条命才过这个关卡".format(num))
print(f"{name1}心里独白:这玩意能一条命就过去的才不是正常熊吧。".format(name1=name1))
print("<玛丽奥制造>....")

RUN:

此时半夜12点:"呜呜呜, 痴月熊."
憨憨熊,大晚上12点的,你在瞎叫啥
我居然花了2条命才过这个关卡
痴月熊心里独白:这玩意能一条命就过去的才不是正常熊吧。
<玛丽奥制造>....

总结

我个人很喜欢用f-string格式化,不过还是得带大家了解一下。今天这章是和4.5是一块写的,一起收集的资料和练习来着。总结的话,我可以把上一章总结复制过来嘛,好的吧,那今天的总结就是奥利给!又是充满激情的一天,溜了溜了~

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

Python 相关文章推荐
python创建只读属性对象的方法(ReadOnlyObject)
Feb 10 Python
浅谈python对象数据的读写权限
Sep 12 Python
利用pyinstaller或virtualenv将python程序打包详解
Mar 22 Python
Windows上使用Python增加或删除权限的方法
Apr 24 Python
使用Python读取二进制文件的实例讲解
Jul 09 Python
利用python在excel里面直接使用sql函数的方法
Feb 08 Python
Python PIL读取的图像发生自动旋转的实现方法
Jul 05 Python
Python函数装饰器原理与用法详解
Aug 16 Python
python模拟实现分发扑克牌
Apr 22 Python
Python faker生成器生成虚拟数据代码实例
Jul 20 Python
教你如何用python操作摄像头以及对视频流的处理
Oct 12 Python
pytorch分类模型绘制混淆矩阵以及可视化详解
Apr 07 Python
CocosCreator ScrollView优化系列之分帧加载
深度学习tensorflow基础mnist
Python 多线程之threading 模块的使用
Apr 14 #Python
教你如何用python开发一款数字推盘小游戏
深度学习详解之初试机器学习
正确的理解和使用Django信号(Signals)
Apr 14 #Python
编写python程序的90条建议
Apr 14 #Python
You might like
网站被黑的假象--ARP欺骗之页面中加入一段js
2007/05/16 Javascript
fix-ie5.js扩展在IE5下不能使用的几个方法
2007/08/20 Javascript
JS启动应用程序的一个简单例子
2008/05/11 Javascript
JavaScript 高效运行代码分析
2010/03/18 Javascript
jQuery ajax BUG:object doesn't support this property or method
2010/07/06 Javascript
js里怎么取select标签里的值并修改
2012/12/10 Javascript
jquery实现图片随机排列的方法
2015/05/04 Javascript
JS实现异步上传压缩图片
2017/04/22 Javascript
微信小程序tabbar不显示解决办法
2017/06/08 Javascript
Javascript刷新页面的实例
2017/09/23 Javascript
vue路由嵌套的SPA实现步骤
2017/11/06 Javascript
Vue-cli Eslint在vscode里代码自动格式化的方法
2018/02/23 Javascript
基于node搭建服务器,写接口,调接口,跨域的实例
2018/05/13 Javascript
vue-cli构建vue项目的步骤详解
2019/01/27 Javascript
微信小程序自定义弹窗滚动与页面滚动冲突的解决方法
2019/07/16 Javascript
Vue 实现简易多行滚动&quot;弹幕&quot;效果
2020/01/02 Javascript
js验证密码强度解析
2020/03/18 Javascript
JQuery表单元素取值赋值方法总结
2020/05/12 jQuery
javascript实现点击按钮切换轮播图功能
2020/09/23 Javascript
[06:24]DOTA2亚洲邀请赛小组赛第三日 TOP10精彩集锦
2015/02/01 DOTA
异步任务队列Celery在Django中的使用方法
2018/06/07 Python
Linux下python制作名片示例
2018/07/20 Python
Python使用try except处理程序异常的三种常用方法分析
2018/09/05 Python
Python-openCV读RGB通道图实例
2020/01/17 Python
django自定义非主键自增字段类型详解(auto increment field)
2020/03/30 Python
纯HTML5+CSS3制作图片旋转
2016/01/12 HTML / CSS
瑞士隐形眼镜和护理产品网上商店:Linsenklick
2019/10/21 全球购物
一些关于MySql加速和优化的面试题
2014/01/30 面试题
2014年教师节演讲稿范文
2014/09/10 职场文书
教师三严三实心得体会
2014/10/11 职场文书
综合素质评价自我评价
2015/03/06 职场文书
初中班主任培训心得体会
2016/01/07 职场文书
初中数学课堂教学反思
2016/02/17 职场文书
高中数学课堂教学反思
2016/02/18 职场文书
使用numpy实现矩阵的翻转(flip)与旋转
2021/06/03 Python
与Windows10相比Windows11有哪些改进?值不值得升级?
2021/11/21 数码科技