制作模塊和文件操作

自學(xué)整理記錄毡琉,大神見(jiàn)笑

發(fā)布模塊

  • 希望將自己開(kāi)發(fā)的模塊分享給他人

步驟

  • 創(chuàng)建setup.py

from distutils.core import setup
setup(name="hm_message", # 包名
?version="1.0", # 版本
?description="itheima 發(fā)送和接收消息模塊", # 描述信息
?long_description="完整的發(fā)送和接收消息模塊", # 完整描述信息
?author="itheima", # 作者
?author_email="itheima@itheima.com", # 作者郵箱
?url="www.itheima.com", # 主頁(yè)
?py_modules=["hm_message.send_message","hm_message.receive_message"])

  • 構(gòu)建模塊

$ python3 setup.py build

  • 生成發(fā)布?jí)嚎s包

$ python3 setup.py sdist

安裝模塊

$ tar -zxvf hm_message-1.0.tar.gz
$ sudo python3 setup.py install

  • 卸載模塊
    直接從安裝目錄下桅滋,把安裝模塊的目錄刪除即可

pip安裝第三方模塊

  • pip是一個(gè)現(xiàn)代的,通用的Python包管理工具芍碧,提供了對(duì)Python包的查找泌豆、下載吏饿、安裝、卸載等功能
  • 在cmd中操作
  • windows命令如下:

# 將模塊安裝到Python 2.x 環(huán)境
$ sudo pip install pygame
$ sudo pip uninstall pygame


# 將模塊安裝到Python 3.x 環(huán)境
$ sudo pip3 install pygame
$ sudo pip3 uninstall pygame

  • 在Mac下安裝iPython

$ sudo pip install ipython

  • 在Linux下安裝iPython

$ sudo apt install ipython
$ sudo apt uninstall ipython3

文件的概念

文件的概念和作用

  • 計(jì)算機(jī)的文件畴博,就是存儲(chǔ)在某種長(zhǎng)期存儲(chǔ)設(shè)備上的一段數(shù)據(jù)蓝仲,設(shè)備包括硬盤(pán)袱结,U盤(pán),移動(dòng)硬盤(pán)等
  • 文件的作用:將數(shù)據(jù)長(zhǎng)期保存咱揍,需要的時(shí)候使用

文件的存儲(chǔ)方式

  • 計(jì)算機(jī)中棚饵,文件都是已二進(jìn)制保存在磁盤(pán)上
  • 文本文件:可以用文本編輯軟件查看噪漾,本質(zhì)上還是二進(jìn)制文件
  • 二進(jìn)制文件:保存的不能用文本編輯軟件查看,比如說(shuō)一些音視頻文件

文件的基本操作

  • Python中操作文件固定三個(gè)步驟;
    1.打開(kāi)文件
    2.讀题翰、寫(xiě)文件
    3.關(guān)閉文件
  • 操作文件的函數(shù)和方法
序號(hào) 函數(shù)/方法 說(shuō)明
01 open函數(shù) 打開(kāi)文件豹障,并返回文件操作對(duì)象
02 read方法 將文件內(nèi)容讀取到內(nèi)存
03 write方法 將指定內(nèi)容寫(xiě)入文件
04 close方法 關(guān)閉文件
  • open函數(shù)負(fù)責(zé)打開(kāi)文件血公,返回文件對(duì)象累魔;如果文件不存在够滑,會(huì)拋出異常
  • read/write/close三個(gè)方法都需要通過(guò)文件對(duì)象調(diào)用
  • read會(huì)一次性讀取文件所有內(nèi)容
  • close一定要關(guān)閉垦写,否則資源浪費(fèi),后續(xù)操作也會(huì)有影響
  • 文件指針彰触,當(dāng)read讀取了一次后梯投,文件指針會(huì)默認(rèn)在文件末尾,再read是讀不到文件內(nèi)容的

