首頁 > 後端開發 > Python教學 > Python之包和類別的用法

Python之包和類別的用法

高洛峰
發布: 2017-02-27 09:55:54
原創
1193 人瀏覽過

Python 基礎教程之包和類別的用法

建立一個資料夾filePackage

在filePackage 資料夾內建立__init__. py

有了__init__.py ,filePackage才算是一個包,否則只是算一個普通資料夾。

在filePackage 資料夾內建立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
登入後複製

#把本模組裡面的公用的類別方法暴漏出來

然後外面的引用不用找到具體的現實位置,找到套件的__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();
登入後複製

目錄結構:


Python之包和類別的用法

#若__init__.py 裡什麼也不寫,那麼在main.py裡也可以這樣寫:

import filePackage.file
if __name__ == '__main__':
 a = filePackage.file.MyFile("./filePackage/test.txt")
 a.printFilePath();
登入後複製

但不建議這樣寫,建議按上面的方法將模組裡的公用類別暴露出來,直接引用。

感謝閱讀,希望能幫助大家,謝謝大家對本站的支持!

更多Python之包和類別的用法相關文章請關注PHP中文網!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板