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

标签:python,print,格式化,输出
0
投稿

猜你喜欢

  • python爬虫入门教程之点点美女图片爬虫代码分享

    2021-01-14 21:45:07
  • MySQL的指定范围随机数函数rand()的使用技巧

    2024-01-17 15:25:50
  • python函数中return后的语句一定不会执行吗?

    2022-03-25 04:06:44
  • python爬虫设置每个代理ip的简单方法

    2022-11-01 19:18:52
  • Django实现文件分享系统的完整代码

    2022-07-12 11:28:21
  • 图文详解Python中如何简单地解决Microsoft Visual C++ 14.0报错

    2021-09-09 02:16:48
  • 深入理解Tensorflow中的masking和padding

    2022-01-26 02:21:44
  • MSSQL数据库排序规则如何更改

    2023-07-01 11:09:58
  • Git的基础文件操作初始化查看添加提交示例教程

    2023-12-25 19:43:21
  • python中xlutils库用法浅析

    2023-06-05 15:22:26
  • vue多次循环操作示例

    2024-05-28 15:48:20
  • asp之自动闭合HTML/ubb标签函数+简单注释

    2008-09-29 12:21:00
  • SQLServer中数据库文件的存放方式,文件和文件组

    2012-01-05 18:56:33
  • asp如何在ADO中客户端利用好缓存技术?

    2010-06-17 12:50:00
  • XML正在接管Web服务 成为SOA的基础

    2008-09-05 17:21:00
  • ORACLE 10g 安装教程[图文]

    2023-07-15 07:07:27
  • 用Css来制作一个漂亮的多选列表框

    2008-05-29 12:45:00
  • 看看如何用Python绘制小米新版天价logo

    2023-04-09 06:01:10
  • 基于并发服务器几种实现方法(总结)

    2021-12-30 16:18:09
  • python矩阵运算,转置,逆运算,共轭矩阵实例

    2021-09-16 17:45:22
  • asp之家 网络编程 m.aspxhome.com