python的字符串
python 3中,字符串是以u(píng)nicode編碼的,支持多語言。
chr()函數(shù),根據(jù)字符的整數(shù)表示轉(zhuǎn)化為相應(yīng)的字符。
ord()函數(shù),獲取字符的整數(shù)表示。
要計(jì)算str包含多少個(gè)字符,可以用len()函數(shù).
>>> len('ABC')
3
>>> len('中文')
2
\u為整數(shù)轉(zhuǎn)字符的轉(zhuǎn)義符。但是整數(shù)要用十六進(jìn)制表達(dá)。
以Unicode表示的str通過encode()方法可以編碼為指定的bytes
反過來,如果我們從網(wǎng)絡(luò)或磁盤上讀取了字節(jié)流,那么讀到的數(shù)據(jù)就是bytes。要把bytes變?yōu)閟tr,就需要用decode()方法:
>>> b'ABC'.decode('ascii')'ABC'>>> b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')'中文'
練習(xí)
小明的成績(jī)從去年的72分提升到了今年的85分,請(qǐng)計(jì)算小明成績(jī)提升的百分點(diǎn),并用字符串格式化顯示出'xx.x%',只保留小數(shù)點(diǎn)后1位:
# -*- coding: utf-8 -*-
s1 = 72
s2 = 85
r = (s2/s1-1)*100
print('成績(jī)提高比例是%.1f %%' %r)
%d輸出整形 %.2d 輸出整形時(shí)最少輸出2位,如不夠前面以0占位。如輸出2時(shí)變成02。200時(shí)只輸出200;輸出浮點(diǎn)型時(shí)(%.2f)小數(shù)點(diǎn)后強(qiáng)制2位輸出, %2d 輸出占2個(gè)位置,如輸出2時(shí),是一個(gè)空格和2,如200時(shí)輸出200 %02d 是8進(jìn)制的2。與2d相同。