一般框架

tplt = ''                       #格式化模板
print(tplt.format(…)) #填充内容 tplt = '{0}-{1}+{2}={3}'
{}表示了一个槽,槽里面的内容使用key:value表示,key取值为自然数,表示序号,与后面format()的参数列表对应,value设置槽的格式,可由以下属性组合: 字符 用于填充单个字符
< 左对齐
> 右对齐
^ 居中对齐
数字 槽的宽度
, 数字的千位分隔符
.数字 浮点小数的精度或字符串的最大输出长度
类型 整型b,c,d,o,x,X,浮点型e,E,f,% format('a', 'b','c','d'),'a'填充到槽1内,'b'填充到槽2内,'c'填充到槽3内,'d'填充到槽4内

例1 输出pi的逼近值

# -*- coding=utf-8 -*-
import math
import sys
from decimal import *
# bailey-borwein-plouffe formula calculating pi
def bbp(n):
pi=Decimal(0)
k=0
while k < n:
pi+=(Decimal(1)/(16**k))*((Decimal(4)/(8*k+1))-(Decimal(2)/(8*k+4))-(Decimal(1)/(8*k+5))-(Decimal(1)/(8*k+6)))
k+=1
return pi if __name__ == '__main__':
tplt = '{0:^10}{1:<30f}'
print('{0:^10}{1:^30}'.format('n','pi'))
for i in range(1,10):
print(tplt.format('n='+str(i**2), bbp(i**2)))

结果如下:

kang@USTC:~/workspace/python_spyder$ python3 test_format_print.py
n pi
n=1 3.133333333333333333333333333
n=4 3.141592457567435381837004555
n=9 3.141592653589752275236177867
n=16 3.141592653589793238462593174
n=25 3.141592653589793238462643381
n=36 3.141592653589793238462643381
n=49 3.141592653589793238462643381
n=64 3.141592653589793238462643381
n=81 3.141592653589793238462643381

例2 测试字符填充

>>> tplt = '{1:{2}^5}---{0}'
>>> print(tplt.format('', '', '*'))
**1**---0
>>> tplt = '{1:{2}<5}---{0}'
>>> print(tplt.format('', '', '*'))
1****---0
>>> tplt = '{1:{2}>5}---{0}'
>>> print(tplt.format('', '', '*'))
****1---0
>>> tplt = '{1:{2}^6}---{0}'
>>> print(tplt.format('', '', '*'))
**1***---0

05_Python格式化打印的更多相关文章

  1. Java获取当前时间年月日、时间格式化打印、字符串转日期

    package com.sysc.simple; import java.text.ParseException; import java.text.SimpleDateFormat; import ...

  2. c语言格式化打印

    printf的格式化打印 unsigned int          -------------------     %u        打印无符号数 int          ----------- ...

  3. Python之读取用户指令和格式化打印

    Python之读取用户指令和格式化打印 一.读取用户指令 当你的程序要接收用户输入的指令时,可以用input函数: name = input("请输入你的名字:") print(& ...

  4. 【JAVA】格式化打印printf的使用

    格式化打印printf的使用 import java.util.Date; /** * 使用printf输出 */ /**关键技术点 * 使用java.io.PrintStream的printf方法实 ...

  5. console 中的格式化打印(占位符),和样式定义

    格式化打印 Gecko 9.0 (Firefox 9.0 / Thunderbird 9.0 / SeaMonkey 2.6) 首次发布对string substitutions的支持.你可以在传递给 ...

  6. python json格式化打印

    编写python脚本,调试的时候需要打印json格式报文,直接打印看不出层次,可以使用json.dumps格式化打印 import json import requests def test_json ...

  7. printf 格式化打印 awk 数据处理工具

    printf解析 这个玩意说白了,就是格式化打印输出. awk awk与sed都是处理数据的工具.sed是处理整行的数据,awk则比较倾向于一行当中分成数个[字段]来处理. 具体操作: 注意的几个点 ...

  8. Android json数据Log格式化打印

    https://blog.csdn.net/adarcy/article/details/76601896 public static final String LINE_SEPARATOR = Sy ...

  9. Debug模式应用程序输出Debug调试信息(现成的宏定义,用于格式化打印信息)

    // Debug模式,主要输出一些调试的信息. #ifdef UNICODE #define _FILE_          _STR2WSTR(__FILE__) #define _FUNCTION ...

随机推荐

  1. 3.15-3.21 hive项目实战

    一.创建表并导入日志数据,引出问题 ##建表 hive (default)> create table IF NOT EXISTS default.bf_log_src( > remote ...

  2. 3.7-3.10 Hive 企业使用优化1

    一.Fetch Task 在执行hive代码的时候,一条简单的命令大部分都会转换成为mr代码在后台执行, 但是有时候我们仅仅只是想获取一部分数据而已,仅仅是获取数据,还需要转化成为mr去执行吗? 那个 ...

  3. Content Security Policy的学习理解

    以下内容转载自 http://www.cnblogs.com/alisecurity/p/5924023.html 跨域脚本攻击 XSS 是最常见.危害最大的网页安全漏洞. 为了防止它们,要采取很多编 ...

  4. HDU - 2612 Find a way 双起点bfs(路径可重叠:两个队列分别跑)

    Find a way Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  5. JAVA基础--JAVA API集合框架(其他集合类,集合原理)15

    一.ArrayList介绍 1.ArrayList介绍 ArrayList它是List接口的真正的实现类.也是我们开发中真正需要使用集合容器对象. ArrayList类,它是List接口的实现.肯定拥 ...

  6. E20180525-hm

    sensitive adj. 敏感的; 感觉的; [仪] 灵敏的; 易受影响的; lookup v. 查找; 查表; speedy  adj. 快的,迅速的; 敏捷的 marshal  vt. 整理, ...

  7. IOS Carthage安装、使用

    一.Carthage的安装和使用1.安装homebrew后输入如下命令 $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercont ...

  8. POJ1088滑雪(记忆化搜索)

    就是用DP,DP[i][j]是在这个(i,j)位置作为起点的最长长度. 因为可能会超时,DP的话每次就是记录,然后就不用回溯了. 很简单的DFS里面的记忆化搜索. #include <stdio ...

  9. 洛谷P3960 列队(Splay)

    传送门 感觉自己好久不打数据结构已经完全不会了orz…… 据说正解树状数组?然而并不会 首先考虑一下每一次操作,就是把一个人从这一行中取出并放到行的最后,再从最后一列取出放到列的最后 那么这两种操作其 ...

  10. JSP && Servlet | AXIS 0配置 入门

    Axis2是目前比较流行的WebService引擎.WebService被应用在很多不同的场景.例如,可以使用WebService来发布服务端 Java类的方法,以便使用不同的客户端进行调用.这样可以 ...