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中使用Mako模版库的简单教程
Apr 08 Python
Linux下用Python脚本监控目录变化代码分享
May 21 Python
python中import reload __import__的区别详解
Oct 16 Python
Python装饰器(decorator)定义与用法详解
Feb 09 Python
python遍历小写英文字母的方法
Jan 02 Python
Python类中的魔法方法之 __slots__原理解析
Aug 26 Python
关于Theano和Tensorflow多GPU使用问题
Jun 19 Python
浅谈sklearn中predict与predict_proba区别
Jun 28 Python
Python如何定义有可选参数的元类
Jul 31 Python
在Python3.74+PyCharm2020.1 x64中安装使用Kivy的详细教程
Aug 07 Python
opencv读取视频并保存图像的方法
Jun 04 Python
Python pandas读取CSV文件的注意事项(适合新手)
Jun 20 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中获取文件扩展名的N种方法小结
2012/02/27 PHP
php使用sql数据库 获取字段问题介绍
2013/08/12 PHP
php动态生成缩略图并输出显示的方法
2015/04/20 PHP
微信利用PHP创建自定义菜单的方法
2016/08/01 PHP
解决PHP 7编译安装错误:cannot stat ‘phar.phar’: No such file or directory
2017/02/25 PHP
php之可变变量的实例详解
2017/09/12 PHP
PHP中的自动加载操作实现方法详解
2019/08/06 PHP
jquery获取tagName再进行判断
2014/05/29 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
2014/11/12 Javascript
JavaScript使用pop方法移除数组最后一个元素用法实例
2015/04/06 Javascript
AngularJS 避繁就简的路由
2016/07/01 Javascript
javascript 网页进度条简单实例
2017/02/22 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
详解AngularJS 模块化
2017/06/14 Javascript
详解node如何让一个端口同时支持https与http
2017/07/04 Javascript
JS数组splice操作实例分析
2019/10/12 Javascript
微信小程序学习之自定义滚动弹窗
2020/12/20 Javascript
web.py获取上传文件名的正确方法
2014/08/26 Python
python获取图片颜色信息的方法
2015/03/18 Python
Python中线程的MQ消息队列实现以及消息队列的优点解析
2016/06/29 Python
如何在Python函数执行前后增加额外的行为
2016/10/20 Python
解决python2.7用pip安装包时出现错误的问题
2017/01/23 Python
Python新手们容易犯的几个错误总结
2017/04/01 Python
使用requests库制作Python爬虫
2018/03/25 Python
Python爬虫实现验证码登录代码实例
2019/05/10 Python
sklearn的predict_proba使用说明
2020/06/28 Python
pycharm 多行批量缩进和反向缩进快捷键介绍
2021/01/15 Python
教师自我评价范例
2013/09/24 职场文书
门卫人员岗位职责
2013/12/24 职场文书
拾金不昧表扬信范文
2014/01/11 职场文书
2019最新版劳务派遣管理制度
2019/08/16 职场文书
mysql 8.0.24版本安装配置方法图文教程
2021/05/12 MySQL
利用Pycharm连接服务器的全过程记录
2021/07/01 Python
灵能百分百第三季什么时候来?
2022/03/15 日漫
tree shaking对打包体积优化及作用
2022/07/07 Java/Android
HTML静态页面获取url参数和UserAgent的实现
2022/08/05 HTML / CSS