Python 格式化字符串小練習
1,代碼:
#coding:utf-8
#字符串格式化示例
#使用給定的寬度打印格式化後的價格列表
#-------------------------------------------------------------
# 1,使用星號(*)作爲字符寬度或者精度(或者兩者都使用*),此時數值會從元祖參數中讀出:
# 如:
# >>> '%.*s' % (5,'Guido van Rossum')
# 'Guido'
# >>> '%.*s' % (9,'Guido van Rossum')
# 'Guido van'
#2,減號(-)用來左對齊數值
# >>> from math import pi
# >>> '%-10.2f' % pi
# '3.14 '
# >>> '%10.2f' % pi
# ' 3.14'
# >>> '%+10.2f' % pi
# ' +3.14'
#3,空白('')意味着在正數前加上空格,在需要對齊正負數時會很有用:
# >>> print ('% 5d' % 10) + '\n' + ('% 5d' % -10)
# 10
# -10
#4,加號(+)表示不管是正數還是負數都標示出符號
# >>> print ('%+5d' % 10) + '\n' + ('%+5d' % -10)
# +10
# -10
#-----------------------------------------------------------
width = input('請輸入表格的寬度:')
price_width = 10
item_width = width - price_width
header_format = '%-*s%*s'
format = '%-*s%*.2f'
print '='*width
#打印表頭
print header_format %(item_width,'項目',price_width,'價格')
print '-' * width
print format % (item_width,'蘋果',price_width,6.0)
print format % (item_width,'桔子',price_width,3.2)
print format % (item_width,'香蕉',price_width,2.5)
print format % (item_width,'葡萄',price_width,14.8)
print format % (item_width,'紅提',price_width,15)
print format % (item_width,'西瓜',price_width,1.5)
print '='*width
2,輸出結果:
請輸入表格的寬度:30
==============================
項目 價格
------------------------------
蘋果 6.00
桔子 3.20
香蕉 2.50
葡萄 14.80
紅提 15.00
西瓜 1.50
==============================