溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python格式化輸出字符串的方法有哪些

發(fā)布時(shí)間:2023-03-02 10:40:48 來源:億速云 閱讀:117 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“Python格式化輸出字符串的方法有哪些”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

    Python 格式化輸出字符串(輸出字符串+數(shù)字的幾種方法)

    1. 介紹

    字符串格式化輸出是python非常重要的基礎(chǔ)語法。

    • 格式化輸出:內(nèi)容按照一定格式要求進(jìn)行輸出。

    2. 方法

    2.1 使用占位符%輸出

    python2.6版本之前,使用%格式化字符串沿用的是C語言的輸出格式。

    使用說明:

    • 一般格式:print(“格式化字符串” % 變量);

    • 變量超過2個(gè)使用元組格式:print(“格式化字符串” % (變量1,變量2));

    • 使用%占位符表示字符串中變量位置,傳入的值要與%占位符的變量一一對(duì)應(yīng);

    • 其中,%s表示字符串,%d表示整數(shù),%f表示小數(shù)(默認(rèn)保留小數(shù)點(diǎn)后6位,%.2f保留兩位小數(shù));

    • 存在格式化標(biāo)志時(shí),需要 %% 表示一個(gè)百分號(hào)。

    name='xiaoming'
    age=12
    print("My name is %s, My age is %d" %(name,age))
    
    '''print
    My name is xiaoming, My age is 12
    '''

    2.2 format格式化

    format是python2.6新增的一個(gè)格式化字符串的方法,相比%格式化方法有如下優(yōu)點(diǎn):

    • 單個(gè)參數(shù)可以多次輸出,參數(shù)順序可以不相同;

    • 填充方式十分靈活,對(duì)齊方式十分強(qiáng)大;

    • 官方推薦用的方式;

    使用說明:

    • print(“…{索引}, … , {索引}, …”.format(值1, 值2))

    • #索引{}為空,默認(rèn)按照順序取值print(“…{key1}, … , {key2}, …”.format(key1=value,key2=value))

    2.2.1 一般用法
    name = 'xiaoyang'
    age = 20
    print('My name is {}, My age is {}'.format(name,age))
    print('My name is {0}, My age is {1}'.format(name,age))
    print('My name is {1}, My age is {0}'.format(name,age))
    print('My name is {name}, My age is {age}'.format(name=name, age=age))
    
    '''print
    My name is xiaoyang, My age is 20
    My name is xiaoyang, My age is 20
    My name is 20, My age is xiaoyang
    My name is xiaoyang, My age is 20
    '''
    2.2.2 進(jìn)階用法
    • 填寫時(shí)要用冒號(hào)來開頭,填寫后,會(huì)按照其指定的規(guī)則來進(jìn)行格式化。

    #保留2位有效數(shù)字
    print("{:.2f}".format(3.1415926))
    
    #轉(zhuǎn)成二進(jìn)制
    print('{0:b}'.format(16))
    
    #轉(zhuǎn)成八進(jìn)制
    print('{0:o}'.format(10))
    
    #轉(zhuǎn)成十六進(jìn)制
    print('{0:x}'.format(15)) 
    
    '''print
    3.14
    10000
    12
    f
    '''

    2.2.2.1 填充對(duì)齊

    # 先取到值,然后在冒號(hào)后設(shè)定填充格式:{索引:[填充字符][對(duì)齊方式][寬度]}
    
    # *<20:左對(duì)齊,總共20個(gè)字符,不夠的用*號(hào)填充
    print('{0:*<20}'.format('hellopython'))
    
    # *>20:右對(duì)齊,總共20個(gè)字符,不夠的用*號(hào)填充
    print('{0:*>20}'.format('hellopython'))
    
    # *^20:居中顯示,總共20個(gè)字符,不夠的用*號(hào)填充
    print('{0:*^20}'.format('hellopython'))
    
    '''print
    hellopython*********
    *********hellopython
    ****hellopython*****
    '''

    2.2.2.2 位數(shù)與進(jìn)制轉(zhuǎn)換(注意不要忽略冒號(hào))

    #保留2位有效數(shù)字
    print("{:.2f}".format(3.1415926))
    
    #轉(zhuǎn)成二進(jìn)制
    print('{0:b}'.format(16))
    
    #轉(zhuǎn)成八進(jìn)制
    print('{0:o}'.format(10))
    
    #轉(zhuǎn)成十六進(jìn)制
    print('{0:x}'.format(15)) 
    
    '''print
    3.14
    10000
    12
    f
    '''

    2.3 f-string格式化

    在Python 3.6中引入了 f-strings,不僅比str.format使用簡(jiǎn)單,而且效率也更高。

    使用說明:

    • f-string是字符串前面加上 “f”,{}直接使用變量、表達(dá)式等。

    name='xiaoyang'
    
    age=20
    
    #{}中直接使用變量
    
    print(f'My name is {name}, My age is {age}')
    
    #{}中運(yùn)行表達(dá)式
    
    print(f'{1+2+3}')
    
    #調(diào)用Python內(nèi)置函數(shù)
    
    print(f'{name.upper()}')
    
    #用lambda匿名函數(shù):可以做復(fù)雜的數(shù)值計(jì)算
    
    fun = lambda x : x+1
    
    print(f'{fun(age)}')
    
    '''print
    My name is xiaoyang, My age is 20
    6
    XIAOYANG
    '''

    “Python格式化輸出字符串的方法有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

    向AI問一下細(xì)節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI