例如,有一个字典如下:
> dic = { "name": "botoo", "url": "//www.jb51.net", "page": "88", "isNonProfit": "true", "address": "china", }
想要得到的输出结果如下:
name:botoo
url:https:www.jb51.net
page:88
isNonProfit:ture
address:china
首先获取字典的最大值max(map(len, dic.keys()))
然后使用
Str.rjust() 右对齐
或者
Str.ljust() 左对齐
或者
Str.center() 居中的方法有序列的输出。
> dic = { "name": "botoo", "url": "//www.jb51.net", "page": "88", "isNonProfit": "true", "address": "china", } > > d = max(map(len, dic.keys())) #获取key的最大值 > > for k in dic: print(k.ljust(d),":",dic[k]) name : botoo url : //www.jb51.net page : 88 isNonProfit : true address : china > for k in dic: print(k.rjust(d),":",dic[k]) name : botoo url : //www.jb51.net page : 88 isNonProfit : true address : china > for k in dic: print(k.center(d),":",dic[k]) name : botoo url : //www.jb51.net page : 88 isNonProfit : true address : china >
关于 str.ljust()的用法还有这样的;
> s = "adc" > s.ljust(20,"+") 'adc+++++++++++++++++' > s.rjust(20) 'adc' > s.center(20,"+") '++++++++adc+++++++++' >
知识点扩展:
python中对字符串的对齐操作
ljust()、rjust() 和 center()函数分别表示左对齐、右对齐、居中对齐
str.ljust(width[, fillchar]):左对齐,width -- 指定字符串长度,fillchar -- 填充字符,默认为空格;
str.rjust(width[, fillchar]):右对齐,width -- 指定字符串长度,fillchar -- 填充字符,默认为空格;
str.center(width[, fillchar]):居中对齐,width -- 字符串的总宽度,fillchar -- 填充字符,默认为空格。
test = 'hello world' print(test.ljust(20)) print(test.ljust(20, '*')) print(test.rjust(20, '*')) print(test.center(20, '*')) print(test.center(20)) #输出结果如下: hello world********* *********hello world ****hello world***** hello world