一、模块调用

1.创建一个目录project,并且在目录下面创建两个文件

project/
一 pub.py
L一 count.py
在pub.py文件中创建add函数。

#pub.pydef add(a,b):return a+b  

 在相同的目录下再创建一个文件count.py,调用pub.py文件中的add()函数

#count.pyfrom pub import add
print (add(4,5))#输出结果为“9”

 这样即实现了跨文件的函数调用 

2.跨目录模块调用

目录结构如下所示

project/

------model/
  L一 pub.py

L一 count. py

#count.pyfrom model.pub import add
print (add(4, 5))

 在Python 2中将会抛出Impo口Eπor: 找不到名字为model的模块,错误如下图所示, 我们稍后再讨论 Python 2如何才能找到model下面的pub.py文件。 

project/

------model/ 
  L一 count.py

  L一 new_count.py

L一 test. py

代码如下所示:

#count.pyclass A():def add(self,a,b):return a+b

 

#new_count.pyfrom count import A
class B(A):def sub(self,a,b):return a-bresult=B().add(2,5)
print result #输出结果为“7”

 目前,都没有问题,接下来创建与model目录平级的test.py

#test.pyfrom model import new_counttest=new_count.B()
test.add(2,5)

 输出结果如下图所示

 

知识延伸:
当Python在执行import语句时,到底进行了什么 操作。按照python的文档, 它执行了如下操作:第l步, 创建一个新的module对象(它可能包含多个module) ;
第2步, 把这个module对象插到sys.module中;
第3步, 装载module的代码(如果需要,则必须先编译);
第4步, 执行新的module中对应的代码在执行第3步时, 首先需要找到module程序所在的位直 ,搜索的顺序是:当前路径(以及从当前目录指定的sys.path),PythonPATH,再后是Python安装时设直的相关的默认路径。 正因为存在这样的顺序 ,所以如果当前路径或 PythonPATH中存在与标准module同样的module,则会覆盖标准module。也就 是说, 如果当前目录下存在xml.py, 那么在执行import xml 时, 导入的是当前目录下的module, 而不是系统标准的xml。了解了这些后, 我们就可以先构建一个package,以普通module的方式导入,这样即可直接访问此package中的各个 module。 Python 2中的package必须包含一个__init_.py的文件。

 调整后的代码如下所示:

#test.py#coding:utf-8
import sys
sys.path.append("./model")#将model目录添加到系统环境变量path下
from model import new_counttest=new_count.B()
print (test.add(5,5))

 但是运行之后,还是报错

我们使用的是python2,因此在model目录下面还需要在.../model/目录下创建一个__init_.py 文件(文件内容可以为空), 用来标识这是一个标准的包含了 Python 模块的目录。如下图所示

再次运行test.py文件,即可正常运行,输出结果如下图所示

 

 

转载于:https://www.cnblogs.com/Rita-LJ/p/11270743.html

