Python中常见的导入方式总结

一、直接导入模块

import 模块名

优点:干净直接

import sys
print(sys.path)
import os # os是一个模块
import os.path # 注意这里的os.path是一个模块

二、直接导入包

import 包名

如果只导入包,在调用时不可使用.来找到模块,但可以访问到__init__.py下的类和函数。

import bs4 # 注意这里bs4是一个包!
soup = bs4.BeautifulSoup(...) # 可以访问到包中__init__.py下的类和函数

import Mypack
# Mypack.fun.func() 会报错,找不到fun模块,需要使用方法3或6来导入特定模块

三、导入包中的一个模块

import 包名.模块名

包使用的注意事项

  • 需要先将包(文件夹)写在sys.path列表中的一个目录下,如果没有需要使用列表的append方法追加进去。
  • 在包中需要再写一个__init__.py文件表示这是一个包,文件可以为空。在__init__.py下写的函数和类可以在只导入包的情况下访问到(如只导入bs4包,可以使用BeautifulSoup类,但不可以使用包中的其他模块)。
import sys
sys.path.append(r"E:\\")

import Mypack.fun
Mypack.fun.func()

四、导入模块并取别名

import 模块名 as 别名

优点:别名方便记忆

import sys as s
print(s.path)

import Mypack.fun as f
f.func()

五、从模块(或者包)中取出特定函数(不建议)

from 模块名(包名) import 函数名

优点:直接取出特定函数,无需再加命名空间。

缺点:无命名空间限制,容易乱。

from sys import setrecursionlimit
setrecursionlimit(500)

from bs4 import BeautifulSoup # 这里取出了bs4包中__init__.py文件中的BeautifulSoup类
soup = BeautifulSoup(...)

用通配符导入模块中的所有函数,且无需加命名空间。

from sys import *
setrecursionlimit(500)

六、从包中取出特定模块

 from 包名 import 模块名

优点:相较方法3在调用时可以少写包名。

from Mypack import fun
fun.func()

到此这篇关于Python中常见的导入方式总结的文章就介绍到这了,更多相关Python常见导入方式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(Python中常见的导入方式总结)