首页 > 编程 > Python > 正文

[Python学习笔记]3——强大的.format

2019-11-08 03:04:23
字体:
来源:转载
供稿:网友

记录下平时发现的能简化编程的函数、语法和格式等。

巧用.format

发现有这个语法简直如获珍宝!!!下面是一些运用举例

一、替换

A、 对应序号替换 大括号内为索引序号,format内参数一一对应变量要替换的内容

>>>'hello{0}_s{1}_s{2}_s{3}'.format('!','A','B','C')'hello!_sA_sB_sC'>>> 'hello{0}_s{2}_s{1}_s{0}'.format('!','A','B','C')'hello!_sB_sA_s!'>>> 'hello{0}_s{2}_s{1}_s{3[0]} {3[1]}'.format('!','A','B',['C','!'])'hello!_sB_sA_sC !'

B、对应变量替换

>>>'hello{x}_s{y}_s{z}_s{r}'.format(x='!',y='A',z='B',r='C')'hello!_sA_sB_sC'

C、默认按顺序替换

>>> 'hello{}_s{}_s{}_s{}'.format('!','A','B','C')'hello!_sA_sB_sC'

二、指定格式

结合:使用 A、指定精度 结合f 使用

>>> '{:.3f}'.format(4.158347)'4.158'>>> '{:.5f}'.format(4.158347)'4.15835'>>> '{:.1f}'.format(4.158347)'4.2'

B、指定进制 b、d、o、x分别表示二进制、十进制、八进制、十六进制

>>> '{:b}'.format(23)'10111'>>> '{:d}'.format(23)'23'>>> '{:o}'.format(23)'27'>>> '{:x}'.format(23)'17'

C、指定对齐方式 ^、<、>分别是居中、左对齐、右对齐,后面带宽度,默认用0 填充,可指定填充方式

>>> '{:^10}'.format('abc')' abc '>>> '{:<10}'.format('abc')'abc '>>> '{:>10}'.format('abc')' abc'>>> '{:2>10}'.format('abc')'2222222abc'

三、定义对象属性

class Person: def __init__(self,name,age): self.name,self.age = name,age def __str__(self): return 'This guy is {self.name},is {self.age} old'.format(self=self) >>>str(Person('kzc',18)) 'This guy is kzc,is 18 old'

Reference

http://blog.csdn.net/handsomekang/article/details/9183303 http://www.cnblogs.com/dplearning/p/5702008.html

转载请注明出处CSDN 滴滴答滴答:http://blog.csdn.net/sinat_31824577/article


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表