- 格式化字符串
方法一:
{}使用关键字参数, 然后把值指向该参数,注意定义参数时,建议使用“单前导下划线 _var”
name='paulwinflo' site='https://www.cnblogs.com/paulwinflo/' print('{_name}网址: {_site}'.format(_name=name, _site=site)) ##_name和_site为定义的参数 #>>>paulwinflo网址: https://www.cnblogs.com/paulwinflo/
方法二:
{}中使用数字用于指向传入对象在 format() 中的位置
name='paulwinflo' site='https://www.cnblogs.com/paulwinflo/' print('{0}网址: {1}'.format(name,site)) #>>>paulwinflo网址: https://www.cnblogs.com/paulwinflo/ print('{1}网址: {0}'.format(name,site)) #>>>https://www.cnblogs.com/paulwinflo/网址: paulwinflo
##当然 方法二与 方法一也能混合使用
print('{0}网址: {_site}'.format(name,_site=site)) #>>>paulwinflo网址: https://www.cnblogs.com/paulwinflo/
方法三:
{}中使用 : 和格式标识来格式化
salary_jack=3423.324 salary_paul=4423.524 print('jack salary is {0:.2f} and paul salary is {1:.2f} 。'.format(salary_jack,salary_paul)) ###其中“:”前面的数字为指向传入对象在 format() 中的位置 #>>>jack salary is 3423.32 and paul salary is 4423.52 。
print('jack salary is {:.2f} and paul salary is {1:.2f} 。'.format(salary_jack,salary_paul)) ###其中“:”前面的数字为指向传入对象在 format() 中的位置,0可缺省 #>>>jack salary is 3423.32 and paul salary is 4423.52 。
方法四:
传统的格式化字符串 %,不推荐使用
print('%s网址: %s'%(name,site)) ##_使用%来格式化 #>>>paulwinflo网址: https://www.cnblogs.com/paulwinflo/
常见的格式化标识符
以下几个常用的实例:
1.%d的使用
print "%+d" % (-5)
>>>-5 print "%+d" % (5)
>>>+5 print "%d%%" % (5)
>>>5%
2.%f的使用
print "%.4f" %(12345.667203) >>>12345.6672 print "%11.4f" %(12345.667203)##11表示包括“+”“-”"."以及所有数字所占的位数,若实际数字不足11位,则用空格表示,4表示小数点后保留的位数 >>> 12345.6672 print "%011.4f" %(12345.667203)##实际位数不足11位,用0表示 >>>012345.6672
- 格式化字典
方法一:
一个字典, 然后使用方括号 [] 来访问键值
table={ 'name':'paulwinflo','site':'https://www.cnblogs.com/paulwinflo/'} print('myname: {0[name]:s}; myweb: {0[site]:s}'.format(table)) #>>>myname: paulwinflo; myweb: https://www.cnblogs.com/paulwinflo/
方法二:
在字典前使用 **
table={ 'name':'paulwinflo','site':'https://www.cnblogs.com/paulwinflo/'} print('myname: {name:s}; myweb: {site:s}'.format(**table)) ##"**" 会把字典变为name=paulwinflo,site=https://www.cnblogs.com/paulwinflo/ #>>>myname: paulwinflo; myweb: https://www.cnblogs.com/paulwinflo/