python手記(3)------字符串
阿新 • • 發佈:2017-07-15
原來 args pri 限定符 style 分別是 金額 居中對齊 rep
1.字符串格式化----%
原來的%:
In[2]: a=‘my name is %s and my age is %d‘%(‘eric‘,26) In[3]: a Out[3]: ‘my name is eric and my age is 26‘
占位符%:為真實值預留位置,並控制顯示的格式。占位符可以包含有一個類型碼,用以控制顯示的類型,常用如下:
%s 字符串 (采用str()的顯示)
%r 字符串 (采用repr()的顯示)
%c 單個字符
%b 二進制整數
%d 十進制整數
%i 十進制整數
%o 八進制整數
%x 十六進制整數
%e 指數 (基底寫為e)
%E 指數 (基底寫為E)
%f 浮點數
%F 浮點數,與上相同
%g 指數(e)或浮點數 (根據顯示長度)
%G 指數(E)或浮點數 (根據顯示長度)
2.字符串格式化---format:
字符串的format函數可以接受不限個參數,位置可以不按順序,可以不用或者用多次。
新的,提倡的format方法:s.format(*args,**kwargs)
In[6]: print(‘my name is {0} and my age is {1}‘.format(‘song ruiwen‘,26)) my name issong ruiwen and my age is 26
print(‘my name is {name} and my age is {age} ‘.format(name=‘eric‘,age=26)) my name is eric and my age is 26
格式限定符:對應於%s, 控制類型和顯示方式。
1.填充對齊方式::[填充字符][對齊方式 <^>][寬度]:
^、<、>分別是居中、左對齊、右對齊,後面帶寬度
:號後面帶填充的字符,只能是一個字符,不指定的話默認是用空格填充
>>> ‘{0:*>10}‘.format(10) ##右對齊 ‘********10‘ >>> ‘{0:*<10}‘.format(10) ##左對齊 ‘10********‘ >>> ‘{0:*^10}‘.format(10) ##居中對齊 ‘****10****‘
2.精度與類型
b、d、o、x分別是二進制、十進制、八進制、十六進制。
>>> ‘{0:.2f}‘.format(1/3) ‘0.33‘ >>> ‘{0:b}‘.format(10) #二進制 ‘1010‘ >>> ‘{0:o}‘.format(10) #八進制 ‘12‘ >>> ‘{0:x}‘.format(10) #16進制 ‘a‘ >>> ‘{:,}‘.format(12369132698) #千分位格式化 ‘12,369,132,698‘
用,號還能用來做金額的千位分隔符。
In [47]: ‘{:,}‘.format(1234567890) Out[47]: ‘1,234,567,890‘
python手記(3)------字符串