工作时,会希望使用统一的打印模板来处理散落在各处的打印需求,尤其是在记录日志时,如果直接使用print函数,那么代码会显得尤其繁琐。这时,比较好的做法是编写一个函数来进行封装。而Python的string.Formatter类提供了字符串格式化功能。制作字符串模板后,通过调用format(value[, format_spec])方法,就可以依照模板生成一个格式化的字符串,而这个字符串再结合print等函数,可以在很多地方得到应用。

下面看一个示例:

import datetime# 设计字符串模板
template = ('\nDate: "{}", Temperature: {:.1f}, Condition: "{}"')# 根据字符串模板生成字符串
log = template.format(datetime.datetime.now(), 23.17, 'good')# 打印格式化后的字符串
print(log)

简单的三个步骤完成任务:

  1. 根据实际需求设计一个字符串模板,也就是代码中的template,其中,{}是占位符,在占位符里可以引入各种格式化选项,如1f等等。
  2. 在系统运行过程中,将实时数据按模板指定的格式组合成新的字符串。
  3. 应用该字符串,例如使用print函数进行打印。

通过上述简单的过程,便可以优雅地完成格式化字符串的功能,并和其应用过程(例如print)进行解耦。

Python使用string.Formatter()制作打印模板相关推荐

  1. python3中format函数 出现keyerror_关于python:string.Formatter抛出KeyError”

    我想像这个问题一样打印出键+值对, key a:         1 key ab:        2 key abc:       3 ^ this colon is what I want 但是我 ...

  2. python实现打印模板映射

    Python模块学习 - jinja2 模板 要了解jinja2,那么需要先理解模板的概念.模板在Python的web开发中广泛使用,它能够有效的将业务逻辑和页面逻辑分开,使代码可读性增强.并且更加容 ...

  3. Python和ArcGIS自动化制图完全指南(二):制作mxd模板

    Python和ArcGIS自动化制图完全指南(二):制作mxd模板 前言:mxd 模板是我们出图的标准样式,我们所有的成果图都是以 mxd 模板为基础.模板文件不要求对某些特定数据进行特定的展示(设置 ...

  4. web端输出打印地图(ArcGIS api for Javascript)一、地图打印模板的制作

    1.Arcgis自带模板 ArcGIS Server10.1及以后版本安装之后自带打印模板,具体位置在 ../arcgis/rest/services/Utilities/PrintingTools/ ...

  5. [转载] python 字符串(string)

    参考链接: Python字符串String 字符串 什么是字符串? 字符串是Python中最长用的数据类型.我们可以使用引号('或")来创建字符串.事实上,在Python中,加了引号的字符都 ...

  6. 使用 Python 和 Cheetah 构建和扩充模板

    基本的模板概念 假定您正在为一家在线商店编写一个 Web 应用程序.您需要一些类来表示这家商店和购买过程的某些方面:库存物品.客户和客户所下的定单,等等.这些类的实例可能对应于数据库中的行,并且它们被 ...

  7. 【C#】最全单据打印(打印模板、条形码二维码、字体样式、项目源码)

    系列文章 [C#]编号生成器(定义单号规则.固定字符.流水号.业务单号) 本文链接:https://blog.csdn.net/youcheng_ge/article/details/12912978 ...

  8. 【机房收费系统】——傻瓜式报表设计器制作报表模板

    一.下载安装Grid++Report5.0: 1.搜索下载Grid++Report5.0并安装:(附赠哟~但是建议大家自己去下载) 云盘分享:https://yunpan.cn/c6ggtnHFDsg ...

  9. python中logger_Python实现Logger打印功能的方法详解

    前言 众所周知在python中有专门用于logger打印的套件叫logging,但是该套件logger仅接收一个字符串类型的logger打印信息.因此,我们在使用是需要先提前将要打印的信息拼接成一个字 ...

  10. C#实现二维码打印模板(PDF格式)

    做项目过程中,有一个需求,是要按照模板样式生成某个设备信息的二维码,并打印可以打印出来,于是用了以下代码实现: 1.需要按照模板打印,例如需要打印成这种布局: 可以看到,布局内不仅有文字,对象参数,二 ...

最新文章

  1. 小工匠聊架构文章一览【不间断持续更新】
  2. 【c++】23.【函数指针】定义? 为什么不直接调用函数而要使用函数指针?
  3. Tableau连接Mysql数据库,按钮为灰色
  4. python无缘无故不执行/跳过某个函数,无报错无警告
  5. easyui crud java_Easyui 创建 CRUD 应用_EasyUI 插件
  6. 初识——信息安全等级保护
  7. 梁宏达:好记性是怎样训练出来的.
  8. maxdea如何计算指数_maxdea 5.0中文简体使用手册.pdf
  9. 机器学习算法工程师面试问题
  10. 智能家居产业现状总结
  11. light动名词_英语语法大全之动名词
  12. deepin更新启动项_Deepin修复启动项菜单---grub2启动修复
  13. redis的消息发布(publish)/ 订阅(subscribe)
  14. 高盛报告:人工智能、机器学习和数据将推动未来生产力的发展
  15. NPM报错 Error: EPERM: operation not permitted, unlink......解决办法。使用 rimraf 快速删除node_modules和清除缓存
  16. 深度学习及机器学习整理--多谢各个网络大神
  17. 如何在ASP.NET网络应用实现数据可视化图表
  18. 人人都会点数据分析 | 了解数据
  19. Python实现ACO蚁群优化算法优化支持向量机回归模型(SVR算法)项目实战
  20. shell脚本中等待上一条命令执行结束在执行下一条。

热门文章

  1. sqlite3:sqlite3_column 函数
  2. 大学计算机基础实训13,东南大学《大学计算机基础》实验13EXCEL图表制作.pdf
  3. 计算机国际会议口头报告范例,国际会议报告开场白(共4篇).docx
  4. 电脑连wifi老是断断续续的怎么回事
  5. Oracle 11g客户端网络服务名配置
  6. 华为云:云江湖中的“武当派”
  7. 白嫖华为云后15分钟建站
  8. 解决局域网文件传输慢的问题
  9. 遇见未来 | 对话叶毓睿:人类文明运行在软件之上(上篇)
  10. 移植Python3到TQ2440(一)