初学python,看来零零碎碎的格式化文本的方法,总结一下python中格式化文本的方法。使用不当的地欢迎指出谢谢。

1、首先看使用%格式化文本

常见的占位符:

常见的占位符有:
%d    整数
%f    浮点数
%s    字符串
%x    十六进制整数

使用方法:

>>> 'Hello, %s' % 'world'
'Hello, world'
>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.'

使用的时候不知道写什么的地方直接使用 %s 进行代替,语句的末尾加上 %() 括号里面直接填写内容即可(字符串加上引号,中间用“,”分割),如果只有一个%?,括号可以省略。

高级一点的用法:

格式化整数指定是否补零:

首先看代码:

>>> '%d-%d' % (3, 23)
'3-23'
>>> '%2d-%2d' % (3, 23)
' 3-23'
>>> '%3d-%3d' % (3, 23)
'  3- 23'
>>> '%4d-%4d' % (3, 23)
'   3-  23'
>>> '%01d-%01d' % (3, 23)
'3-23'
>>> '%02d-%02d' % (3, 23)
'03-23'
>>> '%03d-%03d' % (3, 23)
'003-023'
>>> '%04d-%04d' % (3, 23)
'0003-0023'
>>> 

可以看得出来,d前面的数字用来指定占位符,表示被格式化的数值占用的位置数量(字节还是什么不知道这样的表述是否正确),指定之后比如%3d,代表这个整数要占用3个位置,前面如果有0代表占用的地方使用0补齐,没有就使用空格补齐。指定的空间位置小于实际的数字大小,以实际占用的位置大小为准。

指定小数的位数:

>>> '%.f' % 3.1415926'3'>>> '%.1f' % 3.1415926'3.1'>>> '%.2f' % 3.1415926'3.14'>>> '%.3f' % 3.1415926'3.142'>>> 

可以看出.后面的数字用来表示保留的小数点的位数,".1"代表保留小数点后面一位小数。

如果不确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串:

>>> 'Age: %s. Gender: %s' % (25, True)
'Age: 25. Gender: True'

有些时候,字符串里面的%是一个普通字符怎么办?这个时候就需要转义,用%%来表示一个%

>>> 'growth rate: %d %%' % 7
'growth rate: 7 %'

尝试使用其他方法对%进行转义,但是好像没有用,有什么其他方法欢迎评论。

2、使用format 方法进行格式化

代码演示:

age = 25name = 'Swaroop'
print('{0} is {1} years old'.format(name, age))
print('Why is {0} playing with that python?'.format(name))

位置使用{1}按照使用的顺序写好,后面格式使用 .format()  写好对应的参数即可。

输出结果:

Swaroop is 25 years old
Why is Swaroop playing with that python?

其实也可以使用第一种方法实现:

age = 25
name = 'Swaroop'
print('%s is %s years old'%(name, age))
print('Why is %s playing with that python?'%(name))

输出

Swaroop is 25 years old
Why is Swaroop playing with that python?

实现的结果都是一样的。

具体两者的区别参看 http://python.jobbole.com/87065/

转载于:https://www.cnblogs.com/engeng/p/6605936.html

python中使用%与.format格式化文本相关推荐

  1. python中日期和时间格式化输出的方法

    1.将字符串的时间转换为时间戳 方法: a = "2013-10-10 23:40:00" #将其转换为时间数组 import time timeArray = time.strp ...

  2. [转载] python中日期和时间格式化输出的方法

    参考链接: Python程序将时间从12小时转换为24小时格式 1.将字符串的时间转换为时间戳 方法: a = "2013-10-10 23:40:00" #将其转换为时间数组 i ...

  3. Python print函数及format()格式化输出详解

    今天继续给大家介绍Python相关知识,本文主要内容是Python print函数及format()格式化输出详解. 一.print()函数基本使用 print()函数是Python中用于向控制台输出 ...

  4. Python中: unsupported format character ''' (0x27)

    Python中: unsupported format character ''' (0x27) 1)MySQL DB使用%运算符将参数放入查询中,因此查询字符串中的任何单个%字符都被解释为参数说明符 ...

  5. Python中的difflib模块(文本对比)

    Python中的difflib模块(文本对比) 1. difflib模块简介 2. difflib模块用法 3. 符号理解 4. 实现文本对比 5. linux文件之间的对比 1. difflib模块 ...

  6. python中str.format用法_详解Python中的str.format方法

    字符串的内置方法大致有40来个,但是一些常用的其实就那么20几个,而且里面还有类似的用法,区分度高比如:isalpha,isalnum,isdigit,还有一些无时不刻都会用到的split切分,joi ...

  7. Python基础教程:format 格式化字符串用法

    1.format 格式化字符串 (1) 顺序传参 (2) 索引传参 (3) 关键字传参 (4) 容器类型传参 {} 代表的是占位符 2.顺序传参 strvar = "{}向{}开了一枪&qu ...

  8. Python中print和字符格式化的小结(Python2.7.5)

    1.print可以同时打印多个字面量或者变量,用逗号隔开,打印结果是以空格隔开 name = "Guido van Rossum" print "My name is&q ...

  9. Python中format_map与format字符串格式化的区别

    在Python3中使用format和format_map方法都可以进行字符串格式化,但format是一种所有情况都能使用的格式化方法,format_map仅使用于字符串格式中可变数据参数来源于字典等映 ...

最新文章

  1. python 类的封装、继承、重写方法
  2. 第8章 Iptables与Firewalld防火墙
  3. Unity C#单例模式的实现
  4. 洛谷 P3865 【模板】ST表
  5. coloros基于java_基于Android 11 ColorOS 11海外版亮点一图抢先看:9月24日国内发布
  6. PHP的uniqid
  7. Android之java.lang.OutOfMemoryError: Failed to allocate a ** byte allocation with **free bytes and 2M
  8. MySQL 数据库架构
  9. ***git自动化部署总结
  10. vs自拉软件全名_vs全新操作软件说明书
  11. Ceph新建monitor或者osd报错:use --overwrite-conf to overwrite
  12. 华为人均工资高达70万,但先看看华为员工的15项标准
  13. excel 将日期转换为8位数字
  14. 和橘子菇凉一起开始python之旅吧!
  15. Lua_第28章 资源管理(下)
  16. linux上使用drive从google drive 下载文件和文件夹
  17. DQN的e-greedy策略理解
  18. 成年人社交中的10个潜规则
  19. Python 爬虫、抓包
  20. 七夕情人节生日表白爱心

热门文章

  1. 程序员顶尖和普通就是有5个区别!
  2. mysql延迟注入br,实验3—SQL注入漏洞的攻击与防御(基于时间延迟的盲注)
  3. 计算机科学文学学士,波士顿大学计算机科学.pdf
  4. 【算法】剑指 Offer 03. 数组中重复的数字
  5. 【ElasticSearch】Es 源码之 MetadataUpgrader 源码解读
  6. 【Spring】Spring的生态项目
  7. 【http】记一次http无法连通总是超时的问题
  8. 【MySQL】MySQL 8 连接出现 2059 - Authentication plugin caching_sha2_password ca
  9. 启动Spark出现Operation category READ is not supported in state standby
  10. 【java】instanceof 性能