【问题标题】:ModuleNotFoundError: No module named 'pyodbc' - Azure Batch - UbuntuModuleNotFoundError:没有名为“pyodbc”的模块-Azure Batch-Ubuntu
【发布时间】:2021-04-08 13:49:55
【问题描述】:

我正在尝试使用 Azure Batch 上的 VM 运行 Python 作业,并利用 Python 包 Pyodbc。但是,当遇到ModuleNotFoundError: No module named 'pyodbc' 时,我无法正确安装它(显然)。我使用以下命令(启动任务)在我的虚拟机(Ubuntu)上安装 ODBC 驱动程序并且安装工作正常:

/bin/bash -c 'sudo -H apt-get -y update && 
sudo -H dpkg --configure -a && 
sudo -H apt-get install -y python3-pip && 
sudo -H pip3 install --upgrade pip && 
sudo -H su
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
curl curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
exit
sudo -H apt-get update
sudo -H ACCEPT_EULA=Y apt-get install -y msodbcsql17
sudo -H apt-get install -y unixodbc-dev && 
sudo -H pip3 install pandas &&
sudo -H pip3 -H install egg && 
sudo -H pip3 -H install azure-storage-common && 
sudo -H pip3 install --upgrade pyodbc &&
sudo -H pip3 install azure-storage-blob'

奇怪的是我可以毫无问题地运行import pandas 和其他软件包。有人可以帮帮我吗?

ODBC 安装指南:https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017

【问题讨论】:

    标签: python linux azure ubuntu azure-batch


    【解决方案1】:

    您可能同时安装了多个版本的 Python,或者将模块安装在一个版本中,但在另一个环境中运行脚本。

    一些类似的问题:

    始终建议在虚拟环境的上下文中运行您的 Python 代码,因此它在具有每个库的特定版本的环境的确切上下文中运行,这有助于避免此类错误。

    【讨论】:

      猜你喜欢
      • 2023-02-09
      • 1970-01-01
      • 2023-01-31
      • 1970-01-01
      • 2019-02-04
      • 2018-08-27
      • 2022-08-18
      • 2019-03-28
      • 1970-01-01
      相关资源
      最近更新 更多