如何调用另一个python文件中的代码
无论我们选择用何种语言进行程序设计时,都不可能只有一个文件(除了“hello world”),通常情况下,我们都需要在一个文件中调用另外一个文件的函数呀数据等等,总之要操作其他文件中的代码,在java中,只要在同一个文件目录下,我们就不需要通过import导入,但是在Python中,我们就需要通过import来进行导入,这样我们才能应用其他文件中定义的函数和数据等代码。 对于刚接触python的我们,这是我们需要掌握的。
下面就以两个文件为例,例如我们有a.py和b.py两个文件,当我们需要在b.py文件中应用a.py中的func( )函数时,应该如何做呢,有两种情况,分别为在同一文件目录下和不在同一目录下进行说明。
同一文件目录下
在b.py文件中用下面两条语句即可完成对a.py文件中func( )函数的调用
import a #引用模块
a.func( )
或者是
import a#应用模块
from a import func #引用模块中的函数
func() #这里调用函数就不需要加上模块名的前缀了
不同文件目录下
若不在同一目录,python查找不到,必须进行查找路径的设置,将模块所在的文件夹加入系统查找路径
import sys
sys.path.append(‘a.py所在的路径’)
import a
a.func()
pycharm环境下:同文件夹下文件(.py)之间的调用,出现红线问题
只要将pycharm下打开项目后:
将你运行文件(.py)的项目设置为根目录,就不会出现红色线;
问题描述:
在pycharm中导入自己写的模块时,得不到智能提示,并在模块名下出现下红线,但是代码可以执行,错误提示为下图所示:
原因:出现 以上情况,是因为文件目录设置的问题,pycharm中的最上层文件夹是项目文件夹,在项目中导包默认是从这个目录下寻找,当在其中再次建立目录,目录内的py文件如果要导入当前目录内的其他文件,单纯的使用import导入,是得不到智能提示的,这是pycharm设置的问题,并非导入错误。
举例:目录结构如下
解决办法: