python中print格式化輸出的問題

前言

福寶們,下午好啊。改版後的第4.5章閱讀量有點少呀,不知道是不是拖更瞭一天的緣故。嗚嗚嗚,以後一定要做個不拖更的好熊,所以今天繼續爆肝第五章:print格式化輸出。在寫第三章的時候用到過其中一種: ” f … {} ” 的組合。之前的評論下面有小夥伴疑惑,那今天就來詳細講解一下這個東西,另外還有其他格式化的方式。那我們開始今天的學習吧。

提示:以下是本篇文章正文內容,下面案例可供參考

一、f-String格式化

所謂格式化輸出,就是創建一個可以嵌入變量內容的字符串。如果不進行格式化,變量名就會被直接打印出來,發揮不瞭他的作用。所以我們現在開始講之前用到的:f-String格式化。這個上面也說過,格式: f” … {} … “,其中你要在字符串裡調用變量,需要把變量寫在 ” { } ” 中,字符串的開頭還要寫個 ” f ” 。f 就代表著format,也就是格式化的意思。這個組合是固定的,缺一不可,你寫出瞭 ” f “,就相當於告訴瞭python,這是一個已經格式化的字符串。python就會去看那些變量,當然你要是前面寫瞭f,中間沒有寫中括號,也是可以正常執行的。隻不過沒有去調用變量。

name = "癡月熊"
name2 = "憨憨熊"
age = 18
age2 = 19
print(f"{name}:下午好各位,我是{name},{age}的文藝小青年。這是我鐵子{name2},他{age2},請多關照")
print(f"{name2}:嗷嗷嗷~")

RUN:

癡月熊:下午好各位,我是癡月熊,18的文藝小青年。這是我鐵子憨憨熊,他19,請多關照
憨憨熊:嗷嗷嗷~

二、占位符

首先還是看個表,常見的占位符號

符號 意義
%d 整數
%f 浮點數
%s 字符串

占位符,顧名思義。就是在一段字符串中占一個位置,然後引用變量插進來。具體格式是 print(“…%d…” % (變量)),下面還是直接通過練習來看一下效果。

name = "憨憨熊"
once = 1
num = 4.2
print("%s 最喜歡的事情就是打遊戲,他最擅長的還是動作冒險類" % name)
print("魂鬥羅他甚至隻需要 %d 條命就可以通關" % once)
print("即使他兩個眼睛都已經%f度瞭,還是不能放下遊戲機" %num)

RUN:

憨憨熊 最喜歡的事情就是打遊戲,他最擅長的還是動作冒險類
魂鬥羅他甚至隻需要 1 條命就可以通關
即使他兩個眼睛都已經4.200000度瞭,還是不能放下遊戲機

效果就是這樣啦,當然也可以放在一起試一下。

name = "憨憨熊"
once = 1
num = 4.2
print("""
%s 最喜歡的事情就是打遊戲,他最擅長的還是動作冒險類.
魂鬥羅他甚至隻需要 %d 條命就可以通關.
即使他兩個眼睛都已經%f度瞭,還是不能放下遊戲機
""" % (name,once,num))

RUN:

憨憨熊 最喜歡的事情就是打遊戲,他最擅長的還是動作冒險類.
魂鬥羅他甚至隻需要 1 條命就可以通關.
即使他兩個眼睛都已經4.200000度瞭,還是不能放下遊戲機

使用占位符的時候,一定要想好變量的數據類型,如果你寫瞭個%d,結果你放瞭個字符串進去就會報錯。當然數字也可以作為字符串,你寫成%s也可以執行。不過為瞭方便瀏覽,最好根據數據類型填入相應的占位符。另外如果你占位符是%d,你放瞭個浮點型進去,他就會給你強制轉換為整數,反之也是一樣的。如下:

num1 = 4.2
num2 = 4
print("%d" % num1)
print("%f" % num2)

RUN:

4
4.000000

三、format格式化

第三種就是利用format函數,在python裡也叫方法。基本語法是在字符串中寫入 ” {} “,最後再字符串的末尾調用.format方法,將變量插入到{}。看起來是不是像f-string格式化,format格式化是在python2.6更新的,而f-string是在python3.6。當然個人認為這個用起來不太舒服,還是上面兩個好用點。有很多時候,想要插入變量,都要在後面寫一大堆參數。好麻煩! 以下就是效果啦。

name1 = "癡月熊"
name2 = "憨憨熊"
time = 12
num = 2
print("此時半夜{}點:\"嗚嗚嗚, {}.\"".format(time,name1))
print("{name2},大晚上{time}點的,你在瞎叫啥".format(time=time, name2=name2))
print("我居然花瞭{}條命才過這個關卡".format(num))
print(f"{name1}心裡獨白:這玩意能一條命就過去的才不是正常熊吧。".format(name1=name1))
print("<瑪麗奧制造>....")

RUN:

此時半夜12點:”嗚嗚嗚, 癡月熊.”
憨憨熊,大晚上12點的,你在瞎叫啥
我居然花瞭2條命才過這個關卡
癡月熊心裡獨白:這玩意能一條命就過去的才不是正常熊吧。
<瑪麗奧制造>….

總結

我個人很喜歡用f-string格式化,不過還是得帶大傢瞭解一下。今天這章是和4.5是一塊寫的,一起收集的資料和練習來著。總結的話,我可以把上一章總結復制過來嘛,好的吧,那今天的總結就是奧利給!又是充滿激情的一天,溜瞭溜瞭~

到此這篇關於python中print格式化輸出的文章就介紹到這瞭,更多相關python print格式化輸出內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀:

    None Found