孤荷凌寒自學python第九天Python的輸出print的格式化
孤荷凌寒自學python第九天Python的輸出print的格式化
(完整學習過程螢幕記錄視訊地址在文末,手寫筆記在文末)
(今天感覺手寫筆記整得清楚些,彙總電子 筆記時,自己思路凌亂了,練習過程也還比較清楚,建議看下視訊,如有錯誤,感謝指導,謝謝。)
使用print輸出各型的
字串
整數
浮點數
精度控制
一般使用是這樣的:
>>>strA = '你好,孤荷凌寒'
>>>print(strA)
你好,孤荷凌寒
#直接格式化字串
1.格式化輸出(具體說明我的手寫筆記上的圖示比較清楚)
python print也支援引數格式化,與C言的printf似,
例:
>>>strB = "字串:(%s) 的長度是 %d 個字。" %('孤荷凌寒的QQ號碼是:578652607',len('孤荷凌寒的QQ號碼是:578652607'))
>>>print(strB)
字串:(孤荷凌寒的QQ號碼是:578652607) 的長度是 20 個字。
2.格式化輸出16制整數
nHex = 0x20
%x --- hex 十六進位制
%d --- dec 十進位制
%d --- oct 八進位制
例:
>>>print("nHex = %x,nDec = %d,nOct = %o" %(nHex,nHex,nHex))
nHex = 20,nDec = 32,nOct = 40
#使用整數的各種進位制列印同一個數
如果需要輸出二進位制的話,可以使用python函式 bin()
>>> bin(789)
'0b1100010101'
3.格式化輸出浮點數(float)(具體說明我的手寫筆記上的圖示比較清楚)
import math
#輸出為浮點數
>>>print("PI = %f" % math.pi)
#字元填充寬度 = 10,小數位數長度 = 3,對齊方式= 左對齊
>>>print("PI = %10.3f" % math.pi)
#字元填充寬度 = 10, 小數位數長度 = 3,對齊方式 = 右對齊
>>>print("PI = %-10.3f" % math.pi)
#前面填充字元
>>>print("PI = %06d" % int(math.pi))
PI = 3.141593
PI = 3.142
PI = 3.142
PI = 000003
4.格式化輸出字串(string) (具體說明我的手寫筆記上的圖示比較清楚)
#字串長度 = 3
Print("%.3s " % ("abcdef"))
#字串長度 = 4
Print("%.*s" % (4,"abcdef"))
#字元填充寬度 = 10,字串長度 = 3
Print("%10.3s" % ("abcdef"))
#輸出結果:
#abc
#abcd
# abc
5.輸出列表(list)
>>>l = [1,2,3,4,'jcodeer']
>>>print(l)
[1, 2, 3, 4, 'jcodeer']
#於list直接列印即可
5.python print自動換行
print 會自動在行末加上回車,如果不需回車,只需在print語句的結尾新增一個逗號【,】,就可以改變它的行為。
for i in range(0,5):
print(i,)
或直接使用下面的函式進行輸出:
sys.stdout.write("輸出的字串")
7. 萬能的 %r
%r是一個萬能的格式符,它會將後面給的引數原樣打印出來,帶有型別資訊。
python print %r 案例
formatter = "%r %r %r %r"
print(formatter % (1, 2, 3, 4))
print(formatter % ("one", "two", "three", "four"))
print(formatter % (True, False, False, True))
print(formatter % (formatter, formatter, formatter, formatter))
print(formatter % (
"孤荷凌寒熱愛程式設計,",
"認為程式設計是世界上最有意思的事情。",
"但是這很苦,",
"還是堅持下來了。"
))
輸出結果:
$ python ghlh.py
1 2 3 4
'one' 'two' 'three' 'four'
True False False True
'%r %r %r %r' '%r %r %r %r' '%r %r %r %r' '%r %r %r %r'
'孤荷凌寒熱愛程式設計,' '認為程式設計是世界上最有意思的事情。' "但是這很苦," '還是堅持下來了。'
——————————
今天整理的學習筆記完成,最後例行說明下我的自學思路:
根據過去多年我自學各種程式語言的經歷,認為只有真正體驗式,解決實際問題式的學習才會有真正的效果,即讓學習實際發生。在2004年的時候我開始在一個鄉村小學自學電腦 並學習vb6程式語言,沒有學習同伴,也沒有高師在上,甚至電腦都是孤島(鄉村那時還沒有網路),有的只是一本舊書,在痛苦的自學摸索中,我找到適應自己零基礎的學習方法:首先是每讀書的一小節就作相應的手寫筆記,第二步就是上機測試每一個筆記內容是否實現,其中會發現書中講的其實有出入或錯誤,第三步就是在上機測試之後,將筆記改為電子版,形成最終的修訂好的正確無誤的學習筆記 。
通過反覆嘗試錯誤,在那個沒有分享與交流的黑暗時期我摸黑學會了VB6,爾後接觸了其它語言,也曾聽過付費視訊課程,結果發現也許自己學歷果然太低,就算是零基礎的入門課程,其實也難以跟上進度,講師的教學多數出現對初學者的實際情況並不瞭解的情況,況且學習者的個體也存在差異呢?當然更可怕的是收費課程的價格往往是自己難以承受的。
於是我的所有程式設計學習都改為了自學,繼續自己的三步學習筆記法的學習之路。
當然自學的最大問題是會走那麼多的彎路,沒有導師直接輸入式的教學來得直接,好在網路給我們帶來無限搜尋的機會,大家在網路上的學習日誌帶給我們共享交流的機會,而QQ群等交流平臺、網路社群的成立,我們可以一起自學,互相批評交流,也可以獲得更有效,更自主的自學成果。
於是我以人生已過半的年齡,決定繼續我的程式設計自學之路,開始學習python,只希望與大家共同交流,一個人的獨行是可怕的,只有一群人的共同前進才是有希望的。
誠摯期待您的交流分享批評指點!歡迎聯絡我加入從零開始的自學聯盟。
這個時代網際網路成為了一種基礎設施的存在,於是本來在孤獨學習之路上的我們變得不再孤獨,因為網路就是一個新的客廳,我們時刻都可以進行沙龍活動。
非常樂意能與大家一起交流自己自學心得和發現,更希望大家能夠對我學習過程中的錯誤給予指點——是的,這樣我就能有許多免費的高師了——這也是分享時代,社群時代帶來的好福利,我相信大家會的,是吧!
根據完全共享的精神,開源互助的理念,我的個人自學錄製過程是全部按4K高清視訊錄製的,從手寫筆記到驗證手寫筆記的上機操作過程全程錄製,但因為4K高清檔案太大均超過5G以上,所以無法上傳至網路,如有需要可聯絡我QQ578652607對傳,樂意分享。上傳分享到百度網盤的只是壓縮後的720P的視訊。
我的學習過程錄影百度盤地址分享如下:(清晰度:1280x720)
連結:https://pan.baidu.com/s/1r-y1Nw0yEMsgyWkHt7LIdQ 密碼:2mk9
Bilibili:
https://www.bilibili.com/video/av35710950/
喜馬拉雅語音筆記: