Python實(shí)現(xiàn)自定義包的實(shí)例詳解
一.實(shí)例:自定義包
創(chuàng)建一個(gè)自定義包,名稱為:my_utils (我的工具),在包內(nèi)提供2個(gè)模塊
1.str_util.py(字符串相關(guān)工具,內(nèi)含:)
- 函數(shù): str_reverse(s),接受傳入字符串,將字符串反轉(zhuǎn)返回
- 函數(shù): substr x. y),按照下標(biāo)x和y,對(duì)字符串進(jìn)行切片
2.file_util.py(文件處理相關(guān)工具,內(nèi)含:)
- 函數(shù): print_file_info(file_name),接收傳入文件的路徑,打印文件的全部?jī)?nèi)容,如文件不存在則捕獲異常,輸出提示信息,通過(guò)finally關(guān)閉文件對(duì)象
- 函數(shù):append_to_file(file_name,data),接收文件路徑以及傳入數(shù)據(jù),將數(shù)據(jù)追加寫入到文件中
二.詳解
在pycharm中操作
1.新建my_utils包

2.新建str_util.py和file_util.py兩個(gè)python file

3.str_util.py中的代碼
def str_reverse(s):
"""
功能:將字符串反轉(zhuǎn)
s:將被反轉(zhuǎn)的字符串
return:反轉(zhuǎn)后的字符串
"""
return s[::-1]
def substr(s,x,y):
"""
功能是按照給定的下標(biāo)完成給定字符串的切片
s:即將切片的字符串
x:切片的開始下標(biāo)
y:切片的結(jié)束下標(biāo)
return:切片完成后的字符串
"""
return s[x:y]
if __name__ == '__main__':
print(str_reverse("好好學(xué)習(xí)!"))
print(substr("床前明月光,疑是地上霜。",2,6))演示

4.file_util.py的代碼
def print_file_info(file_name):
f=None
try:
f=open(file_name,"r",encoding="utf-8")
count=f.read()
print("文件內(nèi)容有:")
print(count)
except Exception as e:
print("文件出現(xiàn)了問題,程序無(wú)法運(yùn)行")
finally:
if f:#如果變量是none,表示false,如果有任何內(nèi)容就是true
f.close()
def append_to_file(file_name,data):
f=open(file_name,"a",encoding="utf-8")
f.write(data)
f.write("\n")
f.close()#close自帶flush功能,并且文件不存在時(shí)會(huì)自動(dòng)生成,所以不需要判斷文件是否存在
if __name__ == '__main__':
append_to_file("D:\game.txt","weasdfad_sdf")
print_file_info("D:\game.txt") 演示

5.導(dǎo)入my_utils包
import my_utils.str_util
from my_utils import file_util
print(my_utils.str_util.str_reverse("abcdefg!"))
print(my_utils.str_util.substr("sdf_123",0,4))
print("-----------------")
print(file_util.append_to_file("D:/game.txt","345_jhg"))
print(file_util.print_file_info("D:/game.txt"))演示

到此這篇關(guān)于Python實(shí)現(xiàn)自定義包的實(shí)例詳解的文章就介紹到這了,更多相關(guān)Python自定義包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python處理中文標(biāo)點(diǎn)符號(hào)大集合
中文文本中可能出現(xiàn)的標(biāo)點(diǎn)符號(hào)來(lái)源比較復(fù)雜,通過(guò)匹配等手段對(duì)他們處理的時(shí)候需要格外小心,防止遺漏,下面小編給大家?guī)?lái)了Python處理中文標(biāo)點(diǎn)符號(hào)大集合,感興趣的朋友跟隨腳本之家小編一起看看吧2018-05-05
python如何定義一個(gè)迭代器去生成偶數(shù)數(shù)列
這篇文章主要介紹了python如何定義一個(gè)迭代器去生成偶數(shù)數(shù)列問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
Python創(chuàng)建對(duì)稱矩陣的方法示例【基于numpy模塊】
這篇文章主要介紹了Python創(chuàng)建對(duì)稱矩陣的方法,結(jié)合實(shí)例形式分析了Python基于numpy模塊實(shí)現(xiàn)矩陣運(yùn)算的相關(guān)操作技巧,需要的朋友可以參考下2017-10-10
在Python中使用MongoEngine操作數(shù)據(jù)庫(kù)教程實(shí)例
這篇文章主要介紹了在Python中使用MongoEngine操作數(shù)據(jù)庫(kù)教程實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12
使用Python實(shí)現(xiàn)跳一跳自動(dòng)跳躍功能
這篇文章主要介紹了使用Python實(shí)現(xiàn)跳一跳自動(dòng)跳躍功能,本文圖文并茂通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07
Python定義函數(shù)時(shí)參數(shù)有默認(rèn)值問題解決
這篇文章主要介紹了Python定義函數(shù)時(shí)參數(shù)有默認(rèn)值問題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12

