python输出格式化及函数format

总结了一些简单基本的输出格式化形式以及函数format函数基本使用形式。

字符串格式化代码:

格式描述
%%百分号标记
%c字符及其ASCII码
%s字符串
%d有符号整数(十进制)
%u无符号整数(十进制)
%o无符号整数(八进制)
%x无符号整数(十六进制)
%X无符号整数(十六进制大写字符)
%e浮点数字(科学计数法)
%E浮点数字(科学计数法,用E代替e)
%f浮点数字(用小数点符号)
%g浮点数字(根据值的大小采用%e或%f)
%G浮点数字(类似于%g)
%p指针(用十六进制打印值的内存地址)
%n存储输出字符的数量放进参数列表的下一个变量中

基本方法的使用:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#coding=utf-8
'''
可以指定所需长度的字符串的对齐方式:
< (默认)左对齐
> 右对齐
^ 中间对齐
= (只用于数字)在小数点后进行补齐
'''
print '1:\t|{0:>10},' . format ( 'wangyu' )
print '2:\t|{0:4.2f}' . format ( 1.1415926 )
print '3:\t|' , format ( 1.1415926 , '<10.2f' )
print '4:\t|{0:<10},{1:<15}' . format ( 'wangyu' , 1.1415926 )
print '5:\t|User ID: {uid} Last seen: {last_login}' . format (uid = 'root' ,last_login = '5 Mar 2008 07:20' )
 
'''格式化指示符可以包含一个展示类型来控制格式。
例如,浮点数可以被格式化为一般格式或用幂来表示。
'b' - 二进制。将数字以2为基数进行输出。
'c' - 字符。在打印之前将整数转换成对应的Unicode字符串。
'd' - 十进制整数。将数字以10为基数进行输出。
'o' - 八进制。将数字以8为基数进行输出。
'x' - 十六进制。将数字以16为基数进行输出,9以上的位数用小写字母。
'e' - 幂符号。用科学计数法打印数字。用'e'表示幂。
'g' - 一般格式。将数值以fixed-point格式输出。当数值特别大的时候,用幂形式打印。
'n' - 数字。当值为整数时和'd'相同,值为浮点数时和'g'相同。不同的是它会根据区域设置插入数字分隔符。
'%' - 百分数。将数值乘以100然后以fixed-point('f')格式打印,值后面会有一个百分号。
'''
 
print '6:\t|{0:b}' . format ( 3 )
print '7:\t|{0:c}' . format ( 3 )
print '8:\t|{0:d}' . format ( 3 )
print '9:\t|{0:o}' . format ( 3 )
print '10:\t|{0:x}' . format ( 3 )
print '11:\t|{0:e}' . format ( 3.75 )
print '12:\t|{0:g}' . format ( 3.75 )
print '13:\t|{0:n}' . format ( 3.75 ) #浮点数
print '14:\t|{0:n}' . format ( 3 )    #整数
print '15:\t|{0:%}' . format ( 3.75 )
 
#输入形式的控制format
a = int ( raw_input ( 'a:' ))
b = int ( raw_input ( 'b:' ))
print '16:\t|%*.*f' % (a, b, 1.1415926 )
 
print '17:\t|{array[2]}' . format (array = range ( 10 ))
print '18:\t|{attr.__class__}' . format (attr = 0 )
print '19:\t|{digit:*^ 10.5f}' . format (digit = 1.0 / 3 )
 
'''
类和类型可以定义一个__format__()方法来控制怎样格式化自己。
它会接受一个格式化指示符作为参数:
'''
def __format__( self , format_spec):
  if isinstance (format_spec, unicode ):
   return unicode ( str ( self ))
  else :
   return str ( self )


转自:http://my.oschina.net/dillan/blog/133877

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值