优草派  >   Python

python如何判断模块是否安装

孙悦            来源:优草派

Python是一种通用性编程语言,在开发过程中经常会用到各种不同的模块。本文主要介绍Python程序如何判断模块是否安装。

python如何判断模块是否安装

1.通过导入检查:

通过import语句尝试导入模块。若导入失败则表明该模块未被安装,可以用try模块捕获ImportError来验证是否导入成功。如下:

try:

import module_name

except ImportError:

# 模块未安装

2.通过pip list检查:

我们可以使用pip list命令来列出系统中已安装的Python模块。可以通过Python的os模块调用该命令来实现在Python代码中检查模块是否安装。如下:

import subprocess

import sys

def check_module_installed(module_name):

try:

subprocess.check_output([sys.executable, '-m', 'pip', 'freeze'])

success = True

except subprocess.CalledProcessError:

success = False

if success:

installed_packages = str(subprocess.check_output([sys.executable, '-m', 'pip', 'freeze']), 'utf-8').split('\n')

for installed_package in installed_packages:

if module_name in installed_package:

return True

return False

3.使用pkgutil库检查:

Python标准库中的pkgutil模块提供了find_loader()方法,通过该方法可以检查一个给定的包是否安装,并返回一个loader对象。若返回的对象不为None则表明该模块已被安装。示例代码如下:

import pkgutil

def check_module_installed(module_name):

return module_name in (module.module_name for module in pkgutil.iter_modules())

结论:

不同于其他语言,Python中安装模块主要通过pip进行。可以通过import,pip list以及pkgutil库三种方式进行模块安装的检查。具体方式根据实际情况选择。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行