python不同文件、不同文件夹间代码调用 | 您所在的位置:网站首页 › python怎么在函数里调用另一个函数 › python不同文件、不同文件夹间代码调用 |
ref: https://python3-cookbook.readthedocs.io/zh_CN/latest/chapters/p10_modules_and_packages.html https://blog.csdn.net/u010013191/article/details/89071785
目录 模块、包、库: 同文件夹内调用模块 文件结构: 功能及目的: 实现过程: 1)设置根目录为Sources root 2)import代码 注意事项: 跨文件夹调用模块: 文件结构: 功能及目的: 实现过程: 1)设置根目录为Sources root 2)建立__init__.py 3)在其他文件中import代码 注意事项:
之前代码都是在一个文件中编写运行,最近编写的代码涉及功能较多,需要模块化处理,涉及不同文件间的调用 简单学习了下 在pycharm中调用不同文件代码 ,做以下整理: 模块、包、库: 模块:可以理解为代码文件,即各种py文件,模块中包括类、函数 包:即多个模块/代码文件的组合,包括多个文件或者文件夹,文件夹可以看做子包;一般为个人写的代码项目 库:已发布的包括某种特定功能的模块/代码文件的组合;一般为其他组织或个人编写的代码项目 同文件夹内调用模块 根目录make sources root, 模块名 直接引用 文件结构:根目录为test, 文件包括hi.py、test_f.py hi.py定义了简单的函数sayhi,打印 hi 字符串,可以被其他文件调用 test_f.py实现同文件夹下的调用 实现过程: 1)设置根目录为Sources root右击根目录,mark dirctory as -- Sources Root; 各文件代码如下: hi.py def sayhi(): print('hi')test_f.py import hi hi.sayhi() 注意事项: 文件名与文件夹名不要以数字开头文件名不要与文件夹名重名
跨文件夹调用模块: 根目录make sources root, 建立__init__.py,使用根目录名.子包名.模块名的 绝对路径方式引用 文件结构: 根目录为test, 二级目录及文件包括test_a、test_b、__init__.py、test_c.py 三级文件包括test_a下的__init__.py、hi.py、test_a.py;test_b下的__init__.py、test_b.py; 功能及目的: hi.py定义了简单的函数sayhi,打印 hi 字符串,可以被其他文件调用 各个__init__.py用于定义模块包,如果想调用目录x中的代码,就在目录x下建立空的__init__.py文件 test_a.py实现同目录下的调用test_b.py实现不同目录下文件的调用test_c.py实现同级文件夹下的调用实现过程: 1)设置根目录为Sources root 右击根目录,mark dirctory as -- Sources Root; 相当于在系统路径中加入根目录,当import时,可以检索根目录中内容; 类似于sys.path.append(path) __init__.py用于定义模块包,如果想调用目录中的代码,就在目录下建立__init__.py文件吧; 目前涉及内容不多,建立空文件即可 3)在其他文件中import代码在本文中,在test_a.py、test_b.py、test.py中分别调用hi.py中代码,各文件代码如下: hi.py def sayhi(): print('hi')test_a.py from test.test_a import hi hi.sayhi()test_b.py from test.test_a import hi hi.sayhi()test_c.py from test.test_a import hi hi.sayhi()注意事项: 文件名与文件夹名不要以数字开头文件名不要与文件夹名重名使用. 或者..的相对路径方式进行引用,在编写代码时不报错,但运行时可能出错,建议使用 根目录名.子包名.模块名 的绝对路径方式进行引用
|
CopyRight 2018-2019 实验室设备网 版权所有 |