Selenium 2自动化测试实战5(模块调用)相关推荐

  1. Selenium 2自动化测试实战12(获得验证信息)

    一.获得验证信息 通常用的最多的几种验证信息分别是:title.URL和text 运行脚本之后,结果如下图所示: #coding:utf-8 from selenium import webdrive ...

  2. python自动测试p-关于《Python自动化测试实战》

    作者有话说 笔者写这本书的初心是想通过自身经验分享一些在自动化测试领域中的实用技术,能够帮助那些正在从事自动化测试相关工作或者准备转型自动化测试的测试人员.任何一门技术涵盖的知识点都是非常广泛的,可能 ...

  3. python自动化测试实战下载_Selenium 2自动化测试实战:基于Python语言 (虫师著) 完整pdf扫描版[44MB]...

    Selenium 2自动化测试实战:基于Python语言分为14个章节,第1章是自动化测试相关基础知识的介绍:第2章到第10章是本书的重点,循序渐进地介绍了自动化测试所用到的技术:第11章通过一个具体 ...

  4. 《selenium2 python 自动化测试实战》(15)——调用js控制滚动条等操作

    看代码: # coding=utf-8 from time import sleepfrom selenium import webdriver driver = webdriver.Firefox( ...

  5. (七)Selenium自动化测试实战—工具开发

    上一篇:(六)Selenium自动化测试实战-unittest框架_要开朗的spookypop的博客-CSDN博客 之前的自动化测试实践都是基于代码的管理,需要测试人员都有一样的代码水平,在公司推广起 ...

  6. 电商网站Web自动化测试实战( 编写京东搜索脚本python+selenium框架)

    电商网站Web自动化测试实战( 编写京东搜索脚本) 1,打开京东页 京东首页地址:https://www.jd.com/,故进入京东首页如下: 2,打开浏览器开发者模式 定位元素前需先打开浏览器开发者 ...

  7. 基于python的界面自动化测试-基于Python语言的自动化测试实战第二章(上)

    原标题:基于Python语言的自动化测试实战第二章(上) 测试环境搭建 2.1 Windows 下的环境搭建 如果想要学习一门编程语言,对于新手来说只需到其官方网站上去下载最新版本安装即可,但对于想要 ...

  8. selenium2 python自动化测试实战(回归测试)

    selenium2 python自动化测试实战 最近接手商城的项目,针对后台测试,功能比较简单,但是流程比较繁多,涉及到前后台的交叉测试.在对整个项目进行第一轮测试完成之后,考虑以后回归测试任务比较重 ...

  9. 腾讯Android自动化测试实战

    腾讯Android自动化测试实战 丁如敏 盛娟 等著 图书在版编目(CIP)数据 腾讯Android自动化测试实战 / 丁如敏等著. -北京:机械工业出版社,2016.10 ISBN 978-7-11 ...

  10. web自动化测试实战之批量执行测试用例

    01实战之分离测试固件 在UI 自动化测试中,不管编写哪个模块的测试用例,都需要首先在测试类中编写测试固件初始化WebDriver类及打开浏览器,执行登录,才能进行下一步业务逻辑的操作,测试用例执行完 ...

最新文章

  1. kaggle账号_机器学习竞赛入门--kaggle篇
  2. android wear ios 连接,教你如何让Android Wear智能手表兼容iOS系统
  3. 从Github开源项目《云阅》所学到的知识
  4. 在线自动下载最新版本jquery
  5. 构建可扩展的有状态服务
  6. Kogito人机规则-第1部分:进一步解决流口水
  7. 腾讯大数据之TDW计算引擎解析——Shuffle
  8. 查看sql server 数据库连接数
  9. 从零开始学keras之过拟合与欠拟合
  10. 通过图片 找到桌面相同图片区域坐标_非常萌的桌面工具-bongo cat mver0.1.6
  11. 白噪音和粉红噪音煲机_白噪音信号的概念及基本理论
  12. 酱油瓶上有两个字很重要,一直都被忽略了,以后看准再买!
  13. Linux 服务器性能出问题,排查下这些参数指标
  14. 学校计算机总帐和明细帐的表格,5教学仪器设备总账和明细账填写模板.doc
  15. 电厂数字化进阶之路(一):光明的使者
  16. Pyinstaller打包
  17. Node.js 种子下载器
  18. 计算机考试当场出分,基金从业资格考试当场出成绩吗?
  19. 【每晚一个恐怖的测开技术学习小故事】第三集:无限噩梦算法
  20. Week11——C密文

热门文章

  1. 面试题之synchronized与Lock的区别
  2. 洛谷P2257 YY的GCD(莫比乌斯反演)
  3. 微信小程序开发 -- 获取当前页面路径
  4. 【电力电子】功率因素\无功功率
  5. Apache目录禁止解析
  6. 牛客网-《剑指offer》-二进制中1的个数
  7. 驱动编译的时候注意编译工程选项
  8. 使用.tar文件 升级cisco 3550 IOS
  9. c# 更改最大化按钮功能实现最大化时遮盖任务栏,点击Esc取消全屏
  10. .text urlRewrite介绍