python之format函数学习

xiaoxiao2021-02-28  98

    从2.6之后的版本开始以后,format这个神奇的函数就出现了,到2.7进一步发展壮大,当然,2.7依旧是现在我的主流版本,暂时不想更换成3.x版本的,在format出现之前,我们做系统日志的都是用“%”来格式化表示字符串的,现在可以多一个选择了,不过format的确很强大好用,这里简单记录一下学习的实践过程,参考了一下网上的博客信息会在最后面给出来链接:

    下面这段话很详细简明的概要了format函数,来源于这里:

花括号声明{}、用于渲染前的参数引用声明, 花括号里可以用数字代表引用参数的序号, 或者 变量名直接引用。 从format参数引入的变量名 、 冒号:、 字符位数声明、 空白自动填补符 的声明 千分位的声明 变量类型的声明: 字符串s、数字d、浮点数f 对齐方向符号 < ^ > 属性访问符中括号 ☐ 使用惊叹号!后接a 、r、 s,声明 是使用何种模式, acsii模式、引用__repr__ 或 __str__ 增加类魔法函数__format__(self, format) , 可以根据format前的字符串格式来定制不同的显示, 如: ’{:xxxx}’ 此时xxxx会作为参数传入__format__函数中。     具体的实践如下:

#!usr/bin/env python #encoding:utf-8 ''' __Author__:沂水寒城 功能:python之format函数学习 ''' import math def format_func_test(): #通过下标指定各个位置字符串的数值 print '{0}, {1}, {2}, {3}'.format('沂','水','寒','城') #在python2.7及以后版本(我使用的就是2.7)可以赋空值 print '{}, {}, {}, {}'.format('沂','水','寒','城') #可以等比与字典 print '{Id}, {name}'.format(Id='20123456',name='沂水寒城') #使用列表 print '{0[0]}, {0[1]}, {0[2]}, {0[3]}'.format(['沂','水','寒','城']) #字符填充对齐,填充为20位,不足位用*填充 print '{:*>20}'.format('WeAreFamily!!!') #保留小数点后指定位数,对圆周率取小数点后10位 print '{:.10f}'.format(math.pi) #数值之间的进制转换,参数b,d,o,x分别表示:二进制、十进制、八进制、十六进制 tmp_num=15 print '{:b}'.format(tmp_num) print '{:d}'.format(tmp_num) print '{:o}'.format(tmp_num) print '{:x}'.format(tmp_num) #最后一个有意思的东西,使用,可以做金额的千位分隔符 print '{:,}'.format(88488884488480) format_func_test() 结果为:

沂, 水, 寒, 城 沂, 水, 寒, 城 20123456, 沂水寒城 沂, 水, 寒, 城 ******WeAreFamily!!! 3.1415926536 1111 15 17 f 88,488,884,488,480 [Finished in 0.4s]

    很有意思,相信之后会更多使用format函数!

参考:

http://www.cnblogs.com/ToDoToTry/p/5635863.html

http://www.cnblogs.com/alan-babyblog/p/5227098.html

转载请注明原文地址: https://www.6miu.com/read-26045.html

最新回复(0)