打開(kāi)文件方式

  • open默認(rèn)以只讀方式打開(kāi)
  • 語(yǔ)法如下:

file = open("文件名", "訪(fǎng)問(wèn)方式")

訪(fǎng)問(wèn)方式 說(shuō)明
r 只讀方式打開(kāi),文件不存在拋出異常
w 只寫(xiě)方式打開(kāi)分蓖,文件不存在會(huì)自動(dòng)創(chuàng)建新文件
a 以追加方式打開(kāi)吮龄,即打開(kāi)后文件指針默認(rèn)在內(nèi)容末尾,文件不存在拋出異常
r+ 以讀寫(xiě)方式打開(kāi)咆疗,文件不存在拋出異常
w+ 以讀寫(xiě)方式打開(kāi)漓帚,文件不存在會(huì)自動(dòng)創(chuàng)建新文件
a+ 以讀寫(xiě)方式打開(kāi)午磁,文件不存在會(huì)自動(dòng)創(chuàng)建新文件
  • 頻繁移動(dòng)文件指針會(huì)影響文件的讀寫(xiě)效率尝抖,開(kāi)發(fā)中更多以只讀只寫(xiě)方式打開(kāi)

按行讀取文件內(nèi)容

  • readline方法,一行一行讀取迅皇,方法執(zhí)行后文件指針會(huì)移動(dòng)到下一行
  • 事例代碼:

# 打開(kāi)文件
file = open("README")


while True:
?# 讀取一行內(nèi)容
?text = file.readline()
?# 判斷是否讀到內(nèi)容
?if not text:
??break
?# 每讀取一行的末尾已經(jīng)有了一個(gè)'\n'
?print(text, end="")


# 關(guān)閉文件
file.close()

文件復(fù)制

  • 小文件復(fù)制昧辽,用read一次性復(fù)制即可
  • 大文件復(fù)制,用readline一行一行的復(fù)制即可

文件/目錄的常用管理和操作

  • 即對(duì)文件或目錄進(jìn)行創(chuàng)建登颓,刪除搅荞,移動(dòng),重命名等
  • 對(duì)文件/目錄操作需要導(dǎo)入os模塊
  • 文件操作
序號(hào) 方法名 說(shuō)明 示例
01 rename 重命名 os.rename(源文件名框咙,新文件名)
02 remove 刪除 os.remove(文件名)
  • 目錄操作
序號(hào) 方法名 說(shuō)明 示例
01 listdir 目錄列表 os.listdir(目錄名)
02 mkdir 創(chuàng)建目錄 os.mkdir(目錄名)
03 rmdir 刪除目錄 os.rmdir(目錄名)
04 getcwd 獲取當(dāng)前目錄 os.getcwd()
05 chdir 修改工作目錄 os.chdir(目標(biāo)目錄)
06 path.isdir 判斷是否是文件 os.path.isdir(文件路徑)

文本文件的編碼格式

  • Python2.x默認(rèn)ASCII編碼咕痛,一個(gè)ASCII在內(nèi)存占用一個(gè)字節(jié),用8個(gè)0/1排列組合表示256個(gè)字符
  • Python3.x默認(rèn)UTF-8編碼喇嘱,用1~6個(gè)字節(jié)表示一個(gè)UTF-8茉贡,涵蓋了地球上幾回所有地區(qū) 的文字;漢字大多使用3個(gè)字節(jié)者铜;UTF-8是UNICODE編碼的一種編碼格式

Python2.x使用中文解決方案

1.在頂部輸入

# *-* coding:utf8 *-*

2.在字符串前面加上一個(gè)字母u腔丧,表示urf-8編碼

