Python中import

idea集成python插件就可以支持跳转了
https://www.cnblogs.com/yinzhengjie/p/9442034.html
主要有以下两种:
import 模块名1 [as 别名1], 模块名2 [as 别名2],…:使用这种语法格式的 import 语句,会导入指定模块中的所有成员(包括变量、函数、类等)。不仅如此,当需要使用模块中的成员时,需用该模块名(或别名)作为前缀,否则 Python 解释器会报错。
from 模块名 import 成员名1 [as 别名1],成员名2 [as 别名2],…: 使用这种语法格式的 import 语句,只会导入模块中指定的成员,而不是全部成员。同时,当程序中使用该成员时,无需附加任何前缀,直接使用成员名(或别名)即可。
注意,用 [] 括起来的部分,可以使用,也可以省略。
其中,第二种 import 语句也可以导入指定模块中的所有成员,即使用 form 模块名 import *,但此方式不推荐使用,具体原因本节后续会做详细说明。



import 模块名 as 别名
下面程序使用导入整个模块的最简单语法来导入指定模块:
纯文本复制


导入sys整个模块


import sys


使用sys模块名作为前缀来访问模块中的成员


print(sys.argv[0])



from 模块名 import 成员名 as 别名
下面程序使用了 from…import 最简单的语法来导入指定成员:


导入sys模块的argv成员


from sys import argv


使用导入成员的语法,直接使用成员名访问


print(argv[0])



不推荐使用 from import 导入模块所有成员
在使用 from…import 语法时,可以一次导入指定模块内的所有成员(此方式不推荐),例如如下程序:
纯文本复制
#导入sys 棋块内的所有成员
from sys import *
#使用导入成员的语法,直接使用成员的别名访问
print(argv[0])
print(winver)



http://c.biancheng.net/view/2397.html



函数
将一组代码组织到一起,实现某种功能



模块
为实现某种逻辑将相关连的函数写在同一个文件里,使逻辑更清楚,这就是一个模块



在python中文件以.py 结尾,那这个.py文件就可以称之为模块




为了方便管理模块,python 中引入了包的概念
包是由关联的多个模块组成的目录,在每一个包下而都有一个__init__.py文件,这个文件必须存在
否则,Python就把这个目录当成普通目录,而不是一个包



init.py 可以是空文件,也可是有python代码,因为__init__.py本身就是一个模块



import 导入
使用import 关键字,可以将一个包中已出现的一个或多个函数或模块,引入到另一个python代码中,从而实现
代码的复用



注意
1, 如果是本地导入文件,直接使用:import filename
2, 如果导入的是一个包,该包下面必须是有__init__.py文件才可以导入,否则报错,只有有了__init__.py文件,python解析器才会把这个目录当成是的包



–示例:
创建一个包,并进行导入操作



创建一个pack目录
目录包含三个文件 _ini.py mod_1.py mod_2.py
__init.py 这空
mod_1.py 中定义一个函数Func1,功能是打印‘This is func-1’
mod_2.py 中定义一个函数Func2, 功能是打印‘This is a Func2’



在其它目录下创建一人普通python方件对上面的包进行导入
方法1、如果是本地导入文件,直接使用:import filename



import pack.mod_1
pack.mod_1.Func1()



运行:
C:\Python27\python.exe D:/Python/package.py
This is func-1



Process finished with exit code 0
方法2:在导入的时候,.py的后缀直接省略,如果是多级的包,或者想导入包里面的函数等,可以使用from进行导入



from pack.mod_2 import Func2



Func2()



https://www.cnblogs.com/lijunjiang2015/p/7812996.html



在ide中执行python程序,都已经在默认的项目路径中,所以直接执行是没有问题的。但是在cmd中执行程序,所在路径是python的搜索路径,如果涉及到import引用就会报类似ImportError: No module named xxx这样的错误,解决方法:



在报错的模块中添加:



import sys
import os
curPath = os.path.abspath(os.path.dirname(file))
rootPath = os.path.split(curPath)[0]
sys.path.append(rootPath)
这样就可以解决了



另外在cmd中执行python程序时注意python版本,如果装了两个版本的话,切换版本:



在环境变量中path中修改python版本



https://www.cnblogs.com/liuyanhang/p/11018407.html



https://zhuanlan.zhihu.com/p/63143493



Category python