Python 基礎教程之包和類的用法
Python 基礎教程之包和類的用法
建立一個文件夾filePackage
在filePackage 文件夾內(nèi)創(chuàng)建 __init__.py
有了 __init__.py ,filePackage才算是一個包,否則只是算一個普通文件夾。
在filePackage 文件夾內(nèi)創(chuàng)建 file.py
file.py 代碼如下:
#!/usr/bin/env python3 # -*- coding: utf-8 -*- from datetime import datetime class MyFile(): def __init__(self, filepath): print('MyFile init...') self.filepath = filepath def printFilePath(self): print(self.filepath) def testReadFile(self): with open(self.filepath, 'r') as f: s = f.read() print('open for read...') print(s) def testWriteFile(self): with open('test.txt', 'w') as f: f.write('今天是 ') f.write(datetime.now().strftime('%Y-%m-%d'))
__init__.py 代碼如下:
from file import MyFile
把本模塊里面的 公用的類 方法 暴漏出來
然后 外面的引用 不用找到具體的現(xiàn)實位置,找到包的__init__ 就好了
建立main.py 和 filePackage 平級,
main.py 代碼如下:
#!/usr/bin/env python3 # -*- coding: utf-8 -*- from filePackage import MyFile if __name__ == '__main__': a = MyFile("./filePackage/test.txt") a.printFilePath(); a.testReadFile();
目錄結構:
若 __init__.py 里什么也不寫,那么在main.py里也可以這樣寫:
import filePackage.file if __name__ == '__main__': a = filePackage.file.MyFile("./filePackage/test.txt") a.printFilePath();
但不建議這樣寫,建議按上面的方法將模塊里的公用類暴露出來,直接引用。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
Pytorch平均池化nn.AvgPool2d()使用方法實例
平均池化層,又叫平均匯聚層,下面這篇文章主要給大家介紹了關于Pytorch平均池化nn.AvgPool2d()使用方法的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-02-02Python用for循環(huán)實現(xiàn)九九乘法表
本文通過實例代碼給大家介紹了Python用for循環(huán)實現(xiàn)九九乘法表的方法,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2018-05-05python2 與python3的print區(qū)別小結
這篇文章主要介紹了python2 與python3的print區(qū)別小結,需要的朋友可以參考下2018-01-01Python datetime和unix時間戳之間相互轉換的講解
今天小編就為大家分享一篇關于Python datetime和unix時間戳之間相互轉換的講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-04-04