<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          通過f-string編寫簡潔高效的Python格式化輸出代碼

          共 3144字,需瀏覽 7分鐘

           ·

          2024-06-15 17:00

             
          來源:DeepHub IMBA

          本文約1200字,建議閱讀3分鐘

          f-string是一個非常強(qiáng)大的字符串格式化技術(shù),可以優(yōu)雅地表達(dá)Python字符串。

          Python 3.6中引入的f-string是Python中最常用的特征之一,它可以讓我們編寫更干凈、更高效和更易于維護(hù)的代碼,我們今天就由淺入深來詳細(xì)介紹使用它的一些技巧。

          對齊文本

          在格式化輸出時,對齊對可讀性至關(guān)重要。無論是生成報告、記錄數(shù)據(jù)還是創(chuàng)建用戶界面,對齊的文本看起來都更干凈,更易于閱讀。

             
           variable = "some text"  print(f"|{variable:>30}|")  print(f"|{variable:<30}|")  print(f"|{variable:^30}|")

          也可以用選擇的其他的字符填充空格,例如:

           variable = "some text"  print(f"|{variable:*^30}|")

          這些選項提供了一種通用的方式來格式化文本輸出,使其更具可讀性和視覺吸引力。

          日期和時間格式

          處理日期和時間是編程中的一項常見任務(wù)。Python的datetime模塊為此提供了一組豐富的工具,f-strings可以更容易按照自己的喜好格式化日期和時間。

             
           from datetime import datetime now = datetime.now() print(f"Date: {now:%d-%m-%Y}") print(f"Time: {now:%H:%M:%S}") print(f"Locale's Date and Time: {now:%c}") print(f"Time in AM/PM format: {now:%I:%M %p}")


          自定義日期和時間信息的輸出,可以輕松地以人類可讀的格式顯示時間戳。

          帶分隔符的數(shù)字

          在代碼中處理數(shù)字可能會很麻煩,尤其是在可讀性很重要的時候。f-string中直接使用幾千分隔符來格式化大的數(shù)字:

             
           n = 1000000000 print(f"{n:_}") # Outputs: 1_000_000_000 print(f"{n:,}") # Outputs: 1,000,000,000

          在f-string中使用下劃線(_)或逗號(,)作為分隔符可以使數(shù)字更具可讀性。這種做法在處理財務(wù)數(shù)據(jù)、大型數(shù)據(jù)集或任何清晰度至關(guān)重要的應(yīng)用程序時特別有用。

          控制十進(jìn)制精度

          在處理浮點數(shù)時,小數(shù)位數(shù)的表示通常是至關(guān)重要的。f字符串提供了一種簡單的方法來實現(xiàn)這種精度。

           num = 13.234  print(f"{num:.2f}"# Result: 13.23


          將數(shù)字四舍五入以僅顯示小數(shù)點后兩位。也可以完全刪除小數(shù)點后十位:

           print(f"{num:.0f}") # Result: 13


          去掉小數(shù)點后的數(shù)位,就得到一個整數(shù)。還可以使用%符號打印百分比。

           value = 0.75321  print(f"{value:.2%}"# Output: 75.32%


          頁可以將它與千位分隔符配對:?

           num = 13.234  print(f"{num:,.2%}"# Result: 1,323.40%


          這種特性的組合在科學(xué)研究、金融和任何需要精確控制數(shù)字格式的情況下特別有用。


          快速調(diào)試內(nèi)聯(lián)表達(dá)式

          f-strings可以使調(diào)試過程更容易。不需要編寫多行來顯示變量值,可以直接在f-string中包含表達(dá)式進(jìn)行快速檢查,并且可以利用花括號內(nèi)的等號(=)來同時顯示表達(dá)式及其結(jié)果。

             
           from dataclasses import dataclass @dataclass class Person:    name: str    age: int  person1 = Person(name="Alice", age=30) person2 = Person(name="Bob", age=25)  print(f"{person1.name = }, age {person1.age = }, {person2.name = }, age {person2.age = }")

          f-string中的條件表達(dá)式

          也可以直接在f - string中使用條件表達(dá)式。這可以方便地創(chuàng)建更動態(tài)的輸出,而不必編寫單獨的條件語句。

           score = 85  print(f"Your score is {score}, which is {'passing' if score >= 50 else 'failing'}.")


          這一行代碼檢查score的值,并在字符串中包含適當(dāng)?shù)奈谋?。這是在字符串格式中添加條件邏輯的一種簡明方法。


          總結(jié)

          f-string是一個非常強(qiáng)大的字符串格式化技術(shù),可以優(yōu)雅地表達(dá)Python字符串。它可以通過一個迷你語法滿足我們基本上的所有要求,甚至運行字符串的表達(dá)式。這對于我們?nèi)粘5拈_發(fā)是非常有幫助的。

          官方文檔:

          https://docs.python.org/3/reference/lexical_analysis.html#f-strings


          編輯:黃繼彥

          瀏覽 90
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  成人毛片18女人毛片免费黑人看 | 国内精品久久久久久久久久久 | 色在线视频网 | 午夜性福利视频 | 亚洲男人的天堂网 |