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

发布时间 - 2026-01-10 23:14:11    点击率:

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();

目录结构:

若 __init__.py 里什么也不写,那么在main.py里也可以这样写:

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

但不建议这样写,建议按上面的方法将模块里的公用类暴露出来,直接引用。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Python  # 基础教程之包和类的用法  # 包用法  # 包和类详解  # Python入门教程 超详细1小时学会Python  # python 中文乱码问题深入分析  # Python 列表(List)操作方法详解  # python strip()函数 介绍  # 比较详细Python正则表达式操作指南(re使用)  # Python 字典(Dictionary)操作详解  # Python科学计算环境推荐——Anaconda  # Python 元组(Tuple)操作详解  # Python字符串的encode与decode研究心得乱码问题解决方法  # 是一个  # 希望能  # 谢谢大家  # 建立一个  # 但不  # 才算  # 里也  # 一个普通  # 不写  # 漏出  # 按上  # 就好了  # utf  # coding  # class  # brush  # bin  # env  # usr  # filePackage 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在橙子建站上传落地页?操作指南详解  🚀拖拽式CMS建站能否实现高效与个性化并存?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  如何在宝塔面板创建新站点?  node.js报错:Cannot find module 'ejs'的解决办法  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  海南网站制作公司有哪些,海口网是哪家的?  网站图片在线制作软件,怎么在图片上做链接?  公司网站制作价格怎么算,公司办个官网需要多少钱?  制作企业网站建设方案,怎样建设一个公司网站?  Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧  Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  如何基于云服务器快速搭建网站及云盘系统?  phpredis提高消息队列的实时性方法(推荐)  如何在腾讯云服务器上快速搭建个人网站?  如何为不同团队 ID 动态生成多个非值班状态按钮  android nfc常用标签读取总结  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  如何用PHP快速搭建CMS系统?  CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】  如何在宝塔面板中修改默认建站目录?  Laravel如何配置Horizon来管理队列?(安装和使用)  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  iOS正则表达式验证手机号、邮箱、身份证号等  Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】  Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】  ,网页ppt怎么弄成自己的ppt?  Laravel如何保护应用免受CSRF攻击?(原理和示例)  如何在建站之星网店版论坛获取技术支持?  如何解决hover在ie6中的兼容性问题  php打包exe后无法访问网络共享_共享权限设置方法【教程】  移动端脚本框架Hammer.js  JS弹性运动实现方法分析  js代码实现下拉菜单【推荐】  Laravel Docker环境搭建教程_Laravel Sail使用指南  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  浅谈redis在项目中的应用  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  百度浏览器网页无法复制文字怎么办 百度浏览器复制修复  Laravel中的Facade(门面)到底是什么原理  Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道  Laravel如何生成API文档?(Swagger/OpenAPI教程)  Laravel怎么为数据库表字段添加索引以优化查询  网站建设保证美观性,需要考虑的几点问题!  网站制作软件有哪些,制图软件有哪些?