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应用程序在windows下不出现cmd窗口的办法
May 29 Python
python操作gmail实例
Jan 14 Python
基于python list对象中嵌套元组使用sort时的排序方法
Apr 18 Python
Python判断以什么结尾以什么开头的实例
Oct 27 Python
利用python在excel里面直接使用sql函数的方法
Feb 08 Python
Python常见数字运算操作实例小结
Mar 22 Python
如何使用python把ppt转换成pdf
Jun 29 Python
Python bisect模块原理及常见实例
Jun 17 Python
Python如何将装饰器定义为类
Jul 30 Python
Python自动创建Excel并获取内容
Sep 16 Python
Python控制台输出俄罗斯方块移动和旋转功能
Apr 18 Python
Python如何让字典保持有序排列
Apr 29 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
《魔兽争霸3:重制版》翻车了?你想要的我们都没有
2019/11/07 魔兽争霸
模仿OSO的论坛(三)
2006/10/09 PHP
PHP 5.3.1 安装包 VC9 VC6不同版本的区别是什么
2010/07/04 PHP
php中unlink()、mkdir()、rmdir()等方法的使用介绍
2012/12/21 PHP
php解决约瑟夫环示例
2014/04/09 PHP
基于PHP实现等比压缩图片大小
2016/03/04 PHP
无语,javascript居然支持中文(unicode)编程!
2007/04/12 Javascript
jQuery库与其他JS库冲突的解决办法
2010/02/07 Javascript
jQuery EasyUI API 中文文档 - EasyLoader 加载器
2011/09/29 Javascript
jquery实现智能感知连接外网搜索
2013/05/21 Javascript
node.js中的fs.writeFileSync方法使用说明
2014/12/14 Javascript
JS获取当前脚本文件的绝对路径
2016/03/02 Javascript
vue模板语法-插值详解
2017/03/06 Javascript
JS+CSS实现网页加载中的动画效果
2017/10/27 Javascript
再谈Angular4 脏值检测(性能优化)
2018/04/23 Javascript
vue拖拽组件使用方法详解
2018/12/01 Javascript
ES6学习笔记之字符串、数组、对象、函数新增知识点实例分析
2020/01/22 Javascript
javascript实现留言板功能
2020/02/08 Javascript
ES6使用新特性Proxy实现的数据绑定功能实例
2020/05/11 Javascript
微信小程序学习总结(四)事件与冒泡实例分析
2020/06/04 Javascript
python简单实现旋转图片的方法
2015/05/30 Python
django用户登录和注销的实现方法
2018/07/16 Python
Python中zip()函数的简单用法举例
2019/09/02 Python
Python如何避免文件同名产生覆盖
2020/06/09 Python
Selenium之模拟登录铁路12306的示例代码
2020/07/31 Python
Flask处理Web表单的实现方法
2021/01/31 Python
如何使用css3实现一个类在线直播的队列动画的示例代码
2020/06/17 HTML / CSS
办公自动化专业大学生职业规划书
2014/03/06 职场文书
教学改革实施方案
2014/03/31 职场文书
建筑施工安全生产责任书
2014/07/22 职场文书
八一建军节营销活动方案
2014/08/31 职场文书
技术入股合作协议书
2014/10/07 职场文书
小马王观后感
2015/06/11 职场文书
元宵节晚会主持词
2015/07/01 职场文书
2019教师的学习计划
2019/06/25 职场文书
解决pycharm下载库时出现Failed to install package的问题
2021/09/04 Python