溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python零基礎入門學習之輸入與輸出

發(fā)布時間:2020-09-09 05:04:24 來源:腳本之家 閱讀:116 作者:Happy丶Liu 欄目:開發(fā)技術

簡介

在之前的編程中,我們的信息打印,數(shù)據(jù)的展示都是在控制臺(命令行)直接輸出的,信息都是一次性的沒有辦法復用和保存以便下次查看,今天我們將學習Python的輸入輸出,解決以上問題。

復習

得到輸入用的是input(),完成輸出用的是print(),之前還有對字符串的操作,這些我們都可以使用help()命令來查看具體的使用方法。

文件

在Python2的時候使用的是file來創(chuàng)建一個file類,對它進行操作。Python3中去掉了這個類(我沒有查到,只是猜測),使用open來打開一個文件,返回一個IO的文本包裝類,之后我們使用這個類的方法對它進行操作。

Python零基礎入門學習之輸入與輸出

使用文件

poem = '''\
Programming is fun
when the work is done
if you wanna make your work also fun:
use Python!
'''
#poem1 = '''liu'''
#讀模式('r')、寫模式('w')或追加模式('a')。
#如果有文件就讀取,沒有就創(chuàng)建
f = open('poem.txt','w')
#f = open('poem.txt','a')
f.write(poem)
#f.write(poem1)
f.close()

type(f)
print(f)

f = open('poem.txt','r')

while True:
 line = f.readline()
 if len(line) == 0:
 break
 print(line, end='')

f.close()

運行結(jié)果

Python零基礎入門學習之輸入與輸出

如何工作

open方法第一個參數(shù)是你的文件名和路徑,我的文件和程序在同一個文件夾下所以只需要填寫文件名即可,第一個參數(shù)后面可以跟很多參數(shù)來完成不同的操作,而且很多參數(shù)是由默認值的,通過我們之前對函數(shù)的學習知道這樣做的好處。

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
 ========= ===============================================================
 Character Meaning
 --------- ---------------------------------------------------------------
 'r' open for reading (default)
 'w' open for writing, truncating the file first
 'x' create a new file and open it for writing
 'a' open for writing, appending to the end of the file if it exists
 'b' binary mode
 't' text mode (default)
 '+' open a disk file for updating (reading and writing)
 'U' universal newline mode (deprecated)
 ========= ===============================================================

這個mode參數(shù)是主要的參數(shù),大家記住這個就可以,mode參數(shù)可以很多個參連在一起使用比如open('text1.txt','wb')這個就是使用二進制寫數(shù)據(jù),一會就會使用到。

這個文件是不用手動創(chuàng)建的,在你的路徑下有這個文件的話,就會打開這個文件,如果沒有會自動創(chuàng)建這個文件。

讀文件的時候使用的是循環(huán)讀取,使用包裝類的readline()方法,讀取每一行,當方法返回0時,表示文件讀取完成,破壞循環(huán)條件,關閉IO。

Python零基礎入門學習之輸入與輸出

自動創(chuàng)建的文件。

儲存器

Python中提供了一個pickle模塊。通過這個模塊你可以在文件中存儲任何Python對象,你又可以從這個文件中吧對象取出。這被稱為持久的存儲對象。還有另一個模塊稱為cPickle,它的功能和pickle模塊完全相同,只不過它是用C語言編寫的,因此它的速度要快很多(比pickle快1000倍,Python3中取消使用)。這里將使用Pickle模塊。

使用import...as...語法可以用as后的字符代替as前的字符,模塊使用起來更簡潔。將數(shù)據(jù)保存到打開的文件中就是存儲,open一個文件,調(diào)用模塊的dump函數(shù),將數(shù)據(jù)存到文件中。使用模塊的load函數(shù)返回存儲的對象,這個過程叫做取存儲。

import pickle as p

shoplistfile = 'shoplist.data'

shoplist = ['apple','mango','carrot']

f = open(shoplistfile,'wb')
#將數(shù)據(jù)寫入打開的文件中
p.dump(shoplist,f)
f.close()

del shoplist

f = open(shoplistfile,'rb')
storedlist = p.load(f)
print(storedlist)

print(__doc__)

運行結(jié)果

Python零基礎入門學習之輸入與輸出

這里使用的就是二進制的寫入,讀取的時候也使用的二進制,和寫入的數(shù)據(jù)有關,這個大家多多留意。

Python的輸入與輸出就寫到這里,大家多多探索會有更多的知識等待你發(fā)掘。

向AI問一下細節(jié)

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

AI