#!/usr/bin/env python # -*- coding:utf-8 -*-# 百分號格式化 # %[(name)[flags][width].[precision]]typecode # name : 指定占位符的key # flags : + - 空格 0 # width : 寬度 # precision : 小數點后保留的位數 # typecode : 必需,數據類型 # 字符串里面有%的時候, %%表示一個 %字符串 s = "i am %s,age %d" % ("guolei", 18) print(s)s = "i am %(n1)+10s,age %(n2)+10d" % {"n1": "alex", "n2": 18} print(s)s = "i am %.2f sdfsd" % 1.2 print(s)# Format格式化 # [[fill]align][sign][#][0][width][,][.precision][type] # fill 空白處填充的字符 # align 對齊方式 < > = ^ # sign 有無符號數字 +:正號加正,負號加負,-:正號不變,負號加負,空格:正號空格,負號加負 # 對于2,8,16進制,如果加上#,會顯示 0b/0o/0x,否則不顯示 # , 為數字添加分隔符,1,000,000 # width 寬度 # .precision 小數保留精度 # type 格式化類型 s = "i am {:.2%}asdf".format(12) print(s)s = "i am {},age {},{}".format("alex", 18, "guolei") s = "i am {},age {},{}".format(*["alex", 18, "guolei"]) s = "i am {0},age {1},{0}".format(*["alex", 18]) s = "i am {name},age {age},{name}".format(name="alex", age=18) s = "i am {name},age {age},{name}".format(**{"name": "alex", "age": 18}) s = "i am {0[0]},age {0[1]},{0[2]}".format([1, 2, 3], [4, 5, 6]) s = "i am {:s},age {:d},{:f}".format("alex", 18, 2.222) s = "i am {name:s},age {age:d},{num:f}".format(name="alex", age=18, num=1.22) s = "i am {name:s},age {age:d},{num:f}".format(**{"name": "alex", "age": 18, "num": 1.22}) s = "i am {:#b},age {:o},{:x}".format(10, 10, 18) print(s) s = "i am {0[0]},age {0[1]}".format(["alex", 18]) print(s)
?