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. who am i ?

    Id:Ox9A82 Email:hucvbty@gmail.com 微博:http://weibo.com/1828621423 知乎:Ox9A82 常乐村男子职业技术学院 Syclover拖后腿成员 ...

  2. Server sent passive reply with unroutable address. Using server address instead

    最近在linux服务器安装vsftp服务.经过一轮设置,终于可以连接上了,用winSCP连接,刷新目录就提示这个错误. 解决办法: vim /etc/vsftpd.conf  ,编辑配置文件,最后加上 ...

  3. jenkins远程连接linux配置测试

    由于配置原因造成一下错误错误: jenkins.plugins.publish_over.BapPublisherException: Failed to connect session for co ...

  4. MySQL 大数据量使用limit分页,随着页码的增大,查询效率越低下。

    数据表结构 CREATE TABLE `ad_keyword` ( `id` int(11) NOT NULL AUTO_INCREMENT, `plan_goods_id` int(11) DEFA ...

  5. Ionic实战六:日期选择控件

    onic日期选择控件,用于ionic项目开发中的日期选择以及日期插件   

  6. 基于 Laravel 开发博客应用系列 —— 从测试开始(一):创建项目和PHPUnit

    1.创建博客项目 我们将遵循上一节提到的六步创建一个新 Laravel 5.1 项目的步骤,创建本节要用到的博客项目 —— blog. 首先,在本地主机安装应用骨架: nonfu@ubuntu:~/C ...

  7. 通过GeneXus如何快速构建微服务架构

    概览 “微服务”是一个非常广泛的话题,在过去几年里,市面上存在着各种不同的定义. 虽然对这种架构方式没有一个非常精确的定义,但仍然有一些概念具有代表性. 微服务有着许多围绕业务能力.自动化部署.终端智 ...

  8. CSUOJ 1270 Swap Digits

    Description ) in the first line, which has the same meaning as above. And the number is in the next ...

  9. CodeForces - 831A Unimodal Array 模拟

    A. Unimodal Array time limit per test 1 second memory limit per test 256 megabytes input standard in ...

  10. CentOS 7下MySQL5.7.23的服务配置参数测试

    CentOS 7默认安装MySQL5.7.23,服务管理发生了变化,从sysvinit(service mysql start)变化为systemd(systemctl start mysqld.se ...