模块间的调用

1.自定义模块的调用

from backend.logic import handle

handle.home()

2.上层模块的调用

import os
import sys
print(__file__)
print(os.path.abspath(__file__))
print(os.path.dirname(os.path.abspath(__file__)))
base_dir = os.path.dirname(os.path.abspath(__file__))
sys.path.append(base_dir)
print(sys.path)

$ python path.py 
path.py
/Users/guoxianqi/tmp/path.py
/Users/guoxianqi/tmp
[‘/Users/guoxianqi/tmp‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload‘, ‘/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC‘, ‘/Library/Python/2.7/site-packages‘, ‘/Users/guoxianqi/tmp‘]
时间: 2024-11-10 18:11:14

模块间的调用的相关文章

Node.js(window)基础(2)——node环境下的模块,模块间调用

参考:http://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001434502419592fd80bbb0613a42118ccab9435af408fd000 1.node环境下的模块(module)概念:一个name.js文件就是一个模块,name是模块名称,模块中的函数方法称之为变量. 2.模块变量的调用:A.js中输出变量module.exports=函数名称; B.js引入模

初探linux内核编程,参数传递以及模块间函数调用

一.前言                                  我们一起从3个小例子来体验一下linux内核编程.如下: 1.内核编程之hello world 2.模块参数传递 3.模块间函数调用 二.准备工作                           首先,在你的linux系统上面安装linux头文件,debian系列: 1 $:sudo apt-get install linux-headers-`uname -r` 安装后,在你的/lib/modules/目录下有你刚

ios业务模块间互相跳转的解耦方案

*此文章需有一点runtime的知识,假设你不了解runtime,<高速理解Runtime of Objective-C>: http://mp.weixin.qq.com/s?__biz=MzIxNDI0OTAzOQ==&mid=403005635&idx=1&sn=71375cb0dee51487c90087d488ff59fe#rd 问题: 一个app通常由很多个模块组成,全部模块之间免不了会相互调用,比如一个读书管理软件,可能会有书架.用户信息.图书详情等等模块

JS模块间错误隔离

问题背景: 页面中有多个功能模块,怎么在一个模块出了问题之后,保证其它模块的正常工作. 上面的差不多就是面试官的原话了,姑且称之为模块间错误隔离问题 第一反应是动态按需加载代码,用户操作发生后再加载对应模块代码,面试官(后文简称:对面)说所有模块代码都是在页面载入时加载的,不允许动态加载. 第二反应是error事件处理器return true,对面问确定这样做能隔离错误吗?不确定,好吧..接着想 第三反应是try-catch,对面问怎么个try-catch法?说用try把各个模块包裹起来啊,也可

模块及模块间的接口方式

结构化程序设计时,采用自顶向下和层层分解的模块式编程.那么从概念上需要了解,这些所谓的模块之间接口方式有哪些,以及如何描述呢? 一般来讲,模块可以描述为 : 模块名(参数) {模块体} 模块间的接口方式以及描述如下: (1)全局变量 :定义在模块之外.这是很特殊的一种接口. (2) 子模块返回的信息: 接口一:子模块名(即被调用的函数名) 接口二:return 语句(位于被调用的函数的函数体内). (3)调用模块传递给子模块(参数值传递) 参数形式: 普通变量名或者表达式 (4)调用模块与子模块

【转】初探linux内核编程,参数传递以及模块间函数调用

http://www.cnblogs.com/yuuyuu/p/5119891.html ZC: 疑问,最后的 模块kernel_mod 调用 模块kernel_fun的函数fun,是成功的OK的.但是 模块kernel_mod 怎么就知道 它调用的就是 模块kernel_fun的fun函数?如果 又有一个 模块kernel_fun01它也导出了fun函数,此时 模块kernel_mod调用fun的话调用的是哪一个模块的fun函数? (ZC: 测试了一下,两个模块 有相同的导出函数的话,在 加载

关于项目模块间交互的一个设计思路

1.背景 某API项目,项目天然地按业务分为了不同的包,那么每个包都独立处理自己的业务逻辑,独立接管数据源,独立地向外部提供数据,彼此基本互不通信. 不过,随着需求的增多和业务的堆积,项目的复杂度越来越大,但是每个独立模块却又不足以独立出去成为一个单独的项目,而模块间又因业务需要开始发生交互的时候,问题来了. 2.问题描述 由于模块间的数据交互,按照Spring的套路,是可以直接把容器接管的对象注入到你需要的地方去的,那么一旦你开始问其他模块要数据,开始要命了.如上图,如果模块3问模块2和模块4

微服务间的调用和应用内调用的有啥区别

摘要 目前大部分的系统架构都是微服务架构,就算没有注册中心.服务管理,也肯定是多个服务,单体服务比较少了. 大家平时需要在应用内调用rpc接口也比较多,那么有没有思考过微服务之间的调用和应用内直接调用有什么区别呢?面试时是不是经常被被问到微服务呢,本篇文章针对微服务间的方法调用和应用内方法调用的有啥区别这个很小的点,谈谈我的经验 微服务调用特点 先从单体应用说起 单体应用 单体引用通过一个服务节点直接组装好数据,返回给调用者.所有的方法调用都发生在应用内部. 微服务应用 商品详情服务需要调用商品

Python 中模块间全局变量的使用上的注意

最近用Python写代码,需要用到模块间的全局变量. 网上四处搜索,发现普遍做法是把全局变量放到一个独立的模块中,使用时,导入此全局变量模块即可. 但是在实际使用过程中发现了些小问题:在使用如下代码导入全局变量模块时,各个模块获取到的全局变量都是初始值. from module import global_var 但是如果使用「模块名.全局变量名」来访问时,却又是正常的: import module print module.global_var 为了弄清其中的原委,我写了个测试程序来仔细查看其