阿刁是一个自动化测试用例,从一出生他就被赋予终生使命,去测试一个叫登录的过程是否合理。他一直就被关在一个小黑屋里面,从来也没有出去过,小黑屋里还被关着其他的同胞,他们身上都捆着两个小袋子。

小黑屋里很难受,他们都想跑出去,可怎么也跑不出去。Python 是他们的总司令,有一次,python 告诉他们,你们就不要想着跑出去了,你们已经够幸运了,只有 8 个人用这个屋子,别的屋子都挤着 30 多个人呢!

“这里还有其他的屋子?” 一个用例顿时感到很欣喜。

“有,这样的屋子这里有 200 多个。每个屋子都有门牌号,你们这个门牌是 test_login,你们这个小镇住的人都很危险,所以通常不允许出去逛。这是你们的小镇地图。‘’

import_path.png

“我们哪里危险了。。。” 阿刁很不满。

Python 微微一笑:“你别不服,看到你们身后的袋子了吗?这里面装了炸弹,里面有两种火药配方,一个叫 ‘’用户名”,一个叫“密码”,你们每个人的配方都不一样,因此威力也不一样。你们的工作就是去测试 login 这个堡垒的坚固程度,这样堡垒真正投入使用的时候,就不怕外面的攻击了。”

“可我们每天都被关在屋子里,哪知道怎么去攻击城堡。”

“这个是个好问题。你们每个人的名字下面我都挂了个锦囊,里面有指令,按照指令做就行了。”

阿刁低头一看,还真有指令,他大声的念了出来:第一条指令是叫 verify 过来帮忙,第二条指令是把炸弹装到 verify 身上,第三条指令是查看 verify 竖起的旗帜,看是否和自己身上的胎记一样,如果一样,就可以下班了;如果不一样,那就报告Python。

“咦,我的指令也是一样的。我的胎记上有一行字,密码为空。你们的呢?”

“我的也是。”

"我的是用户不能为空。"

“我的跟你一样啊”

阿刁低头去看自己的胎记“登录成功”。这给了他希望,不过他对自己的工作还有些疑惑,他得乘总司令还在的时候问问他:“老大,你的指令写得非常明确,可我并不认识什么 verify,万一他不过来怎么办?”,其他人一听到这个顿时都焦虑起来,是啊,万一 verify 不来,这炸弹炸到自己了怎么办?

Python 指挥官给了阿刁一个赞赏的眼神,开始讲:“大家不要慌,你们看到墙上的按钮了吗“

所有人都纷纷望向墙面,上面有很多按钮,其中一个印着:

from castles.login import verify

”虽然你们通常不允许出去,但是别人是可以进出的,你们看地图,verify 是 login 城堡里面的内部人士,他只要走出城堡,就来到了镇上。在下达攻击命令之前,这些按钮会自动按下,我会派人去叫 verify 过来。注意,谁叫的他,谁对比旗帜内容,谁都不允许冒领。

包导入错误

阿刁对这种方式很满意,他是个内向的人,不善与人交际,也不喜欢出去串门。就这样他和 verify 合作了几个月,日子过得平淡轻松。这一天,指挥官又下达攻击任务了,阿刁熟练的完成了一系列准备工作,他看到其他人的表情和凝重,还有几个人正在打电话,他知道出事了。轮到他了,他到门口去叫 verify,可等了很久 verify 都没有进来,炸弹的计时器在响着,阿刁非常紧张,他等不了了,必须把这个问题报告指挥部,不然要出大事了。

电话还没拨出去,炸弹的计时器关了,指挥官终止了此次行动。没过多久,指挥官出现在了小黑屋给大家道歉:“不好意思,让大家紧张了。也不知道哪个码农在你们镇子外面修了堵墙,我在镇子里派出去联系 verify 的人找不到你们镇子的出口,迷路了。你们看地图,这个蓝色的就是墙。还好他们都及时给我打了报告,不然我根本就不知道。”

import_path_new.png

阿刁瞄了一眼那叠报告,都写的一样:

ModuleNotFoundError: No module named 'castles'

“这怎么办,我们送信的人都是临时工,对这里不熟悉。那不每次都会出现这样的问题?”

“我想到一个办法。” 阿刁说,“老大,你可以把去城堡的路线图画到墙上,这样临时工只要看一眼地图,就知道怎么走了。”

“这个办法可以。阿刁是个会思考的人。” Python 说:“不过地图这事不归我管,我得找系统,让他在地图上加点东西”。

Python 在墙上又设计了一个开关:

