踩过的坑:__file__、__package__和__name__
2024-10-01 03:34:42
不说废话,直接上示例结构图
Path.py内容如下:
import os
path1 = os.path.dirname(os.path.abspath(__file__))
path2 = os.path.abspath(__package__)
path3 = os.path.dirname(os.path.abspath(__name__))
if __name__ == "__main__":
print(path1)
print(path2)
print(path3)
运行Path.py结果如下:
TestPath.py内容如下:
from package1.Path import path1, path2, path3
if __name__ == '__main__':
print(path1)
print(path2)
print(path3)
运行TestPath.py结果如下:
结论
- 使用os.path获取__file__的路径,始终是获得的初始文件的路径。
- 使用os.path获取__package__的路径,获得的是初始文件被引用现状的路径。
\package2\package1 表示package1被引用到了package2里面。
- 使用os.path获取__name__的路径,则获得的是引用文件的路径。
最新文章
- PHP中的魔术方法(2)
- MySQL Replication需要注意的问题
- 传感器之超声波测距HC-SR04
- 用ajax动态获取数据显示在highcharts上
- [转]十步完全理解SQL
- High购电商系统开发注意点
- BZOJ4620: [Wf2016]What Really Happened on Mars?
- yourphp读取分类名称{$Categorys[$r[catid]]['catname']}
- 免费的网络扫描器-Advanced IP Scanner
- Word Ladder 未完成
- 学点css基础
- eclipse lint工具介绍
- Web开发之RSET API
- PHP根据身份证号码验证、获取星座、生肖和性别函数
- vb.net 操作xml
- 【Zookeeper】源码分析之持久化--FileTxnLog
- 【BZOJ1834】网络扩容(最大流,费用流)
- Go 语言指针
- Struts自动装配和四种放入Session作用域的方式
- [十一]基础数据类型之Character
热门文章
- Python3基础(三) 运算符
- 从基于 SQL 的 CURD 操作转移到基于语义 Web 的 CURD 操作
- IT痴汉的工作现状22-由Dalvik虚拟机引发的口水战
- 让ListView回来原来的位置
- pandas删除满足特定列信息的行记录
- 关于pycharm中pip版本10.0无法使用的解决办法
- PCB genesis加尾孔实现方法
- bzoj4563: [Haoi2016]放棋子(错排+高精)
- 多个@bean无法通过@resource注入对应的bean(org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'javax.sql.DataSource' available: expected single matching bean but found )
- 数据库部署到linux服务器,供本地访问。