Python 基础教程之包和类的用法


Posted in Python onFebruary 23, 2017

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 相关文章推荐
Python中给List添加元素的4种方法分享
Nov 28 Python
Python中转换角度为弧度的radians()方法
May 18 Python
Python内置函数——__import__ 的使用方法
Nov 24 Python
Python Unittest自动化单元测试框架详解
Apr 04 Python
解决Pycharm运行时找不到文件的问题
Oct 29 Python
解决python Markdown模块乱码的问题
Feb 14 Python
python识别图像并提取文字的实现方法
Jun 28 Python
Python中的类与类型示例详解
Jul 10 Python
python画蝴蝶曲线图的实例
Nov 21 Python
基于Python实现扑克牌面试题
Dec 11 Python
Python 使用 prettytable 库打印表格美化输出功能
Dec 26 Python
Python截图并保存的具体实例
Jan 14 Python
python安装oracle扩展及数据库连接方法
Feb 21 #Python
python安装cx_Oracle模块常见问题与解决方法
Feb 21 #Python
Python实现字符串格式化的方法小结
Feb 20 #Python
python爬虫实现教程转换成 PDF 电子书
Feb 19 #Python
Python 模块EasyGui详细介绍
Feb 19 #Python
Python中字符串格式化str.format的详细介绍
Feb 17 #Python
Python爬虫:通过关键字爬取百度图片
Feb 17 #Python
You might like
PHP 危险函数全解析
2009/09/09 PHP
php实现快速排序法函数代码
2012/08/27 PHP
PHP与Java进行通信的实现方法
2013/10/21 PHP
PHP实现仿百度文库,豆丁在线文档效果(word,excel,ppt转flash)
2016/03/10 PHP
php图片添加文字水印实现代码
2016/03/15 PHP
php写一个函数,实现扫描并打印出自定目录下(含子目录)所有jpg文件名
2017/05/26 PHP
javascript 放大镜 v1.0 基于Yui2 实现的放大镜效果
2010/03/08 Javascript
Javascript string 扩展库代码
2010/04/09 Javascript
jquery自动将form表单封装成json的具体实现
2014/03/17 Javascript
jQuery实现数字加减效果汇总
2014/12/16 Javascript
JavaScript实现仿淘宝商品购买数量的增减效果
2016/01/22 Javascript
JavaScript编写检测用户所使用的浏览器的代码示例
2016/05/05 Javascript
如何判断出一个js对象是否一个dom对象
2016/11/24 Javascript
微信小程序 摇一摇抽奖简单实例实现代码
2017/01/09 Javascript
bootstrap下拉框动态赋值方法
2018/08/10 Javascript
ztree加载完成后显示勾选节点的实现代码
2018/10/22 Javascript
微信小程序的tab选项卡的实现效果
2019/05/15 Javascript
Vue.js标签页组件使用方法详解
2019/10/19 Javascript
Python制作刷网页流量工具
2017/04/23 Python
Python3之读取连接过的网络并定位的方法
2018/04/22 Python
Python框架Flask的基本数据库操作方法分析
2018/07/13 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
Python Process多进程实现过程
2019/10/22 Python
Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】
2019/10/30 Python
日本快乐生活方式购物网站:Shop Japan
2018/07/17 全球购物
英国在线药房:Chemist.co.uk
2019/03/26 全球购物
用Java语言将一个键盘输入的数字转化成中文输出
2013/01/25 面试题
好家长事迹材料
2014/01/23 职场文书
运动会开幕式邀请函
2014/02/03 职场文书
教师个人成长总结
2015/02/11 职场文书
撤诉申请书法院范本
2015/05/18 职场文书
小学运动会加油稿
2015/07/22 职场文书
婚礼领导致辞大全
2015/07/28 职场文书
ORACLE数据库对long类型字段进行模糊匹配的解决思路
2021/04/07 Oracle
CSS3 实现的图片悬停的切换按钮
2021/04/13 HTML / CSS
解析python中的jsonpath 提取器
2022/01/18 Python