26【python】sprintf风格的字符串
参考资料:https://docs.python.org/3.5/library/stdtypes.html#old-string-formatting
实例
s#!/bin/python
a = ("year:%d model:%s") % (2018, 'BMW X5')
print(a) #year:2018 model:BMW X5
可以看到用这种类似于c语言中的printf函数,实现了字符串拼接,这个在实际应用中很常见,比如打日志,比如输出一段完整的内容,其中包含一些变量。
按照%出现的顺序,依次和后面的参数对应起来,来实现字符串拼接。
以下是一些提示
提示1:
前面出现的%必须和后边的参数个数保持一致,否则会报错:TypeError: not all arguments converted during string formatting
提示2:
这里如果输出%本身,需要用%来转义。
a = ("%% year:%d model:%s") % (2018, 'BMW X5')
提示3:
支持的所有类型见表格:
| 表示 | 含义 | 备注 |
| %d | 整型 | |
| %i | 整型 | |
| %u | 整型 | 和%d一样 |
| %f | 浮点数 | |
| %F | 浮点数 | |
| %e | 指数形式的整型 | |
| %E | 指数形式的整型 | |
| %g | 浮点数表示,精度太低,需要指数介入时会用到,e是小写的 | |
| %G | 浮点数表示,精度太低,需要指数介入时会用到,e是大写的 | |
| %x | 十六进制表示 | |
| %X | 十六进制表示 | |
| %c | char类型 | 必须是单个字符,否则报错 |
| %o | 八进制 | 这里是字母o |
| %r | 使用函数repr()来转化后的string | |
| %s | string类型,使用str()转换后的值 | |
| %a | string,使用ascii(0函数转换后的值 |
以上是所有常用的类型。
对于%d,支持类似于%3d(3位整型),'% 8d','%08d'这样的表示。
类似的%f,也是一样的,支持%8.5f。
其它格式见链接:https://docs.python.org/3.5/library/stdtypes.html#old-string-formatting
26【python】sprintf风格的字符串的更多相关文章
- Python 代码风格
1 原则 在开始讨论Python社区所采用的具体标准或是由其他人推荐的建议之前,考虑一些总体原则非常重要. 请记住可读性标准的目标是提升可读性.这些规则存在的目的就是为了帮助人读写代码,而不是相反. ...
- python代码风格-PEP8
转载自http://www.douban.com/note/134971609/ Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下 ...
- python代码风格指南:pep8 中文翻译
摘要 本文给出主Python版本标准库的编码约定.CPython的C代码风格参见PEP7.本文和PEP 257 文档字符串标准改编自Guido最初的<Python Style Guide&g ...
- 【转】python代码风格-PEP8
转载自http://www.douban.com/note/134971609/ Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下 ...
- Python基础7:字符串方法
1 * 重复输出字符串 print('helo '*4) 2 [],[:] 通过索引获取字符串中的字符,这里和列表中的切片操作是相同的,具体内容见列表 print('hello word'[2:]) ...
- Python 编码风格指南
原文:http://python.jobbole.com/84618/ 本文超出 PEP8 的范畴以涵盖我认为优秀的 Python 风格.本文虽然坚持己见,却不偏执.不仅仅涉及语法.模块布局等问题,同 ...
- 『Python基础-4』字符串
# 『Python基础-4』字符串 目录 1.什么是字符串 2.修改字符串 2.1 修改字符串大小 2.2 合并(拼接)字符串 2.3 使用乘号'*'来实现字符串的叠加效果. 2.4 在字符串中添加空 ...
- Python基础总结(字符串常用,数字类型转换,基本运算符与流程控制)
一.字符串常用操作 #Python strip() 方法用于移除字符串头尾指定的字符(默认为空格) name='*egon**' print(name.strip('*'))#移除 name 变量对应 ...
- (转)PEP 8——Python编码风格指南
PEP 8——Python编码风格指南标签(空格分隔): Python PEP8 编码规范原文:https://lizhe2004.gitbooks.io/code-style-guideline-c ...
随机推荐
- png 2 icon
http://www.easyicon.net/covert/ 这个网页可以转换png图片为icon格式
- Props文件属性读取
Properties props=new Properties(); try { props.load(new InputStreamReader(getClass().getResourceAsSt ...
- 认识JavaWeb,servlet, JSP, Tomcat, http协议,Web服务器
JavaWeb通常指服务器端的Java应用开发. 一般来说,服务器是在网络通信条件下工作的,这就离不开http协议. HTTP协议,是为服务器和客户端通信提供的规范,其中规定了信息的格式,符合规范格式 ...
- 服务限流-令牌桶java实现
此文非常不错,抄自: https://www.cnblogs.com/googlemeoften/p/6020718.html 其他实现 https://www.cnblogs.com/LBSer/p ...
- SQL Server 中系统视图sysobjects中type字段的说明
对象类型: AF = 聚合函数 (CLR) C = CHECK 约束 D = DEFAULT(约束或独立) F = FOREIGN KEY 约束 FN = SQL 标量函数 FS = 程序集 (CLR ...
- sql 替换字段中的部分字符,替换指定字符
把列中凡是有2011的全部修改成2014,如 lieming 里的201101131431改成201401131431,写法: update tab set lieming = replace(l ...
- 遍历DOM树,链式操作
如果需要在同一个选取结果上使用多个jQuery方法,可以同时列出这些方法,并用.隔开,如下面的代码. 1 $("#one").hide().delay(500).fadeIn(15 ...
- JSP报错Syntax error, insert ";" to complete Statement
org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 7 in ...
- 2.Servlet基础.md
目录 1.定义 2.特点 3.手动编写一个Servlet 3.1创建一个Servlet类 3.2找到编写类的class文件,将这个类的整个包拷贝到一个web应用中的WEB-INF/classes目录下 ...
- ArcMap导入图层出现General function failure问题 [转]
ArcMap导入图层出现General function failure问题 [转] Link: http://www.cnblogs.com/angelx/p/3391967.html 问题描述 ...