如何解决 virtualenv 中的“No module named 'cPickle'”异常

How to resolve 'No module named 'cPickle'' exception in virtualenv

我正在尝试 运行 连接到所有数据库(mysql,sqlite)并从中获取数据的程序。

Python 版本 - 3.6.8

由于代码太长,我只展示了特定的片段。

def show_columns_mysql(cursor,tbname):
    cursor.execute("""show columns from %s"""%(tbname))
    rs=cursor.fetchall()
    colname=[]
    for i in rs:
        colname.append(i[0])
    return colname

如果我在正常 python 环境中执行程序,则没有任何问题。当我尝试在虚拟环境中执行此操作时,它显示 No module named 'cPickle' .

我已经尝试了所有的解决方案,但 none 解决了我的问题。

问题是什么?

Python中没有cPickle 3.导入pickle即可。 pickle 将自动使用 C 加速器。

安装pickle。然后做:

import pickle as cPickle