解决cookiecutter在ubuntu上遇到的问题“No module named functools_lru_cache”

  • 前言
  • 背景
  • 解决过程
  • 结束语
  • 参考

前言

我们都知道cookiecutter是一个非常方便的基于Python的项目模板工具,它就相当于一些IDE工具的创建项目工程的向导工具,创建的工程具有统一的结构。

背景

同事之前写了一个golang的项目模板,今天在使用cookiecutter创建新工程时,出现了问题Unable to load extension: No module named functools_lru_cache。询问身边的同事有没有碰到这样的问题,得到的答复是没有。他们用的系统都是Mac OS。而我用的是Ubuntu。我的系统版本是Ubuntu 18.04.4 LTS

解决过程

看提示像是在ubuntu系统上cookiecutter缺少了依赖functools_lru_cache,很可能是没有安装它。于是就执行下面的命令去安装functools_lru_cache

$ pip install backports.functools_lru_cache

然后再去执行:

$ cookiecutter git@XXX/go-swagger-template.git

几秒钟后,问题依然存在:

Unable to load extension: No module named functools_lru_cache

然后就开始拿出了面向google编程的本领,开始了一顿搜索。搜索结果就是很多人在Ubuntu上都遇到过这个问题。在github上一个开源项目里,就有人提了这样一个issue[^1].
在这个issue[^1]里,有人提出卸载functools_lru_cache后再重新安装。并有一些人尝试之后确实解决了这个问题。

$ pip uninstall backports.functools_lru_cache
$ pip install backports.functools_lru_cache

我也安装这个方式尝试了两次,但都不行。于是继续往下看这个issue,看是否有别的解决方案。还真有!harprit讲,看起来是functools_lru_cache相关的文件丢失造成的。他说python matplotlib在ubuntu上也有这个问题。按照他的建议使用下面的命令安装python-matplotlib

$ sudo apt-get install python-matplotlib

安装完后,再尝试使用cookiecutter来创建新项目工程,问题消失了,工程创建成功。非常感谢google。

在前面的issue[^1]讨论中,有人是用Fedora系统,他的解决方案是执行下面的命令:

dnf install python2-backports-functools_lru_cache

结束语

写此博文存粹是帮助自己把这个问题的解决方法记录下来,以备后续再遇到,减少自己重复的工作。也给将来遇到这个问题的小伙伴提供一个方案,没准能帮助到你们,那将是我今天写这篇博客的荣幸。

参考

  • [^1]https://github.com/awslabs/aws-sam-cli/issues/474
  • https://askubuntu.com/questions/1046554/python-matplotlib-importerror-no-module-named-functools-lru-cache?answertab=oldest#tab-top
  • https://stackoverflow.com/questions/47179433/python-2-7-functools-lru-cache-does-not-import-although-installed/47317710#47317710

解决cookiecutter在ubuntu上出现的问题“No module named functools_lru_cache”相关推荐

  1. ubuntu 中 pip 出现 ModuleNotFoundError: No module named ‘pip._internal‘

    ubuntu 中 pip 出现 ModuleNotFoundError: No module named 'pip._internal' 文章目录 ubuntu 中 pip 出现 ModuleNotF ...

  2. 解决运行python脚本报错:ModuleNotFoundError: No module named ‘numpy‘

    报错: Traceback (most recent call last):   File "get_kpi.py", line 2, in <module>     ...

  3. python 找不到socket_swift 和 python解决Python找不到ssl模块问题 No module named _ssl

    python安装完毕后,提示找不到ssl模块:[www@pythontab.com ~]$ python Python 2.7.15 (default, Oct 23 2018, 18:08:43) ...

  4. 解决命令行运行python文件,出现No module named *** 报错问题

    解决命令行运行python文件,出现No module named *** 报错问题 参考文章: (1)解决命令行运行python文件,出现No module named *** 报错问题 (2)ht ...

  5. ubuntu运行Openvino出现 ModuleNotFoundError: No module named ‘openvino.model_zoo.model_api‘解决

    这个问题花了我不少时间排查,其实这个跟官网对Linux上使用openvino的文档描述不够详细有关系,让我浪费了几个小时在这种没有意义的探索上,幸好问题解决了,如果我的方法给你帮助,请给我点赞,谢谢! ...

  6. python linux apt,Linux Mint 19上的Python3.7“No module named apt_pkg”错误

    当我试图在LinuxMint19上运行教授给我的Python3.7测试代码时,我得到了以下错误RuntimeError: Bad code object in .pyc file Error in s ...

  7. 解决导入curses包的时候出现ModuleNotFoundError: No module named ‘_curses‘的问题

    写py脚本时,需要用到curses库(提供了控制字符屏幕的独立于终端的方法). 导入是正常, 运行时报错:ModuleNotFoundError: No module named '_curses' ...

  8. python中的ssl模块不能用_解决Python找不到ssl模块问题 No module named _ssl的方法

    python安装完毕后,提示找不到ssl模块: [www@pythontab.com ~]$ python Python 2.7.15 (default, Oct 23 2018, 18:08:43) ...

  9. 解决虚拟机上ubuntu上安装搜狗拼音输入法无法使用的问题,系统是18.04的

    解决虚拟机上ubuntu18.04上安装搜狗拼音输入法无法使用的问题 网上的教程一搜就来,各种配置,花里胡哨,但是那个搜狗的图标就是不出现,针对这个疑难杂症现在给出下面的解决方案.概括为:先按照搜狗官 ...

最新文章

  1. smark和openfire即时通信代码
  2. android canvas 网络图,【巨坑:toDataURL】canvas合成网络图片
  3. Linux驱动开发必看详解神秘内核(完全转载)
  4. hantzsch酯_有机人名反应——Hantzsch吡啶合成
  5. 想要轻松入门数据分析,这些知识不得不看!
  6. 遥感学习教学课件分享
  7. 如何在IE浏览器中引入本地字体文件
  8. 京东大数据技术白皮书
  9. 扩展:数据库笔试题集合-2
  10. C语言 简单的文件下载器
  11. hexo+next 给博客添加网易云音乐外链接
  12. 计算机id和密码怎么查,忘记Apple ID账号和密码怎么办?
  13. 2022面试必刷461道大厂架构面试真题汇总+面经+简历模板
  14. 最新财报发布+天猫618双榜第一,耐克蓄力领跑下个50年
  15. 计算机无法连接因特网络,有网但是无法连接到internet
  16. 简单又强大的联发科手机PhilZ Touch Recovery安装器,详细教程 - 本文出自高州吧
  17. 虚拟机中的ubuntu怎么设置1920X1080分辨率
  18. 关于 gcc/g++编译选项: -fPIC 功能的解释
  19. Artificial Intelligence -- Chapter 12 Intro to Machine Learning
  20. ​2 万字超详细的 Linux 总结,带你实现命令自由(至尊典藏版)

热门文章

  1. 创业不知道做什么的看过来了——干货分享,禁止转载。
  2. Lua--基本语法(table表和泛型for)
  3. 电源管理芯片:电源管理芯片代理商元件及结构
  4. 联想ThinkPad E470设置 U盘启动
  5. 国内免费开源CMS系统大全
  6. DNS 缓存查看以及清除
  7. Kubernetes阿里云YUM更新源k8s国内源
  8. 高中数学必修4知识点:第二章平面向量(复习必备)图文
  9. 计算机不能切换显卡,NVIDIA控制面板3D设置切换高性能显卡出现拒绝访问对话框的解决方法...
  10. pascal行人voc_在一个很小的Pascal VOC数据集上训练一个实例分割模型