Python编程之字符串模板(Template)用法实例分析

yipeiwu_com6年前Python基础

本文实例讲述了Python编程之字符串模板(Template)用法。分享给大家供大家参考,具体如下:

#coding=utf8
'''''
字符串格式化操作符,需要程序员明确转换类型参数,
比如到底是转成字符串、整数还是其他什么类型。
新式的字符串模板的优势是不用去记住所有相关细节,
而是像shell风格的脚本语言里面那样使用美元符号($).
由于新式的字符串引进Template对象,
Template对象有两个方法:substitute()、safe_substitute()。
substitute()更为严谨,在key缺少的情况下会报一个KeyError的异常。
safe_substitute()在缺少key的情况下,直接原封不动的把字符串显示出来。
'''
#导入Template对象
from string import Template
def stringTemplate():
  #创建一个Template实例tmp
  tmp=Template("I have ${yuan} yuan,I can buy ${how} hotdog")
  yuanList=[1,5,8,10,12,13]
  for yu in yuanList:
    #substitute()按照Template中string输出
    #并给相应key赋值
    Substitute= tmp.substitute(yuan=yu,how=yu)
    print Substitute
  print
  for yu in yuanList:
    #使用substitute函数缺少key值包KeyError
    try:
      lackHow= tmp.substitute(yuan=yu)
      print lackHow
      print
    except KeyError,e:
      print "substitute lack key ",e
  print
  for yu in yuanList:
    #safe_substitute()在缺少key的情况下
    #直接原封不动的把字符串显示出来。
    safe_substitute= tmp.safe_substitute(yuan=yu)
    print safe_substitute
  print
#调用stringTemplate函数
stringTemplate()

运行结果:

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python字符串操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python入门与进阶经典教程》。

希望本文所述对大家Python程序设计有所帮助。

相关文章

解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path

解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path

'chromedriver' executable needs to be in Path 声明:本人萌新,刚学python不久记录一下自己的坑,发出来若能帮助到一些人尽早解决问题那便是...

python mac下安装虚拟环境的图文教程

python mac下安装虚拟环境的图文教程

Mac 下 Flask 框架 workon命令找不到 ---- 最终解决方案(详解具体实现操作过程中遇到的坑)2018年08月17日 00:02:05Jasonmes阅读数:622 Ma...

Python根据文件名批量转移图片的方法

Python根据文件名批量转移图片的方法

下面是在深度学习数据集处理过程中可能会用到的一个小程序,帮助我们根据图片文件的名字来分开图片: import os import shutil path_img='读取图片的路径'...

Python3.5装饰器典型案例分析

本文实例讲述了Python3.5装饰器。分享给大家供大家参考,具体如下: #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:...

在Python中使用第三方模块的教程

在Python中,安装第三方模块,是通过setuptools这个工具完成的。Python有两个封装了setuptools的包管理工具:easy_install和pip。目前官方推荐使用p...