旧式格式化方式:%s,%d

1、顺序填入格式化内容

s = "hello %s, hello %d"%("world", 100)
print(s)

结果: 'hello world, hello 100'

2、使用关键字参数

s= "%(name)s age %(age)d"%{"name":"Tom", "age":10}
print(s)

结果:Tom name 10

常用的格式化符号

%s 对应的是字符串类型(str)
%d 对应十进制整数型的(int)

%f  对应浮点数(float)

%r 对应字符串(repr)

3、输出百分数

"%.2f%%"%(0.123)
# = 0.12%

利用format()函数

1、无参数情况

s = "hello {}, hello {}".format("world","Python")
print(s)

结果:"hello world, hello Python"

2、位置参数

s = "hello {1}, hello {0}".format("world","Python")
print(s)

结果:"hello Python, hello world"

3、关键词参数

s = "hello {first}, hello{second}".format(first="world",second="Python")
print(s)

结果: "hello world, hello Python"

4、位置参数与关键词参数混用

位置参数放在关键词参数前面,否则报错

s = "hello {first}, hello{0}".format(Python, first="world")
print(s)

结果:"hello world, hello Python"

5、"!a"(运用ascii()), "!s"(运用str()),  "!r"(运用repr())可以在格式化之前转换相应的值。

In [21]: contents = "eels"

In [22]: print("My hovercraft is full if {}.".format(contents))
My hovercraft is full if eels. In [23]: print("My hovercraft is full if {!r}.".format(contents))
My hovercraft is full if 'eels'. In [24]: print("My hovercraft is full if {!s}.".format(contents))
My hovercraft is full if eels. In [25]: print("My hovercraft is full if {!a}.".format(contents))
My hovercraft is full if 'eels'.

6、字段后可以用":"和格式指令,更好的控制格式。

(1)、下段代码将π 近似到小数点后3位

import math
print("The value of PI is approximately {0:.3f}.".format(math.pi))

结果:3.142

(2)、":"后面紧跟一个整数可以限定该字段的最小宽度

table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 7678}
for name, phone in table.items():
print('{0:10} ==> {1:10d}'.format(name, phone))

结果:

Jack       ==>       4098
Dcab ==> 7678
Sjoerd ==> 4127

(3)、数字加千分位符

print("{0:,.2f}".format(12345678.12345))
# 输出 12,345,678.12

注意:使用format输出最终都为字符串类型

总结:

%格式化为python内置的操作符,常用的为本文提到的这几个,还有一些其他的,如进制相关的,想了解可以查找其他资料。format是利用Python内置函数,关于format还有更多的用法,如格式限定,精度确定,填充与对齐等。

python 字符串格式化输出 %d,%s及 format函数的更多相关文章

  1. Python - 字符串格式化详解(%、format)

    Python在字符串格式化的两种方式 % format %,关于整数的输出 %o:oct 八进制%d:dec 十进制%x:hex 十六进制 print("整数:%d,%d,%d" ...

  2. python字符串格式化输出

    python格式化输出 python格式化输出有两种方式:百分号和format format的功能要比百分号方式强大,其中format独有的可以自定义字符填充空白.字符串居中显示.转换二进制.整数自动 ...

  3. Python 字符串格式化输出方式

    字符串格式化有两种方式:百分号方式.format方式. 其中,百分号方式比较老,而format方式是比较先进的,企图替代古老的方式,目前两者共存. 1.百分号方式 格式:%[(name)][flags ...

  4. python字符串格式化输出 %和format举例

    #!/usr/bin/env python # -*- coding: UTF-8 -*- #pyversion:python3.5 #owner:fuzj s1 = "i am %s, i ...

  5. python 字符串格式化 输出

    1. 需要输出3列,为了输出好看,需要制定每一列的宽度: ‘%6.2f’ % 1.235 # 长度为6,保留2为小数 print '{0:20} {1:<20} {1:<20}\r\n'. ...

  6. python基础_格式化输出(%用法和format用法)(转载)

    python基础_格式化输出(%用法和format用法) 目录 %用法 format用法 %用法 1.整数的输出 %o -- oct 八进制%d -- dec 十进制%x -- hex 十六进制 &g ...

  7. (Python )格式化输出、文件操作、json

    本节学习Python的格式化输出,文件操作以及json的简单用法 1.格式化输出 将非字符串类型转换成字符串,可以使用函数:str() 或者repr() ,(这两个函数的区别目前我还没搞懂,求解答) ...

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

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

  9. python print格式化输出。

    python print格式化输出. 1. 打印字符串 print ("His name is %s"%("Aviad")) 效果: 2.打印整数 print ...

随机推荐

  1. xml对象序列化

    public static class XSerializer { /// <summary> /// 将对象序列化为xml字符串 /// </summary> /// < ...

  2. crontab定时任务一定要记得做好备份

    今天咋服务器上敲了一个 crontab 命令(没加-e ,也没加-l, 更没加 -r) 但是竟然神奇的crontab全部被清除了. 心中一万只CN

  3. Mysql(一):初识数据库

    一 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中,毫无疑问,一个文件仅仅只能存在于某一台机器上. 如果我们暂且忽略直接基于文件来存取数据的效率问题,并且假设程序所有的组件 ...

  4. python并发编程之多进程(一):进程开启方式&多进程

    一,进程的开启方式 利用模块开启进程 from multiprocessing import Process import time,random import os def piao(name): ...

  5. HDU - 3038 种类并查集

    思路:种类并查集的每个节点应该保存它的父节点以及他和父节点之间的关系.假设root表示根结点,sum[i-1]表示i到根结点的和,那么sum[j-1] - sum[i]可以得到区间[j, i]的和.那 ...

  6. 【Learning】 莫比乌斯反演

    莫比乌斯反演 ​ 对于两个定义域为非负整数的函数\(F(n)\)和\(f(n)\) ​ 若满足:\(F(n)=\sum\limits_{d|n}f(d)\),则反演得到\(f(n)=\sum\limi ...

  7. spring 配置文件无法加载,junit找不到xml配置文件java.lang.IllegalStateException: Failed to load ApplicationContext

    最近遇到一个奇怪的问题.maven项目再进行junit单元测试的时候发现无法加载配置文件.一会能加载一会又不能加载.然后试了在src/main/resource下面的配置文件放到src/test/re ...

  8. WEB 小案例 -- 网上书城(二)

    寒假结束了,自己的颓废时间同样结束了,早该继续写博客了,尽管我的格式以及内容由于各种原因老被卡,但必须坚持写下去!!! 上次我们对于本案例的数据库部分进行了阐述,这次主要接着上次的内容分享本案例的翻页 ...

  9. docker学习笔记(二)

    一.常用Linux 命令 ls -a(同时列出隐含文件), -l(输出一个比较完整的格式,除每个文件名外,增加显示文件 类型.权限.硬链接数.所有者名.组名.大小(byte).及时间信息-----简化 ...

  10. APICloud常用模块

    常用模块 基础 fs db 支付 wxPay aliPay unionPay 消息 ajpush rongCloud2