在使用 Python 3 进行 Flask 学习时,运行服务时,出现:
ImportError: No module named 'pysqlite2'

一. 现象 && 原因

出现如下 Error
ImportError: No module named 'pysqlite2'

查看出错代码时,有下面的信息:

File "$/venv/lib/python3.5/site-packages/sqlalchemy/dialects/sqlite/pysqlite.py"
, line 334, in dbapi
from pysqlite2 import dbapi2 as sqlite

问题原因,可能为 无法打开 pysqlite2 库,因使用 Python3.5 作为开发环境, Python 3.5 默认使用 sqlite3,且可以替代 pysqlite2
stackoverflow 上,有人建议使用 sqlite3 替换 pysqlite2, 详见这里

展开出错位置代码如下:

    @classmethod
    def dbapi(cls):
        try:
           from pysqlite2 import dbapi2 as sqlite
        except ImportError as e:
            try:
                from sqlite3 import dbapi2 as sqlite  # try 2.5+ stdlib name.
            except ImportError:
                raise e

这里已经对不同版本使用 sqlite做出了处理。所以该问题并不是上述问题产生。

进入 Python3 交互环境后:
import sqlite3
会出现 Error.

原因是编译安装 Python3 时,缺少 sqlite3 依赖。
yum install sqlite-devel
重新编译安装 Python3 后问题得到解决。

好记性不如烂笔头,该问题之前已经出现过,当时没有记录,二次发生这种问题的时候,仍然需要查找资料。 磨刀不误砍柴工,还是要及时记录问题。

ImportError: No module named 'pysqlite2'的更多相关文章

  1. ImportError: No module named pysqlite2 --安装pysqlite

    yum install sqlite-devel -y pip install pysqlite 每次使用yum安装额外的包之后都需要重新安装python,否则可能会有各种奇奇怪怪的问题出现 cd P ...

  2. ImportError: No module named 'requests'

    补充说明: 当前环境是在windows环境下 python版本是:python 3.4. 刚开始学习python,一边看书一边论坛里阅读感兴趣的代码, http://www.oschina.net/c ...

  3. python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'如何解决

    python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'的解决方法: 1.原因是官网的是python2语法写的,看官手动把官 ...

  4. Ubuntu: ImportError: No module named xgboost

    ImportError: No module named xgboost 解决办法: git clone --recursive https://github.com/dmlc/xgboost cd ...

  5. gdb 调试出现 ImportError: No module named 'libstdcxx'

    在emacs使用gdb调试程序,出现错误 , in <module> from libstdcxx.v6.printers import register_libstdcxx_printe ...

  6. 关于python3.X 报"import urllib.request ImportError: No module named request"错误,解决办法

    #encoding:UTF-8 import urllib.request url = "http://www.baidu.com" data = urllib.request.u ...

  7. virtualenv中ImportError: No module named django

    问题现象:在代码py文件中,import django 报错,但是在python shell中直接执行这个语句没错, 网上搜索了下,自己测试了下,确定原因是由于使用了python中的virtualen ...

  8. win7下python3.4 ImportError: No module named 'MySQLdb'错误解决方法

    首先,安装PyMySQL C:\Users\fnngj>python -m pip install PyMySQL 执行以下命令会报错: ImportError: No module named ...

  9. python打怪之路【第二篇】:ImportError: No module named setuptools

    在python安装第三方模块时出现如下错误: python错误:ImportError: No module named setuptools这句错误提示的表面意思是:没有setuptools的模块, ...

随机推荐

  1. input file 多张图片上传 获取地址 ——fileReader

    //上传图片 $('#files').change(function(e){ var fil = this.files; var m =0; if(fil.length>3){ alert('重 ...

  2. jquery easyui datagrid 加每页合计和总合计

    jquery easyui datagrid 加每页合计和总合计 一:效果图 二:代码实现 这个只有从后台来处理 后台根据rows 和page两个参数返回的datatable 命名为dt 然后根据dt ...

  3. MobileNet V2

    https://zhuanlan.zhihu.com/p/33075914 http://blog.csdn.net/u011995719/article/details/79135818 https ...

  4. PL\SQL 随学笔记

    一.在PL\SQL语句块begin...end;中,不能直接使用select,必须与into结合查询. 例如: declare aa:=22; id2 integer; begin select * ...

  5. ios集成极光推送:Undefined symbols for architecture arm64: "_dns_parse_resource_record", referenced from:?

    添加libresolv.tbd库,即可解决问题 Undefined symbols for architecture arm64: "_dns_parse_resource_record&q ...

  6. ob_start用法详解

    用PHP的ob_start(); 一. 相关函数简介:1.Flush:刷新缓冲区的内容,输出.函数格式:flush()说明:这个函数经常使用,效率很高.2.ob_start :打开输出缓冲区函数格式: ...

  7. Django 之缓存

    一.缓存 由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcac ...

  8. Matplotlib模块:绘图和可视化

    一.简单介绍Matplotlib 1.Matplotlib是一个强大的Python绘图和数据可视化的工具包 2.安装方法:pip install matplotlib 3.引用方法:import ma ...

  9. select下拉框可以直接取list里的内容 不用非得转map (不得不承认我是个ZZ,这么简单的问题才反应过来,--^--)

    需求描述:select下拉框的填充项,从后台传来的list中获取 自黑一下:之前有篇随笔,写的是通过map传到前台,在前台的select中的value属性取值 用map的key,而select的tex ...

  10. 简单(基本)的风光摄影照片后期处理-新手教程-ps照片后期基本处理

    前言 Photoshop虽然不是万能的,但缺少Photoshop却是万万不能的!风光摄影不是一个记录过程,做到的不能仅仅是“拍到了”,我觉得应该是一个创作的过程,特别是在后期处理的过程中,创作意味更浓 ...