import sys
sys.path.append(r"D:\subjects\python_test\qianchengdai"")

"这是啥意思啊?"

Python 开始解释:“我们这个国家的人都随身携带一本册子,上面记录了我们常去的地方的一些路线;比如我家的地址就在上面,其他人可以随时来见我;你们现在的地方叫 qianchengdai 地区,我刚才把这个地区下面的主要线路放到了这本册子上,这样全国的人都知道怎么走了。”

阿刁试了一下,还真的可以了,老大就是老大啊,再也不用胆战心惊的担心炸弹爆炸了。。。

python 一个模块找不到的错误:ModuleNotFoundError的更多相关文章

  1. 扩展Python模块系列(五)----异常和错误处理

    在上一节中,讨论了在用C语言扩展Python模块时,应该如何处理无处不在的引用计数问题.重点关注的是在实现一个C Python的函数时,对于一个PyObject对象,何时调用Py_INCREF和Py_ ...

  2. linux环境下 python环境import找不到自定义的模块

    linux环境下 python环境import找不到自定义的模块 问题现象: Linux环境中自定义的模块swport,import swport 出错.swport模块在/root/sw/目录下. ...

  3. 第三百五十节,Python分布式爬虫打造搜索引擎Scrapy精讲—selenium模块是一个python操作浏览器软件的一个模块,可以实现js动态网页请求

    第三百五十节,Python分布式爬虫打造搜索引擎Scrapy精讲—selenium模块是一个python操作浏览器软件的一个模块,可以实现js动态网页请求 selenium模块 selenium模块为 ...

  4. Python学习笔记4-如何快速的学会一个Python的模块、方法、关键字

    想要快速的学会一个Python的模块和方法,两个函数必须要知道,那就是dir()和help() dir():能够快速的以集合的型式列出该模块下的所有内容(类.常量.方法)例: #--encoding: ...

  5. Python traceback 模块,追踪错误

    Python traceback 模块,追踪错误 import traceback try: your code except: traceback.print_exc()

  6. maven多模块项目找不到Class错误

    接手了一个maven管理的多模块项目,又是javaconfig,又是spring data jpa,还算是比较新比较正规的模块化结构吧..然后我往其中的一个模块中新添加了一个jpa的entity,然后 ...

  7. 今天使用VS2012遇到一个问题:"链接器工具错误 LNK2026 XXX模块对于 SAFESEH 映像是不安全的"

    今天使用VS2012遇到一个问题:"链接器工具错误 LNK2026 XXX模块对于 SAFESEH 映像是不安全的"   解决方法: 1.打开该项目的“属性页”对话框. 2.单击“ ...

  8. Python win32com模块 合并文件夹内多个docx文件为一个docx

    Python win32com模块 合并文件夹内多个docx文件为一个docx #!/usr/bin/env python # -*- coding: utf-8 -*- from win32com. ...

  9. Python环境出现模块找不到

    由于上周脚受伤了,修养了几天没有学习.今天去实验室发现我的编译器跑不动了,出现找不到模块的情况,很奇怪都安装了,也不会提示什么模块找不到. 查找了些资料,发现是因为某个模块的文件损坏或者被覆盖或者安装 ...

随机推荐

  1. notepad++批量每行加字符

    移动光标到头 选择正则 输入^ 下面输入需要加的文本. 点替换

  2. django-admin和manage.py用法

    官网文档地址:django-admin和manage.py 金句: 所有的天赋,都来自于你对你喜欢的某种事物的模仿与学习,否则你就不会有这种天赋. 开篇话: 我们在Django开发过程中,命令行执行最 ...

  3. vscode 使用记录

    快捷键 Cmd+P 查找最近的文件 Ctrl+cmd + P 打开命令面板 Ctrl+tab文件间切换 Ctrl+` 打开终端 Cmd +b 隐藏侧边栏 VScode对多行编辑有两种模式 第一种模式 ...

  4. DES加密解密算法C++实现

    DES加密算法并不难,是由一些简单的变换得来的,难的是要有足够的耐心.蒟蒻并不想说自己用了多久才把代码写好的. 代码: 我真的太难了QAQ #include<iostream> using ...

  5. 0day堆(1)堆的管理策略

    基本概念 堆块:堆区内存的基本单位 包括两个部分:块首,块身 块首:标识这个堆块自身的信息:如大小,是否被占用等 块身:分配给用户使用的数据区 堆表:一般位于堆区的起始位置,用于索引堆区所有堆块的信息 ...

  6. DEDE中自定义表单HTML 怎么写

    用DEDE嵌套网站时,有时我们需要添加自定义字段,而自定义字段的HTML样式如何设置呢? 功能地图(核心/频道模型/内容模型管理/)——普通文章的修改——字段管理——你的自定义字段的修改——最下面自定 ...

  7. koa+mysql实现增删改查-全栈之路(001)

    Date: 2020-4-23 以前很少写文章,从今天开始我要挑战一下自己,连续输出100篇技术类文章.这100篇文章我尽量以实战案例为主. 如果你觉得本文还不错,记得关注或者给个 star,你们的赞 ...

  8. JDK13的六大重要新特性

    文章目录 JDK13的六大重要特性 支持Unicode 12.1 动态CDS归档(Dynamic CDS Archiving) java.net.Socket和java.net.ServerSocke ...

  9. varnish4.0缓存代理配置

    防伪码:你必须非常努力,才能看起来毫不费力. 一.varnish原理: 1)Varnish简介: varnish缓存是web应用加速器,同时也作为http反向缓存代理.你可以安装varnish在任何h ...

  10. Linux监听磁盘使用情况

    前阵子服务器磁盘写满了,导致项目出了很多奇怪的问题,比如文件上传不了(这个很好理解),还有登录时验证码无法加载(现在依旧不知道原因,项目的验证码图片是只在内存中生成的BufferedImage对象,不 ...