python3.6后支持3种格式化输出方式,其中前两种为%-formatting及str.format ,第三种即为 f-string。

1.%-formatting

据传该格式化方法源于C..

>>>username = input("请输入用户名:")
>>>pwd = input("请输入密码:")
>>>print("用户名为:%s,密码为:%s" %(username, pwd))
用户名为:张三,密码为:123456

%后字符含义:

  • %s:str,字符类型,用str()方法处理对象
  • %d(i):decimal,十进制数
  • %x: hex, 十六进制数
  • %f: float,浮点数
  • %r:类似于%s类型,用rper()方法处理对象,此外用%r打印时能够重现它所代表的对象 (拓展:Difference between __str__ and __repr__

指定长度:

  • %5d:右对齐,不足左边补空格
  • %-5d:- 代表左对齐,不足右边默认补空格
  • %05d:右对齐,不足左边补0

浮点数:

  • %f: 默认是输出6位有效数据, 会进行四舍五入
  • %.8f:指定小数点位数的输出,保留小数点后8位
  • %4.8f:4代表整个浮点数的长度,包括小数,只有当字符串的长度大于4位才起作用

2.str.format

例:格式化输出

------------ info of XXX ------------
Name : XXX
Age : 25
job : XXXX
Hobby: XXXXX
------------------ end ----------------

2.1不带编号

name = "XXX"
age = 25
job = "XXXX"
hobby = "XXXXX" print("""
------------ info of {} ------------
Name : {}
Age : {}
job : {}
Hobby: {}
------------------ end ------------------
""".format(name, name, age, job, hobby))

2.2带编号

name = "XXX"
age = 25
job = "XXXX"
hobby = "XXXXX" print("""
------------ info of {0} ------------
Name : {0}
Age : {1}
job : {2}
Hobby: {3}
------------------ end ------------------
""".format(name, age, job, hobby))

2.3带关键字

print("""
------------ info of {name} ------------
Name : {name}
Age : {age}
job : {job}
Hobby: {hobby}
------------------ end ------------------
""".format(name="XXX", age=25, job="XXXX", hobby="XXXXX"))

*2.4传入列表(元组)

list = ["XXX", 25, "XXXX", "XXXXX"]
print("""
------------ info of {0} ------------
Name : {0}
Age : {1}
job : {2}
Hobby: {3}
------------------ end ------------------
""".format(*list))

*2.5传入字典

dic = {"name": "XXX",
"age": 25,
"job": "XXXX",
"hobby": "XXXXX"}
print("""
------------ info of {name} ------------
Name : {name}
Age : {age}
job : {job}
Hobby: {hobby}
------------------ end ------------------
""".format(**dic))

*2.6指定长度输出

  格式{:*>n}

  • >:右对齐
  • <:左对齐
  • ^:中间对齐
  • n:指定的长度
print("左对齐是:{0:*<5},\n右对齐是:{1:*>5},\n居中的是:{2:*^5}".format("左", "右", "中"))

输出:

3.f-string(python解释器3.6版本后可用)

>>>name = "zhangsan"
>>>age = 25
>>>print(f"我的名字是{name},年龄是{age}")
我的名字是zhangsan,年龄是25

python之格式化输出(3种方式)的更多相关文章

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

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

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

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

  3. python的格式化输出

    Python的格式化输出有两种: 一.类似于C语言的printf的方法 二.类似于C#的方法

  4. Python实现屏幕截图的两种方式

    Python实现屏幕截图的两种方式 使用windows API 使用PIL中的ImageGrab模块 下面对两者的特点和用法进行详细解释. 一.Python调用windows API实现屏幕截图 好处 ...

  5. Python 配置日志的几种方式

    Python配置日志的几种方式 作为开发者,我们可以通过以下3种方式来配置logging: (1)使用Python代码显式的创建loggers,handlers和formatters并分别调用它们的配 ...

  6. Python拼接字符串的七种方式

    忘了在哪看到一位编程大牛调侃,他说程序员每天就做两件事,其中之一就是处理字符串.相信不少同学会有同感. 几乎任何一种编程语言,都把字符串列为最基础和不可或缺的数据类型.而拼接字符串是必备的一种技能.今 ...

  7. Python 拼接字符串的几种方式

    在学习Python(3x)的过程中,在拼接字符串的时候遇到了些问题,所以抽点时间整理一下Python 拼接字符串的几种方式. 方式1,使用加号(+)连接,使用加号连接各个变量或者元素必须是字符串类型( ...

  8. 横向对比分析Python解析XML的四种方式

    横向对比分析Python解析XML的四种方式 在最初学习PYTHON的时候,只知道有DOM和SAX两种解析方法,但是其效率都不够理想,由于需要处理的文件数量太大,这两种方式耗时太高无法接受. 在网络搜 ...

  9. Python字符串拼接的五种方式

    第一种 通过加号(+)的形式 print('第一种方式通过加号形式连接 :' + 'love'+'Python' + '\n') 第二种 通过逗号(,)的形式 print('第二种方式通过逗号形式连接 ...

  10. MVC日期格式化的2种方式

    原文:MVC日期格式化的2种方式 假设有这样的一个类,包含DateTime类型属性,在编辑的时候,如何使JoinTime显示成我们期望的格式呢? using System; using System. ...

随机推荐

  1. Feign 请求拦截器和日志

    Feign 支持请求拦截器,在发送请求前,可以对发送的模板进行操作,例如设置请求头等属性,自定请求拦截器需要实现 feign.RequestInterceptor 接口,该接口的方法 apply 有参 ...

  2. vivado各版本的区别

    vivado各版本的区别 Vivado HL Design Edition: Vivado HL System Edition: 区别在于System Edition包含有system generat ...

  3. Thinkphp路由使用

    'URL_ROUTER_ON' => true, //开启路由 2.定义路由 'URL_ROUTE_RULES' => array( '/^c_(\d+)$/' => 'Index/ ...

  4. MySQL性能管理及架构设计

    第1章 实例和故事 1-1 什么决定了电商双11大促的成败 老板可能会说:"是我们的英明决策和运筹帷幄". 运营和产品可能会说:"是由于我们的活动策划和产品设计" ...

  5. asp.net core项目 部署在 linux上

    第一步 安装 .net core https://www.microsoft.com/net/learn/get-started/linuxubuntu 第二步 运行你的asp.net core 项目 ...

  6. sql培训

    1.select--查询语句 select * from table; select cols from table; select cols from table where condition; ...

  7. C++标准模板库(STL)介绍:set的基本用法

    1.元素的方向遍历 使用反向迭代器reverse_iterator可以反向遍历集合,输出集合元素的反向排序结果.它需要用到rbegin()和rend()两个方法,它们分别给出了反向遍历的开始位置和结束 ...

  8. 算法:整数与ip地址转换

    直接上代码(不要直接拷贝,中间少了一行啊):   #include <string>   #include <iostream>   using namespace std; ...

  9. bzoj2856: [ceoi2012]Printed Circuit Board

    Description 给出一个N个顶点的简单多边形,对于每个顶点,假如它和原点连成的线段只在这个顶点处和多边形相交,就称为满足要求的顶点.你的任务是输出所有满足要求的顶点编号. Input 第一行一 ...

  10. 使用python操作word

    有两种方式: 使用win32com 使用docx 1.使用win32com扩展包 只对windows平台有效 代码: # coding=utf-8 import win32com from win32 ...