python123格式化输出_python 字符串格式化输出 %d,%s及 format函数

旧式格式化方式:%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 - 字符串格式化详解(%、format)

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

python字符串格式化输出

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

Python 字符串格式化输出方式

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

python 字符串格式化 输出

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

python基础&lowbar;格式化输出(&percnt;用法和format用法)&lpar;转载&rpar;

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

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

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

【转】Python字符串格式化

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

python print格式化输出。

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

python字符串格式化之学习笔记

在python中格式化输出字符串使用的是%运算符,通用的形式为 •格式标记字符串 % 要输出的值组其中,左边部分的”格式标记字符串“可以完全和c中的一致.右边的'值组'如果有两个及以上的值则需要用小括 ...

随机推荐

CRL快速开发框架系列教程四&lpar;删除数据&rpar;

本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

TOP 10 BEST LINUX GAMES RELEASED IN 2016

Gaming on Linux used to be a very rare phrase. But since the arrival of Steam on Linux, the Linux ga ...

fastjson升级版本遇到的问题

前面的话: 有关阿里的fastjson升级时遇到的问题,链接如下 https://github.com/alibaba/fastjson/wiki/enable_autotype 我要说的,是我碰到这 ...

基于UDP协议的socket编程

UDP协议特点: 1.无连接.服务端与客户端传输数据之前不需要进行连接,且没有超时重发等机制,只是把数据通过网络发送出去.也正是因为此特点,所以基于UDP协议的socket的客户端在启动之前不需要先启 ...

IntelliJ IDEA Ultimate 下载与安装

一.下载 Intellij IDEA Ultimate 下载链接:https://www.jetbrains.com/idea/download/#section=windows 1.进入官网点击Ul ...

js 自执行匿名函数&lpar;转载&rpar;

自执行匿名函数: 常见格式:(function() { /* code */ })(); 解释:包围函数(function(){})的第一对括号向脚本返回未命名的函数,随后一对空括号立即执行返回的未命 ...

copy代码的时候,如何去掉代码前边的编号

从网页上拷贝下来的代码前面总有编号,如何去掉! 1.使用正则表达式:在editorplus(notepad++)里按ctrl+h,弹出框里勾选上“正则表达式(regular expression)”, ...

JAVA JComboBox的监听事件(ActionListener、ItemListener)

版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   参考资料: http://263229365.iteye.com/blog/1040329 https://www.ja ...

msf web&lowbar;delivery模块攻击

目标机:win7                    ip:192.168.31.136 攻击机:kai liunx                      ip:192.168.31.54 一. ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值