格式化输出的几种方法 主要介绍format函数的用法

简介:

1 str自带函数格式化输出 rjust() ljust() center() zfill()


zfill是补齐零


介绍:

rjust(...)

    S.rjust(width[, fillchar]) -> string


给字符串格式化输出,对字符串本身不做处理,只是返回一个格式化过的字符串,可以指定字符串宽度,并且指定填充的字符,默认填充空格!


作用: 对齐输出


举例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
In [ 26 ]: s1 = "1"        
In [ 27 ]: s2 = "1234"     
In [ 28 ]: s1
Out[ 28 ]:  '1'
In [ 29 ]: s2
Out[ 29 ]:  '1234'
In [ 30 ]:  for  in  s1,s2:
    ....:      print  i
    ....:     
1
1234
 
#左对齐输出,不满长度为4的,默认填充空格
In [ 34 ]:  for  in  s1,s2:
    ....:      print  i.rjust( 4 )
    ....:     
    1
1234


#填充其他字符

1
2
In [ 35 ]: s1.rjust( 4 , "*" )
Out[ 35 ]:  '***1'


#补齐0

1
2
In [ 38 ]: s1.zfill( 4 )
Out[ 38 ]:  '0001'

等于

1
2
In [ 40 ]: s1.rjust( 4 , '0' )
Out[ 40 ]:  '0001'

2 浮点型指定宽度输出

1
2
3
4
In [ 36 ]:  1.0 / 3
Out[ 36 ]:  0.33333333333333331
In [ 37 ]:  "%.3f"  %  ( 1.0 / 3 )
Out[ 37 ]:  '0.333'


3 format函数格式化化输出,格式有点像C语言,替换变量

也是str自带函数,可以多用多用

它通过{}和:来代替%。


通过位置

1
2
In [ 48 ]:  print  '{0} is a {1}' . format ( 'cat' , 'animal' )
cat  is  a animal


1
2
In [ 49 ]:  print  '{1} is a {0}' . format ( 'cat' , 'animal'
animal  is  a cat


解释:{}的内容,会被format()中的参数代替,可以在'{}'里填写上数字来指定format()中的位置,但如果'{}'里面是key参数其中的内容会被format()中的value值代替

通过关键字参数

1
2
In [ 50 ]:  print  '{name} is a {age}' . format (name = 'andy' , age = 20 )  
andy  is  20


通过下标

1
2
3
In [ 56 ]: l  =  [ 'andy' 'good' ]
In [ 60 ]:  '{0[0]} {0[1]} {0[0]}' . format (l) 
Out[ 60 ]:  'andy good andy'


格式限定符

它有着丰富的的“格式限定符”(语法是{}中带:号),比如:

填充与对齐

填充常跟对齐一起使用

^、<、>分别是居中、左对齐、右对齐,后面带宽度

:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充

比如

1
2
3
4
5
6
In [ 15 ]:  '{:>8}' . format ( '189' )
Out[ 15 ]:  '   189'
In [ 16 ]:  '{:0>8}' . format ( '189' )
Out[ 16 ]:  '00000189'
In [ 17 ]:  '{:a>8}' . format ( '189' )
Out[ 17 ]:  'aaaaa189'

精度与类型f

精度常跟类型f一起使用

1
2
In [ 44 ]:  '{:.2f}' . format ( 321.33345 )
Out[ 44 ]:  '321.33'

其中.2表示长度为2的精度,f表示float类型。

其他类型

主要就是进制了,b、d、o、x分别是二进制、十进制、八进制、十六进制。

1
2
3
4
5
6
7
8
In [ 54 ]:  '{:b}' . format ( 17 )
Out[ 54 ]:  '10001'
In [ 55 ]:  '{:d}' . format ( 17 )
Out[ 55 ]:  '17'
In [ 56 ]:  '{:o}' . format ( 17 )
Out[ 56 ]:  '21'
In [ 57 ]:  '{:x}' . format ( 17 )
Out[ 57 ]:  '11'

用,号还能用来做金额的千位分隔符。

1
2
In [ 47 ]:  '{:,}' . format ( 1234567890 )
Out[ 47 ]:  '1,234,567,890'

本文转自残剑博客51CTO博客,原文链接http://blog.51cto.com/cuidehua/1770594如需转载请自行联系原作者

cuizhiliang
相关文章
|
6月前
|
自然语言处理 安全 C++
【C++ 格式化输出 】C++20 现代C++格式化:拥抱std--format简化你的代码
【C++ 格式化输出 】C++20 现代C++格式化:拥抱std--format简化你的代码
4268 1
|
5月前
getchar()函数的格式和使用方法
【6月更文挑战第24天】getchar()函数的格式和使用方法。
111 2
|
6月前
|
机器学习/深度学习 Python
关于python字符串format的一些花式用法_format带加号
关于python字符串format的一些花式用法_format带加号
|
索引 Python
format格式化输出语法详解
hello,这里是Token_w的文章,主要讲解python的基础学习,希望对大家有所帮助 整理不易,感觉还不错的可以点赞收藏评论支持,感谢!
108 0
|
SQL
format函数
format函数
145 0
|
开发者 Python
字符串的 format 方法|学习笔记
快速学习字符串的 format 方法
python格式化输出(一):%s和format()用法比较(二)
python格式化输出(一):%s和format()用法比较(二)
python格式化输出(一):%s和format()用法比较(二)
python格式化输出(一):%s和format()用法比较(一)
python格式化输出(一):%s和format()用法比较(一)
python格式化输出(一):%s和format()用法比较(一)
|
Python
Pyhon编程:format格式化字符串
Pyhon编程:format格式化字符串
112 0