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 读写XML文件的实例
Aug 02 Python
Python set常用操作函数集锦
Nov 15 Python
python调用Delphi写的Dll代码示例
Dec 05 Python
ubuntu安装mysql pycharm sublime
Feb 20 Python
使用Django启动命令行及执行脚本的方法
May 29 Python
Python企业编码生成系统总体系统设计概述
Jul 26 Python
Python爬虫实现“盗取”微信好友信息的方法分析
Sep 16 Python
python字符串反转的四种方法详解
Dec 02 Python
Python递归函数特点及原理解析
Mar 04 Python
Python 3.10 的首个 PEP 诞生,内置类型 zip() 迎来新特性(推荐)
Jul 03 Python
详解Python中list[::-1]的几种用法
Nov 16 Python
Python+Matplotlib+LaTeX玩转数学公式
Feb 24 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
将兴奋、喜悦和坎加斯带到戴安娜:亚马逊公主
2020/03/03 欧美动漫
JavaScript中令你抓狂的魔术变量
2006/11/30 Javascript
Javascript基础教程之数据类型 (布尔型 Boolean)
2015/01/18 Javascript
js中日期的加减法
2015/05/06 Javascript
js实现用户离开页面前提示是否离开此页面的方法(包括浏览器按钮事件)
2015/07/18 Javascript
使用HTML+CSS+JS制作简单的网页菜单界面
2015/07/27 Javascript
jQuery为DOM动态追加事件的方法
2017/02/16 Javascript
js实现登录框鼠标拖拽效果
2017/03/09 Javascript
详解Vue单元测试Karma+Mocha学习笔记
2018/01/31 Javascript
js装饰设计模式学习心得
2018/02/17 Javascript
JavaScript刷新页面的几种方法总结
2019/03/28 Javascript
解决微信小程序云开发中获取数据库的内容为空的方法
2019/05/15 Javascript
LayUI switch 开关监听 获取属性值、更改状态的方法
2019/09/21 Javascript
ES2020 已定稿,真实场景案例分析
2020/05/25 Javascript
vue实现登录、注册、退出、跳转等功能
2020/12/23 Vue.js
vue使用vue-quill-editor富文本编辑器且将图片上传到服务器的功能
2021/01/13 Vue.js
[05:00]TI9战队采访 - Royal Never Give Up
2019/08/20 DOTA
python sort、sorted高级排序技巧
2014/11/21 Python
Python脚本实现网卡流量监控
2015/02/14 Python
解决Python中由于logging模块误用导致的内存泄露
2015/04/23 Python
django+mysql的使用示例
2018/11/23 Python
django-rest-swagger的优化使用方法
2019/08/29 Python
PyTorch 解决Dataset和Dataloader遇到的问题
2020/01/08 Python
浅谈numpy中np.array()与np.asarray的区别以及.tolist
2020/06/03 Python
Pycharm中配置远程Docker运行环境的教程图解
2020/06/11 Python
Matplotlib中%matplotlib inline如何使用
2020/07/28 Python
用60行代码实现Python自动抢微信红包
2021/02/04 Python
大学生物业管理求职信
2013/10/24 职场文书
迎新晚会邀请函
2014/02/01 职场文书
施工单位安全责任书
2014/07/24 职场文书
党支部三会一课计划
2014/09/24 职场文书
中国文明网向国旗敬礼活动精彩寄语2014
2014/09/27 职场文书
第二批党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
婚礼答谢词
2015/01/04 职场文书
Redis 操作多个数据库的配置的方法实现
2022/03/23 Redis
利用Python实现模拟登录知乎
2022/05/25 Python