python中print格式化输出的问题
作者:痴月熊 发布时间:2021-02-25 23:20:30
前言
福宝们,下午好啊。改版后的第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是一块写的,一起收集的资料和练习来着。总结的话,我可以把上一章总结复制过来嘛,好的吧,那今天的总结就是奥利给!又是充满激情的一天,溜了溜了~
来源:https://blog.csdn.net/qq_52071830/article/details/115621679


猜你喜欢
- 引言语音端点检测最早应用于电话传输和检测系统当中,用于通信信道的时间分配,提高传输线路的利用效率.端点检测属于语音处理系统的前端操作,在语音
- 目前很多网站都使用ajax技术动态加载数据,和常规的网站不一样,数据时动态加载的,如果我们使用常规的方法爬取网页,得到的只是一堆html代码
- 写在前面额、、、最近开始学习机器学习嘛,网上找到一本关于机器学习的书籍,名字叫做《机器学习实战》。很巧的是,这本书里的算法是用Python语
- 需求是在某一指定的时刻执行操作网上的建议多为通过调用Scheduler的add_date_job实现不过APScheduler 3.0.1与
- 链表链表(linked list)是由一组被称为结点的数据元素组成的数据结构,每个结点都包含结点本身的信息和指向下一个结点的地址。由于每个结
- python2.7,下面是跑在window上的,稍作修改就可以跑在linux上。实测win7和raspbian均可,且raspbian可以直
- 与 Python 一样,Go 语言也有空白标识符。1.什么是空白标识符空白标识符是未使用的值的占位符。它由下划线(_)表示。由于空白标识符没
- 前言上个篇章中我们主要介绍了OpenTelemetry的客户端的一些数据生成方式,但是客户端的数据最终还是要发送到服务端来进行统一的采集整合
- 现在的垃圾留言越来越智能,并且从留言内容几乎看不出来是垃圾留言,而大量的垃圾留言会导致文章可读性下降,并可能会被搜索引擎惩罚,经过一段时间的
- 二维正态分布采样后,绘制置信椭圆假设二维正态分布表示为:下图为两个二维高斯分布采样后的置信椭圆和每个二维高斯分布采样100个数据点,图片为:
- 什么是CookieCookie(也叫Web Cookie或浏览器Cookie)是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器
- 前言在awesomes上寻找移动端框架的时候意外发现了vux的页面切换效果,后面由于其他考虑没有选用vuex但是这个切换效果确实感觉很有新意
- 有别于JS跨域、IFRAME跨域等的常用处理办法,还可以利用P3P来实现跨域。P3P是什么P3P(Platform for Privacy
- 本文介绍了保护MySQL数据库中重要数据受外部攻击的六个注意事项,以减少面临的风险。与自动的数据库备份不同,对系统管理员来说,保护数据免受未
- 详解Python 模拟实现生产者消费者模式的实例散仙使用python3.4模拟实现的一个生产者与消费者的例子,用到的知识有线程,队列,循环等
- 利用channel进行模拟令牌桶对访问进行限流func FW(max int,duration time.Duration){//定义一个c
- 本文实例为大家分享了Django实现文件上传下载的具体代码,供大家参考,具体内容如下一、django实现文件下载(1)、后台接口如果从服务器
- 如题:在python的函数调用中需要记录时间,下面是记录毫秒时间的方法。import datetimeimport timet1 = dat
- 爬取网址:http://www.ultramanclub.com/allultraman/使用工具:pycharm,requests进入网页
- mysql的字符集设置有多个层级,在mysql中存储中文,如果不能正确设置字符集,很容易出现数据乱码。今天就有一个用户反馈他数据库中的数据下