自學(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ù)隨意操縱程序拿撩,十分不安全