eval函數(shù)

  • eval()函數(shù),將字符串當(dāng)成有效表達(dá)式進(jìn)行求值作烟,并返回計(jì)算結(jié)果
  • 不能濫用愉粤,因?yàn)殚_(kāi)始時(shí)eval會(huì)直接轉(zhuǎn)換input的結(jié)果,使得普通用戶(hù)隨意操縱程序拿撩,十分不安全
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末衣厘,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子绷雏,更是在濱河造成了極大的恐慌头滔,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,277評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件涎显,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡兴猩,警方通過(guò)查閱死者的電腦和手機(jī)期吓,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人讨勤,你說(shuō)我怎么就攤上這事箭跳。” “怎么了潭千?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,624評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵谱姓,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我刨晴,道長(zhǎng)屉来,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,356評(píng)論 1 293
  • 正文 為了忘掉前任狈癞,我火速辦了婚禮茄靠,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蝶桶。我一直安慰自己慨绳,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布真竖。 她就那樣靜靜地躺著脐雪,像睡著了一般。 火紅的嫁衣襯著肌膚如雪恢共。 梳的紋絲不亂的頭發(fā)上喂江,一...
    開(kāi)封第一講書(shū)人閱讀 51,292評(píng)論 1 301
  • 那天,我揣著相機(jī)與錄音旁振,去河邊找鬼获询。 笑死,一個(gè)胖子當(dāng)著我的面吹牛拐袜,可吹牛的內(nèi)容都是我干的吉嚣。 我是一名探鬼主播,決...
    沈念sama閱讀 40,135評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼蹬铺,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼尝哆!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起甜攀,我...
    開(kāi)封第一講書(shū)人閱讀 38,992評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤秋泄,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后规阀,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體恒序,經(jīng)...
    沈念sama閱讀 45,429評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評(píng)論 3 334
  • 正文 我和宋清朗相戀三年谁撼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了歧胁。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,785評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖喊巍,靈堂內(nèi)的尸體忽然破棺而出屠缭,到底是詐尸還是另有隱情,我是刑警寧澤崭参,帶...
    沈念sama閱讀 35,492評(píng)論 5 345
  • 正文 年R本政府宣布呵曹,位于F島的核電站,受9級(jí)特大地震影響何暮,放射性物質(zhì)發(fā)生泄漏奄喂。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評(píng)論 3 328
  • 文/蒙蒙 一郭卫、第九天 我趴在偏房一處隱蔽的房頂上張望砍聊。 院中可真熱鬧,春花似錦贰军、人聲如沸玻蝌。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,723評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)俯树。三九已至,卻和暖如春贰盗,著一層夾襖步出監(jiān)牢的瞬間许饿,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,858評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工舵盈, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留陋率,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,891評(píng)論 2 370
  • 正文 我出身青樓秽晚,卻偏偏與公主長(zhǎng)得像瓦糟,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子赴蝇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 一菩浙、內(nèi)容總覽 1.1、模塊 1.2句伶、包 1.3劲蜻、發(fā)布模塊 二、模塊 2.1考余、模塊的概念:模塊是 Python 程序...
    IIronMan閱讀 685評(píng)論 0 0
  • 一先嬉、Python簡(jiǎn)介和環(huán)境搭建以及pip的安裝 4課時(shí)實(shí)驗(yàn)課主要內(nèi)容 【Python簡(jiǎn)介】: Python 是一個(gè)...
    _小老虎_閱讀 5,744評(píng)論 0 10
  • linux和windows下安裝python拓展包-pycharm、numpy秃殉、scipy坝初、matplotlib浸剩、...
    hzyido閱讀 81,249評(píng)論 2 10
  • 每個(gè)家庭的裝修風(fēng)格都是千差萬(wàn)別的,有的人喜歡簡(jiǎn)約淡雅吏恭,有的人喜歡富麗堂皇拗小,因此對(duì)于家居裝修風(fēng)格點(diǎn)綴的燈飾選擇上也大...
    燈師傅閱讀 261評(píng)論 0 1
  • 1、JS輸出內(nèi)容 (document.write) document.write()可用于直接向 HTML 輸出流...
    多語(yǔ)閱讀 446評(píng)論 0 0