小能豆

MACOS 命令 python setup.py egg_info 失败,错误代码为 1

py

mysql-python 我尝试使用以下方法安装:

pip3 install mysql-python

收集 mysql-python 使用缓存的 https://files.pythonhosted.org/packages/a5/e9/51b544da85a36a68debe7a7091f068d802fc515a3a202652828c73453cad/MySQL-python-1.2.5.zip 来自命令 python setup.py egg_info 的完整输出:回溯(最近一次调用最后一次):文件“”,第 1 行,在文件“/private/var/folders/lw/4nw2sv5d4_n59wp2j79gn8gr0000gn/T/pip-install-e27w2zbw/mysql-python/setup.py”,第 13 行,从 setup_posix 导入 get_config 文件“/private/var/folders/lw/4nw2sv5d4_n59wp2j79gn8gr0000gn/T/pip-install-e27w2zbw/mysql-python/setup_posix.py”,第 2 行,来自 ConfigParser 导入 SafeConfigParser ModuleNotFoundError:没有名为“ConfigParser”的模块

vbnet Command "python setup.py egg_info" failed with error code 1 in

/私人/ var /文件夹/ lw / 4nw2sv5d4_n59wp2j79gn8gr0000gn / T / pip-install-e27w2zbw / mysql-python /

或者

pip install mysql-python

注意事项:Python 2.7 将于 2020 年 1 月 1 日终止使用。请升级您的 Python,因为 Python 2.7 在此日期之后将不再维护。pip 的未来版本将不再支持 Python 2.7。收集 mysql-python 使用缓存的https://files.pythonhosted.org/packages/a5/e9/51b544da85a36a68debe7a7091f068d802fc515a3a202652828c73453cad/MySQL-python-1.2.5.zip 来自命令 python setup.py egg_info 的完整输出:回溯(最近一次调用最后一次):文件“”,第 1 行,在文件“/private/var/folders/lw/4nw2sv5d4_n59wp2j79gn8gr0000gn/T/pip-install-YPYuVV/mysql-python/setup.py”,第 17 行,在元数据中,options = get_config()文件“setup_posix.py”,第 53 行,在 get_config 库中 = [dequote(i [2:])为 i 在 libs 中如果i.startswith(compiler_flag(“l”)) ] 文件“setup_posix.py”,第 8 行,在 dequote 中,如果 s[0] 在“\”’” 中并且 s[0] == s[-1]: IndexError: 字符串索引超出范围

vbnet Command "python setup.py egg_info" failed with error code 1 in

/私人/ var /文件夹/ lw / 4nw2sv5d4_n59wp2j79gn8gr0000gn / T / pip-install-YPYuVV / mysql的python /

我尝试了一些解决方案:

pip install --upgrade setuptools

弃用:Python 2.7 将于 2020 年 1 月 1 日终止使用。请升级您的 Python,因为 Python 2.7 在此日期之后将不再维护。pip 的未来版本将不再支持 Python 2.7。要求已更新:/Library/Python/2.7/site-packages 中的 setuptools (40.8.0)

pip3 install --upgrade setuptools

要求已更新:/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages 中的 setuptools(40.8.0)

但它们不起作用。


阅读 8

收藏
2025-01-12

共1个答案

小能豆

您遇到的问题是 mysql-python(MySQL-Python)库已经不再维护,而且它仅适用于 Python 2。Python 3 用户应该使用现代替代方案,例如:

替代方案:mysqlclient

mysqlclientmysql-python 的现代替代品,支持 Python 3,并且与 mysql-python 兼容。要安装它,请执行以下步骤:

  1. 确保您已经安装了 MySQL 的开发库:
  2. macOS:
    bash brew install mysql
  3. Ubuntu/Debian:
    bash sudo apt-get install libmysqlclient-dev
  4. Windows:
    确保已安装 MySQL Connector 或完整的 MySQL 安装。

  5. 安装 mysqlclient
    bash pip install mysqlclient

或使用 Python 3 的 pip3
bash pip3 install mysqlclient

  1. 测试安装:
    在 Python 环境中运行以下代码:
    python import MySQLdb print("mysqlclient 安装成功!")

替代方案:PyMySQL

如果您更喜欢纯 Python 实现,可以选择 PyMySQL,不需要安装 MySQL 的开发库。

  1. 安装 PyMySQL
    bash pip install PyMySQL

  2. 使用 PyMySQL 替代 MySQLdb
    在代码中,将连接模块替换为 PyMySQL

python import pymysql pymysql.install_as_MySQLdb()

  1. 测试:
    python import MySQLdb print("PyMySQL 安装成功!")

检查 Python 版本

确保您正在使用支持 Python 3 的版本。如果不确定,请检查 Python 和 pip 的版本:

python3 --version
pip3 --version

总结

  • mysql-python 不支持 Python 3,推荐使用 mysqlclient
  • 如果不想安装 MySQL 的开发库,可以选择 PyMySQL
  • 根据您的需求选择合适的库,推荐 mysqlclient 因为它与 mysql-python 兼容且高效。

如果您仍然遇到问题,请分享更多信息(例如操作系统、Python 版本等),我会进一步协助您。

2025-01-12