Python编程技巧 – format格式化文本

Python编程技巧 – format格式化文本

Python Programming Essentials - Using format() to format texts

By Jackson@ML

本文简要介绍Python语言的format()方法(也即函数)相关实例和技巧,希望对读者有所帮助。

1. format定义和方法

format()方法能够格式化指定的值,并且将它们插入到字符串的占位符中。

1) 示例代码一

了解占位符,让我们先看一个例子。代码如下:

a = 10
print("a =", a)

通常,为了表达一个公式,或者完整的语义字符串,会将双引号放置到format()方法中。

此外,还有一种情况非常常见,就是利用变量时,需要在双引号中添加占位符(一对大括号{ })。例如下面的代码示例:

a = 10
print("a = {}".format(a))

这段代码会得出与前述代码同样的结果:

a = 10

但是,第二段代码明显有着不同的风格,不但更加灵活,也使变量运用游刃有余。由此,占位符{ }在其中起着举足轻重的作用。
这都是因为:format()会返回格式化的字符串。

2) 示例代码一

让我们看另一个例子。假如需要进行数学运算,需要两个值相加,类似得到 2+3=5 的结果,而不仅仅是这两个数相加,那么就需要声明两个变量a和b来完成加法。

a = 2; b= 3
sum = a + b
print("a + b = ", sum)

运行结果如下:

a + b = 5

但若有很多数值相加或者相乘、相除等,这个打印结果就不会很好看,对变量使用也显得刻板无味。

如果我们使用format()方法来格式化文本,会得到更好的结果:

a = 2; b= 3
print("a + b = {}".format(a + b))

代码简化后,结构清晰,格式占位符{ } 对应a + b的结果。仍然输出同样结果:

a + b = 5

2. 全局函数format

在Python编程语言中,用format函数可以更好地控制输出格式。

1) 输出字段的格式

Format()可以控制输出字段格式,例如:需要输出10的 10次幂,由于数值太长,需要用逗号分隔开。
因此,可以写出如下代码:

pw = 10 ** 10
result = format(pw, ',')
print("The result is {}".format(result))

运行结果如下图所示:

在这里插入图片描述

2) 浮点数输出

当涉及到浮点数输出时,通常需要指定小数点位数,那么使用Format函数就十分方便,看以下代码:

pi = 3.14159265
result = format(pi, '6.2f')
print('Pi equals{}'.format(result))

圆周率pi变量的值有很多位小数,但是,我只想保留整数位6位和小数位2位,则可用’6.2f’来限制浮点数格式,得出结果后再打印输出。

运行结果如下图所示:
在这里插入图片描述

3) 字符串切割输出

除了浮点数外,长字符串也会面临同样问题。如果需要截断字符串,可以用format函数控制输出位数。看以下代码:

msg = 'Taylor Swift is a world-famous country music songwriter and singer.'
result = format(msg, '50.12')
print("Welcome! {}.".format(result))

执行结果如下图所示:
在这里插入图片描述
利用format函数成功截取了长度12个字符的结果Taylor Swift。

后续如果有空,我将会分享更多有趣的格式化字符串的案例。

相关阅读:

  1. Python机器学习 - 用最小二乘法实现散点图
  2. Python编程技巧 - 正则表达式
  3. Python编程技巧 - 单字符函数
  4. Python编程技巧 - 使用组合运算符
  5. Python编程技巧 - 异常处理
  6. Python编程技巧 - 迭代器(Iterator)
  7. Python编程技巧 - Lambda函数
  8. Python编程技巧 - 使用字典
  9. Python编程技巧 - 使用字符串(Strings)
  10. Python编程技巧 - 对象和类
  11. Python编程技巧 - 使用列表(List)
  12. Python编程技巧 - 转换二进制、八进制和十六进制的函数
  13. Python编程技巧 - 函数入门
  14. 安装2023最新版PyCharm来开发Python应用程序
  15. 安装最新版Visual Studio Code来开发Python应用程序
  16. 2023最新版Python 3.12.0安装使用指南

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/280379.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

