一般框架

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. CodeForces 1098F. Ж-function

    题目简述:给定字符串$s[1 \dots n](n \leq 2 \times 10^5)$,以及$Q \leq 2 \times 10^5$个询问,每个询问有两个参数$1 \leq l \leq r ...

  2. java mysql编码问题

    今天使用jdbc连接数据库,sql语句明明是正确的,可就是查不到数据,问题是编码问题,好大的坑啊!!! 我的问题:where语句带汉字找不到信息,如果是英文却可以 第一步:在url后面加上如下的utf ...

  3. 【网络爬虫】【python】网络爬虫(二):网易微博爬虫软件开发实例(附软件源码)

    对于urllib2的学习,这里先推荐一个教程<IronPython In Action>,上面有很多简明例子,并且也有很详尽的原理解释:http://www.voidspace.org.u ...

  4. Linux 静态库 & 动态库

    转自:http://blog.chinaunix.net/uid-26833883-id-3219335.html 一.什么是库   本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执 ...

  5. CodeForces 349B Color the Fence (DP)

    题意:给出1~9数字对应的费用以及一定的费用,让你输出所选的数字所能组合出的最大的数值. 析:DP,和01背包差不多的,dp[i] 表示费用最大为 i 时,最多多少位,然后再用两个数组,一个记录路径, ...

  6. Bootstrap表格分页(二)

    本文使用Bootstrap-table来对表格进行分页,关于Bootstrap-table以及下载插件包请点击官网:http://bootstrap-table.wenzhixin.net.cn 首先 ...

  7. E20181029-hm

    cardinality 基数 entity n. 实体; 实际存在物; 本质; distribute vt. 分配,散布; 散发,分发; 把…分类; [电] 配电; replica  n. 复制品; ...

  8. html实现点击图片放大功能

    话不多说,直接上代码 <html> <head> <style> .over {position: fixed; left:0; top:0; width:100% ...

  9. 51nod 1416【DFS】

    思路: 暴力整个图,以这个为起点,然后看一下有没有找到一条路是会指向自己且元素个数>=4: #include <bits/stdc++.h> using namespace std; ...

  10. echarts相关属性设置(1)折线图篇

    option = { tooltip: { trigger: 'axis', // axisPointer: { // type: 'cross', // label: { // background ...