6. python 字符串格式化表达式

字符串格式化允许在一个单个的步骤中对一个字符串执行多个特定类型的替换

特别是给用户提示的时候,格式化非常方便

实现方法:

1.格式化表达式,类似于c语言的printf

在表达式中,我们使用%二进制操作符

>>> print('this is %d %s bird' % (1,'dead')) 
  this is 1 dead bird

举上面的例子说明(注意我们下面所说的%,都是以字符串和元组中间的那个为准)

在%的左边放置一个字符串,字符串里面放置了一个或者多个使用%开头的嵌入对象

在%的右边放入一个(或多个,嵌入元组当中)对象,这些对象将插入到左边的转换目标位置上

>>> name='ray' 
  >>> 'my name is %s' % name 
  'my name is ray' 
  >>> '%d %s %d you' % (1,'spam',4) 
  '1 spam 4 you' 
  >>> '%s---%s---%s' % (42,3.14,[1,2,3]) 
  '42---3.14---[1, 2, 3]' 
  >>>

当插入多个对象时,需要把他们放到一个元组里面

2.高级格式化表达式

字符串格式化代码列表

代码

意义

s

字符串(或者任何对象)

r

s,但是用repr,而不是str

c

字符

d

十进制整数

i

整数

u

无号整数

o

八进制整数

x

十六进制整数

X

x,但打印大写

e

浮点指数

E

e,但打印大写

f

浮点十进制

F

浮点十进制

g

浮点e或f

G

浮点e或f

%

常量%

%[(name)][flags][width][.pression]typecode

例子

>>> x=1234 
  >>> res='integers:...%d...%-6d...%06d' % (x,x,x) 
  >>> res 
  'integers:...1234...1234  ...001234' 
  >>>

%e,%f,%g对于浮点数的打印是有所区别的

>>> x=1.23456789 
  >>> x 
  1.23456789 
  >>> '%e|%f|%g' % (x,x,x) 
  '1.234568e+00|1.234568|1.23457' 
  >>>

3.基于字典的格式化表达式

>>> 'my name is %(name)s,my age is %(age)d' % {'name':'ray','age':30} 
  'my name is ray,my age is 30' 
  >>>

说白了就是给每个替换位置命名,这样代码看起来更加明了

6. python 字符串格式化表达式的更多相关文章

  1. Python字符串格式化表达式和格式化方法

    Python格式化字符串由两种方式可以选择:一种是格式化表达式(Formatting Expression),一种是格式化方法(Formatting Method).其中格式化表达式在全Python版 ...

  2. python字符串格式化 %操作符 {}操作符---总结

    Python字符串格式化 (%占位操作符) 在许多编程语言中都包含有格式化字符串的功能,比如C和Fortran语言中的格式化输入输出.Python中内置有对字符串进行格式化的操作 %. 模板 格式化字 ...

  3. 【转】Python字符串格式化

    Python 支持格式化字符串的输出 .尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中. 在 Python 中,字符串格式化使用与 C 中 sp ...

  4. 7. python 字符串格式化方法(2)

    7. python 字符串格式化方法(2) 紧接着上一章节,这一章节我们聊聊怎样添加具体格式化 就是指定替换字段的大小.对齐方式和特定的类型编码,结构如下: {fieldname!conversion ...

  5. 7. python 字符串格式化方法(1)

    7. python 字符串格式化方法(1) 承接上一章节,我们这一节来说说字符串格式化的另一种方法,就是调用format() >>> template='{0},{1} and {2 ...

  6. Python 字符串格式化

    Python 字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存 一 ...

  7. python字符串格式化--dict传参

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python字符串格式化--dict传参 print "I'm %(name)s. I'm %(a ...

  8. Python学习:12.Python字符串格式化

    字符串格式化 讲解Python这么久,也没有讲解Python的字符串的格式化,那我们今天就来了解一下python字符串格式化的强大之处. 首先我们先理解一下为什么要有字符串的格式化,就是为了方便字符串 ...

  9. Python字符串格式化-学这些就够用了

    一.思考❓❔ 1.什么是字符串格式化? 将变量(对象)的值填充到字符串中 在字符串中解析Python表达式 对字符串进行格式化显示 左对齐.右对齐.居中对齐 保留数字有效位数 2.你学过的字符串格式化 ...

随机推荐

  1. GreenPlum学习笔记:基础知识

    一.介绍 GreenPlum分布式数据仓库,大规模并行计算技术. 无共享/MPP核心架构 Greenplum数据库软件将数据平均分布到系统的所有节点服务器上,所以节点存储每张表或表分区的部分行,所有数 ...

  2. CentOS7 64位下MySQL5.7安装与配置(YUM)转

    安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...

  3. JS验证表单中TEXT文本框中是否含有非法字符

    <form id="form" action="" method="post"> <input type="hi ...

  4. 微商城三级分销源码公众号开发 微分销 C#源码

    需要源码,请加QQ:858-048-581 ,可以查看演示 运行环境:vs2012+ sql2008r2 [什么是微分销] 微分销是助力企业进军移动电商,完善分销体系搭建微信分销系统.基于微信平台,搭 ...

  5. 丑数(UVa136)

    题目具体描述见:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=835&a ...

  6. python开发学习-day13(js、jQuery)

    s12-20160409-day13 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...

  7. js获取iframe的id

    有一个需求是在iframe页面调用父页面一个方法,开始我用window.parent.length来判断页面有几个层,但是不好用,因为我的浏览器安装了一个插件,这个插件会动态向页面插入一个iframe ...

  8. bzoj 1899 贪心+dp

    思路:这个贪心排顺序我居然没看出来. 吃饭时间长的在前面, 用反证法很容易得出. 剩下的就是瞎dp啦. #include<bits/stdc++.h> #define LL long lo ...

  9. 查看锁信息(开启InnoDB监控)

    当前mysql版本:5.6.21 一.背景 在mysql处理死锁问题时,由于show engine innodb status输出来的死锁日志无任务事务上下文,并不能很好地诊断相关事务所持有的所有锁信 ...

  10. java-Excel导出中的坑

    在Excel导出过程中,若遇到合并单元格样式只有第一行合并,而下面要合并的行没有边框显示. 一般问题出在将单元格样式设置与合并单元格放在同一个循环中导致. 以下为一个完整版的demo以供参考 定义边框 ...