修改源码,element的el-table合并,处理合并产生的hover样式问题

1、确认自己element-ui的版本号 2、此element-ui下的lib包是修改过hover样式的包,如何替换自己文件下的node_modules中的包 修改后将lib文件夹中文件替换你项目中/node_module/element-ui/Lib中的文件问题??如果替换开发环境中的node_module的包无法升级到测试环境,因为nod…

软件测试/测试开发丨Python 内置库 正则表达式re

什么是正则表达式 正则表达式就是记录文本规则的代码可以查找操作符合某些复杂规则的字符串 使用场景 处理字符串处理日志 在 python 中使用正则表达式 把正则表达式作为模式字符串正则表达式可以使用原生字符串来表示原生字符串需要在字符串前方加上 rstring # 匹配字符…

操作系统大题

目录 作业一: 前驱图 作业二:信号量 作业三:同步算法 1‘’生产者消费者问题 解1: 解2:利用AND信号量解决生产者-消费者问题 解3. 利用管程解决生产者-消费者问题 2‘’ 哲学家进餐问题(The Dinning…

数据结构之树 --- 二叉树 < 堆 >

目录 1. 树是什么&#xff1f; 1.1 树的表示 2. 二叉树 2.1 二叉树的概念 2.2 特殊的二叉树 2.3 二叉树的性质 2.4 二叉树的存储结构 2.4.1 顺序存储 2.4.2 链式存储 3. 二叉树顺序结构的实现 <堆> 3.1 二叉树的顺序结构 ​编辑 3.2 堆的概念及结构 ​编辑…

C#的checked关键字判断是否溢出

目录 一、定义 二、示例&#xff1a; 三、生成&#xff1a; 一、定义 使用checked关键字处理溢出。 在进行数学运算时&#xff0c;由于变量类型不同&#xff0c;数值的值域也有所不同。如果变量中的数值超出了变量的值域&#xff0c;则会出现溢出情况&#xff0c;出现溢出…

自然语言处理3——玩转文本分类 - Python NLP高级应用

目录 写在开头1. 文本分类的背后原理和应用场景1.1 文本分类的原理1.2 文本分类的应用场景 2. 使用机器学习模型进行文本分类&#xff08;朴素贝叶斯、支持向量机等&#xff09;2.1 朴素贝叶斯2.1.1 基本原理2.1.2 数学公式2.1.3 一般步骤2.1.4 简单python代码实现 2.2 支持向量…

【惊喜揭秘】xilinx 7系列FPGA时钟区域内部结构大揭秘,让你轻松掌握!

本文对xilinx 7系列FPGA的时钟路由资源进行讲解&#xff0c;内容是对ug472手册的解读和总结&#xff0c;需要该手册的可以直接在xilinx官网获取&#xff0c;或者在公众号回复“xilinx手册”即可获取。 1、概括 7系列器件根据芯片大小不同&#xff0c;会有8至24个时钟区域&…

在Pyqt5的QtWidgets.QGraphicsView上绑定matplotlib.figure实现绘图

matplotlib的基础类figure相当于一个View窗口类&#xff08;实际上&#xff0c;每一个figure是由更底层canvas来控制的&#xff0c;大概有点类似CAD的layers层的概念&#xff09;&#xff0c;是一个可绘制显示图形的View区域&#xff0c;也称画布&#xff08;figure&#xff09…

OSG绘制视锥体(升级版)

OSG绘制视锥体&#xff0c;这一篇增加设置相机参数接口&#xff0c;支持通过eye、center、up设置相机参数。 代码如下&#xff1a; #include "stdafx.h" #include <osgViewer/Viewer> #include <osg/ShapeDrawable> #include <osg/Geode> #includ…

阿里开源大模型 Qwen-72B 私有化部署

近期大家都知道阿里推出了自己的开源的大模型千问72B&#xff0c;据说对于中文非常友好&#xff0c;在开源模型里面&#xff0c;可谓是名列前茅。 千问拥有有强大的基础语言模型&#xff0c;已经针对多达 3 万亿个 token 的多语言数据进行了稳定的预训练&#xff0c;覆盖领域、…

最新Redis7哨兵模式(保姆级教学)

一定一定要把云服务器的防火墙打开一定要&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;否则不成功&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&…

C++继承与派生——(7)类型兼容原则

归纳编程学习的感悟&#xff0c; 记录奋斗路上的点滴&#xff0c; 希望能帮到一样刻苦的你&#xff01; 如有不足欢迎指正&#xff01; 共同学习交流&#xff01; &#x1f30e;欢迎各位→点赞 &#x1f44d; 收藏⭐ 留言​&#x1f4dd; 站在巨人的肩上&#xff0c;是为了超过…

lv13 内核模块参数和依赖

1 模块传参 1.1 模块参数设置 将指定的全局变量设置成模块参数 module_param(name,type,perm);//将指定的全局变量设置成模块参数 /* name:全局变量名 type&#xff1a;使用符号 实际类型 传参方式bool bool insmod xxx.ko 变量名0 …

CorelDRAW 2024最新版本功能介绍含注册机序列号

始于1989年并不断推陈出新,致力为设计工作者提供更高效的设计工具&#xff01;CorelDRAW滋养并见证了一代设计师的成长&#xff01;在最短的时间内交付作品&#xff0c;CorelDRAW的智能高效会让你一见钟情&#xff01;CorelDRAW 全称“CorelDRAW Graphics Suite“&#xff0c;也…

云原生|kubernetes|kubernetes资源备份和集群迁移神器velero的部署和使用

前言&#xff1a; kubernetes集群需要灾备吗&#xff1f;kubernetes需要迁移吗&#xff1f; 答案肯定是需要的 那么&#xff0c;如何做kubernetes灾备和迁移呢&#xff1f;当然了&#xff0c;有很多的方法&#xff0c;例如&#xff0c;自己编写shell脚本&#xff0c;或者使用…

【科研】[3.番外篇] 常见基础科研词汇的介绍!非常基础的一期,大家选择观看哟~

文章目录 我的总结&#xff1a; 我的总结&#xff1a; 轻松一刻 视频来源&#xff1a;https://www.bilibili.com/video/BV1ca4y1k7AK 本期是一期插播视频&#xff0c;内容非常基础&#xff0c;面向超级新手的词汇讲解&#xff1a; Baseline: 基线&#xff0c;文章中用于比较…

io流——转换流

1 为什么需要转换流 为啥 乱码的原理 怎么解决&#xff1f; 1 让两边编码一样 2 使用转换流 2 转换流

大数定律中心极限定理

1.切比雪夫不等式 切比雪夫不等式可以对随机变量偏离期望值的概率做出估计&#xff0c;这是大数定律的推理基础。以下介绍一个对切比雪夫不等式的直观证明。 1.1 示性函数 对于随机事件A&#xff0c;我们引入一个示性函数 I A { 1 , A发生 0 , A不发生 I_A\begin{cases} 1&…

西门子PLC通过PROFINET协议与多功能电表通讯

西门子PLC通过PROFINET协议与多功能电表通讯 项目要求 西门子S71200PLC需要通过PROFINET协议和多功能电表通讯&#xff0c;读取线电压、相电压、线电流、相电流、有功功率、无功功率等参数。 项目实施 采用网关NET90-PN-MBT&#xff08;以下简称“网关”&#xff09;&#…

小米汽车 SU7 技术发布会-智能驾驶猜想,真的“吊打”特斯拉?

核心主题 本人AI数据工程师&#xff0c;看完小米汽车 SU7 技术发布会&#xff0c;主谈智能驾驶猜想。 小米汽车披露&#xff1a;智能驾驶要2024年跻身第一梯队 发布会前沿致敬经典&#xff0c;挺好的毕竟礼多人不怪。 见面道辛苦&#xff0c;必定是江湖。 见面致经典&#…