Python3中使用:print()函數(shù)
創(chuàng)新互聯(lián)建站是專業(yè)的電白網(wǎng)站建設(shè)公司,電白接單;提供成都網(wǎng)站制作、網(wǎng)站設(shè)計、外貿(mào)網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行電白網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
用法(從IDLE幫助上復制):
print(...)
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
value即你要輸出的值(大多數(shù)類型均可),sep是這多個值用什么分割(默認為空格),end是這個輸出的末尾是什么(默認是換行)。
Python兩種輸出值的方式: 表達式語句和 print() 函數(shù)。第三種方式是使用文件對象的 write() 方法,標準輸出文件可以用 sys.stdout 引用。
如果你希望輸出的形式更加多樣,可以使用 str.format() 函數(shù)來格式化輸出值。如果你希望將輸出的值轉(zhuǎn)成字符串,可以使用 repr() 或 str() 函數(shù)來實現(xiàn)。
str(): 函數(shù)返回一個用戶易讀的表達形式。
repr(): 產(chǎn)生一個解釋器易讀的表達形式。
str.format() 的使用
讀取鍵盤輸入
Python 提供了 input() 內(nèi)置函數(shù),從標準輸入讀入一行文本,默認的標準輸入是鍵盤。
open() 用于打開一個文件,并返回文件對象,基本語法格式如下:
open(filename, mode='r')
完整的語法格式為:
open(filename, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
參數(shù)說明:
filename: 必需,文件路徑+文件名稱(相對或者絕對路徑)
mode: 可選,文件打開模式:只讀,寫入,追加等,默認模式為只讀(r)
buffering: 設(shè)置緩沖
encoding: 一般使用utf8
errors: 報錯級別
newline: 區(qū)分換行符
closefd: 傳入的file參數(shù)類型
opener: 設(shè)置自定義開啟器,開啟器的返回值必須是一個打開的文件描述符。
不同模式mode打開文件的說明:
t 文本模式 (默認的模式)
b 二進制模式,一般用于非文本文件如圖片等
x 寫模式,新建一個文件,如果該文件已存在則會報錯
+ 打開一個文件進行更新(可讀可寫)
r 以只讀方式打開文件。文件的指針將會放在文件的開頭。是默認模式。
rb 以二進制格式打開一個文件用于只讀。文件指針將會放在文件的開頭。
r+ 打開一個文件用于讀寫。文件指針將會放在文件的開頭。
rb+ 以二進制格式打開一個文件用于讀寫。文件指針將會放在文件的開頭。
w 打開一個文件只用于寫入。如果該文件已存在則打開文件,并從開頭開始編輯,即原有內(nèi)容會被刪除。如果該文件不存在,創(chuàng)建新文件。
wb 以二進制格式打開一個文件只用于寫入。如果該文件已存在則打開文件,并從開頭開始編輯,即原有內(nèi)容會被刪除。如果該文件不存在,創(chuàng)建新文件。
w+ 打開一個文件用于讀寫。如果該文件已存在則打開文件,并從開頭開始編輯,即原有內(nèi)容會被刪除。如果該文件不存在,創(chuàng)建新文件。
wb+ 以二進制格式打開一個文件用于讀寫。如果該文件已存在則打開文件,并從開頭開始編輯,即原有內(nèi)容會被刪除。如果該文件不存在,創(chuàng)建新文件。
a 打開一個文件用于追加。如果該文件已存在,文件指針將會放在文件的結(jié)尾,新的內(nèi)容將會被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進行寫入。
ab 以二進制格式打開一個文件用于追加。如果該文件已存在,文件指針將會放在文件的結(jié)尾,新的內(nèi)容將會被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進行寫入。
a+ 打開一個文件用于讀寫。如果該文件已存在,文件指針將會放在文件的結(jié)尾。文件打開時會是追加模式。如果該文件不存在,創(chuàng)建新文件用于讀寫。
ab+ 以二進制格式打開一個文件用于追加。如果該文件已存在,文件指針將會放在文件的結(jié)尾。如果該文件不存在,創(chuàng)建新文件用于讀寫。
f.write(string) 將 string 寫入到文件中, 然后返回寫入的字符數(shù)
f.writelines(sequence) 向文件寫入一個序列字符串列表,如果需要換行則要自己加入每行的換行符。
f.read(size) 讀取一定數(shù)目的數(shù)據(jù), 然后作為字符串或字節(jié)對象返回。size 是一個可選參數(shù)。當 size 參數(shù)忽略或者為負, 那么該文件的所有內(nèi)容都將被讀取并且返回。
f.readline() 從文件中讀取單獨的一行。換行符為 '\n'。讀取整行,包括 "\n" 字符。f.readline() 如果返回一個空字符串, 說明已經(jīng)讀取到最后一行。
f.readlines([sizeint])] 讀取所有行并返回列表類型,若給定sizeint0,返回總和大約為sizeint字節(jié)的行, 并且將這些字節(jié)按行分割。實際讀取值可能比 sizeint 較大, 因為需要填充緩沖區(qū)。
f.tell() 返回文件對象當前所處的位置, 它是從文件開頭開始算起的字節(jié)數(shù)。
f.seek() 移動文件讀取指針到指定位置,如果要改變文件當前的位置, 可以使用f.seek(offset, from_what) 函數(shù)。from_what 的值(默認為0), 如果是 0 表示開頭, 如果是 1 表示當前位置, 2 表示文件的結(jié)尾,例如:
seek(x,0) : 從起始位置即文件首行首字符開始移動 x 個字符
seek(x,1) : 表示從當前位置往后移動x個字符
seek(-x,2):表示從文件的結(jié)尾往前移動x個字符
file.flush() 刷新文件內(nèi)部緩沖,直接把內(nèi)部緩沖區(qū)的數(shù)據(jù)立刻寫入文件, 而不是被動的等待輸出緩沖區(qū)寫入
file.fileno() 返回一個整型的文件描述符(file descriptor FD 整型), 可以用在如os模塊的read方法等一些底層操作上
file.isatty() 如果文件連接到一個終端設(shè)備返回 True,否則返回 False
file.truncate([size]) 從文件的首行首字符開始截斷,截斷文件為 size 個字符,無 size 表示從當前位置截斷;截斷之后后面的所有字符被刪除,其中 windows 系統(tǒng)下的換行代表2個字符大小。
f.close() 關(guān)閉文件并釋放系統(tǒng)的資源。關(guān)閉后文件不能再進行讀寫操作,否則會拋出異常
當處理一個文件對象時, 使用 with 關(guān)鍵字是非常好的方式。在結(jié)束后, 它會幫你正確的關(guān)閉文件。 而且寫起來也比 try - finally 語句塊要簡短:
python的pickle模塊實現(xiàn)了基本的數(shù)據(jù)序列和反序列化。通過pickle模塊的序列化操作能夠?qū)⒊绦蛑羞\行的對象信息保存到文件中去,永久存儲。通過pickle模塊的反序列化操作能夠從文件中創(chuàng)建上一次程序保存的對象。
基本接口:
pickle.dump(obj, file, [,protocol])
有了 pickle 對象, 就能對 file 以讀取的形式打開:
x = pickle.load(file)
從 file 中讀取一個字符串,并將它重構(gòu)為原來的python對象。
示例:使用pickle模塊將數(shù)據(jù)對象保存到文件
示例:使用pickle模塊從文件中重構(gòu)python對象
print()函數(shù)用于打印輸出,是python中最常見的一個內(nèi)置函數(shù)。
print()函數(shù)的語法如下:
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)。
將"objects"打印輸出至"file參數(shù)"指定的文本流,以"sep參數(shù)"分隔開并在末尾加上"end參數(shù)"。"sep"、"end "、"file"和"flush"必須以關(guān)鍵字參數(shù)的形式給出。flush關(guān)鍵字參數(shù)是在phthon3.3版后增加的。
所有非關(guān)鍵字參數(shù)都會被轉(zhuǎn)換為字符串,就像是執(zhí)行了str()一樣,并會被寫入到流,以“sep參數(shù)“且在末尾加上“end參數(shù)“。“sep參數(shù)“和“end參數(shù)“都必須為字符串;它們也可以為“None“,這意味著使用默認值。如果沒有給出“objects參數(shù)“,則print()將只寫入“end參數(shù)“。
ython print()函數(shù):
print()方法用于打印輸出,最常見的一個函數(shù)。
在Python3.3版增加了flush關(guān)鍵字參數(shù)。
print在Python3.x是一個函數(shù),但在Python2.x版本不是一個函數(shù),只是一個關(guān)鍵字。
Python函數(shù)的參數(shù)類型主要包括必選參數(shù)、可選參數(shù)、可變參數(shù)、位置參數(shù)和關(guān)鍵字參數(shù),本文介紹一下他們的定義以及可變數(shù)據(jù)類型參數(shù)傳遞需要注意的地方。
必選參數(shù)(Required arguments)是必須輸入的參數(shù),比如下面的代碼,必須輸入2個參數(shù),否則就會報錯:
其實上面例子中的參數(shù) num1和num2也屬于關(guān)鍵字參數(shù),比如可以通過如下方式調(diào)用:
執(zhí)行結(jié)果:
可選參數(shù)(Optional arguments)可以不用傳入函數(shù),有一個默認值,如果沒有傳入會使用默認值,不會報錯。
位置參數(shù)(positional arguments)根據(jù)其在函數(shù)定義中的位置調(diào)用,下面是pow()函數(shù)的幫助信息:
x,y,z三個參數(shù)的的順序是固定的,并且不能使用關(guān)鍵字:
輸出:
在上面的pow()函數(shù)幫助信息中可以看到位置參數(shù)后面加了一個反斜杠 / ,這是python內(nèi)置函數(shù)的語法定義,Python開發(fā)人員不能在python3.8版本之前的代碼中使用此語法。但python3.0到3.7版本可以使用如下方式定義位置參數(shù):
星號前面的參數(shù)為位置參數(shù)或者關(guān)鍵字參數(shù),星號后面是強制關(guān)鍵字參數(shù),具體介紹見強制關(guān)鍵字參數(shù)。
python3.8版本引入了強制位置參數(shù)(Positional-Only Parameters),也就是我們可以使用反斜杠 / 語法來定義位置參數(shù)了,可以寫成如下形式:
來看下面的例子:
python3.8運行:
不能使用關(guān)鍵字參數(shù)形式賦值了。
可變參數(shù) (varargs argument) 就是傳入的參數(shù)個數(shù)是可變的,可以是0-n個,使用星號( * )將輸入?yún)?shù)自動組裝為一個元組(tuple):
執(zhí)行結(jié)果:
關(guān)鍵字參數(shù)(keyword argument)允許將任意個含參數(shù)名的參數(shù)導入到python函數(shù)中,使用雙星號( ** ),在函數(shù)內(nèi)部自動組裝為一個字典。
執(zhí)行結(jié)果:
上面介紹的參數(shù)可以混合使用:
結(jié)果:
注意:由于傳入的參數(shù)個數(shù)不定,所以當與普通參數(shù)一同使用時,必須把帶星號的參數(shù)放在最后。
強制關(guān)鍵字參數(shù)(Keyword-Only Arguments)是python3引入的特性,可參考:。 使用一個星號隔開:
在位置參數(shù)一節(jié)介紹過星號前面的參數(shù)可以是位置參數(shù)和關(guān)鍵字參數(shù)。星號后面的參數(shù)都是強制關(guān)鍵字參數(shù),必須以指定參數(shù)名的方式傳參,如果強制關(guān)鍵字參數(shù)沒有設(shè)置默認參數(shù),調(diào)用函數(shù)時必須傳參。
執(zhí)行結(jié)果:
也可以在可變參數(shù)后面命名關(guān)鍵字參數(shù),這樣就不需要星號分隔符了:
執(zhí)行結(jié)果:
在Python對象及內(nèi)存管理機制中介紹了python中的參數(shù)傳遞屬于對象的 引用傳遞 (pass by object reference),在編寫函數(shù)的時候需要特別注意。
先來看個例子:
執(zhí)行結(jié)果:
l1 和 l2指向相同的地址,由于列表可變,l1改變時,l2也跟著變了。
接著看下面的例子:
結(jié)果:
l1沒有變化!為什么不是[1, 2, 3, 4]呢?
l = l + [4]表示創(chuàng)建一個“末尾加入元素 4“的新列表,并讓 l 指向這個新的對象,l1沒有進行任何操作,因此 l1 的值不變。如果要改變l1的值,需要加一個返回值:
結(jié)果:
下面的代碼執(zhí)行結(jié)果又是什么呢?
執(zhí)行結(jié)果:
和第一個例子一樣,l1 和 l2指向相同的地址,所以會一起改變。這個問題怎么解決呢?
可以使用下面的方式:
也可以使用淺拷貝或者深度拷貝,具體使用方法可參考Python對象及內(nèi)存管理機制。這個問題在Python編程時需要特別注意。
本文主要介紹了python函數(shù)的幾種參數(shù)類型:必選參數(shù)、可選參數(shù)、可變參數(shù)、位置參數(shù)、強制位置參數(shù)、關(guān)鍵字參數(shù)、強制關(guān)鍵字參數(shù),注意他們不是完全獨立的,比如必選參數(shù)、可選參數(shù)也可以是關(guān)鍵字參數(shù),位置參數(shù)可以是必選參數(shù)或者可選參數(shù)。
另外,python中的參數(shù)傳遞屬于對象的 引用傳遞 ,在對可變數(shù)據(jù)類型進行參數(shù)傳遞時需要特別注意,如有必要,使用python的拷貝方法。
參考文檔:
--THE END--
print函數(shù)是python語言中的一個輸出函數(shù),可以輸出以下幾種內(nèi)容
1. 字符串和數(shù)值類型 可以直接輸出
print(?1)
1
print(?"Hello?World")
Hello?World
2.變量
無論什么類型,數(shù)值,布爾,列表,字典...都可以直接輸出
x?=??12
print(x)
12
s?=??'Hello'
print(s)
Hello
L?=?[?1,?2,?'a']
print(L)
[?1,??2,??'a']
t?=?(?1,?2,?'a')
print(t)
(?1,??2,??'a')
d?=?{?'a':?1,??'b':?2}
print(d)
{?'a':??1,??'b':??2}
3.格式化輸出
類似于C中的 printf
s
'Hello'
x?=?len(s)
print(?"The?length?of?%s?is?%d"??%?(s,x)?)
The?length?of?Hello??is??5
【注意】
Python2和3的print函數(shù)格式不同,3要求加括號(print())
縮進最好使用4個空格
Python獲取幫助的3種方式
help()
help函數(shù)是Python的一個內(nèi)置函數(shù)。
函數(shù)原型:help([object])。
可以幫助我們了解該對象的更多信息。
dir()
dir函數(shù)是Python的一個內(nèi)置函數(shù)。
函數(shù)原型:dir([object])
可以幫助我們獲取該對象的大部分相關(guān)屬性。
_?doc_
在Python中有一個奇妙的特性,文檔字符串,又稱為DocStrings。
用它可以為我們的模塊、類、函數(shù)等添加說明性的文字,使程序易讀易懂,更重要的是可以通過Python自帶的標準方法將這些描述性文字信息輸出。
上面提到的自帶的標準方法就是_?doc?_。前后各兩個下劃線。
注:當不是函數(shù)、方法、模塊等調(diào)用doc時,而是具體對象調(diào)用時,會顯示此對象從屬的類型的構(gòu)造函數(shù)的文檔字符串。
本文標題:python輸出函數(shù)幫助,python如何輸出函數(shù)值
鏈接URL:http://chinadenli.net/article0/dsicdoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、靜態(tài)網(wǎng)站、網(wǎng)站設(shè)計公司、關(guān)鍵詞優(yōu)化、企業(yè)建站、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)