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. VMware虚拟机的三种联网方法及原理(转)

    转自:http://blog.chinaunix.net/uid-24876683-id-3593774.html 一.Brigde——桥接 :默认使用VMnet0 .原理: Bridge 桥&quo ...

  2. PHP性能调优,PHP慢日志---PHP脚本执行效率性能检测之WebGrind的使用

    如何一睹webgrind这个神奇的php性能检测工具神奇呢? 废话不多说首先webgrind这个性能检测是需要xdebug来配合,因为webgrind 进行性能检测分析就是通过xdebug生成的日志文 ...

  3. C++中memcpy和memmove

    二者都是内存拷贝 memcpy内存拷贝,没有问题;memmove,内存移动?错,如果这样理解的话,那么这篇文章你就必须要好好看看了,memmove还是内存拷贝.那么既然memcpy和memmove二者 ...

  4. Loadrunner参数化如何在记事本中将参数值显示超过100个参数值

    Loadrunner参数化如何在记事本中将参数值显示超过100个参数值 1.loadrunner的参数值没有最大的限度, 可以修改C:\Program Files\HP\LoadRunner\conf ...

  5. Django实战(5):引入bootstrap,设置静态资源

    之前生成了Product类的scaffold,但是如同rails的开发者David所讲的那样,scaffold几乎没什么用.所以按照<Agile Web Development with Rai ...

  6. 基于Laravel开发博客应用系列 —— 十分钟搭建博客系统

    1.创建文章数据表及其模型(0:00~2:30) 我们已经在上一节中为博客项目完成了大部分准备工作,现在首先要做的就是为这个项目创建一个新的文章表 posts及该表对应的模型类 Post,使用如下Ar ...

  7. 不可不说的Java“锁”事

    前言 Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场景下能够展现出非常高的效率.本文旨在对锁相关源码(本文中的源码来自JDK 8).使用场景进行举例,为读者介绍主流锁的知识点,以及不同的 ...

  8. [leetcode sort]75. Sort Colors

    Given an array with n objects colored red, white or blue, sort them so that objects of the same colo ...

  9. python opencv3 直线检测

    git:https://github.com/linyi0604/Computer-Vision # coding:utf8 import cv2 import numpy as np # 读入图像 ...

  10. 谁是最快的Go Web框架

    根据Julien Schmidt测试框架中测试到的go web框架,在加上lion,fasthttp,一共测试了下面的web框架. default http macaron go-json-rest ...