1. 一、模块相互调用
    同级目录调用时的两种方法
  1. import module
  2. print(module.add(3,8))
  3.  
  4. from module import add
  5. print(add(2,4))
  1. 同级目录的子目录调用
  1. from 文件相互调用 import cal
  2. print(cal.sub(3,8))
  3. from 文件相互调用.cal import sub #这种情况下加一个点(.),然后写目录
  4. print(sub(3,9))
  1. 同级目录的子目录的子目录的调用
  1. from 文件相互调用.文件2 import cal2
  2. print(cal2.mul(3,7))
  3.  
  4. from 文件相互调用.文件2.cal2 import mul
  5. print(mul(3,7))
  1. 依次再深一层
  1. from 文件相互调用.文件2.文件3 import cal3
  2. print(cal3.divi(8,2))
  3. from 文件相互调用.文件2.文件3.cal3 import divi
  4. print(divi(8,2))

特殊情况

  1. ######### 有一种情况特殊的 #################
  2. from 文件相互调用.文件2 import 文件3 #这种不推荐用这种的
  3. print(文件3.cal3.divi(8,2))
  4.  
  5. ##### 有一种特殊的调用格式:这种不推荐用。一执行效率低;二不却确定文件是否重复等
  6. from 文件相互调用 import *
  7. print(cal.sub(3,8))
  8.  
  9. from 文件相互调用.文件2.文件3 import *
  10. print(cal3.divi(8,2))

二、一些细节

  1. #############################################
  2. 同时调用多个模块时,可简写如下
  3. import xx, xx,xx, ... #即用逗号隔开
  4.  
  5. ##############################################
  6. import调用模块时,做了两件事情:
  7. 1、会执行一遍被调用的模块
  8. 2、引入变量名(即模块名)
  9. ##############################################33
  10. 通常情况下不会把所有程序写在一个文件里面,而是依据功能写到不同的文件里面
  11. 如:
  12. bin文件时程序的的入口
  13. main 文件里只写逻辑程序
  14. module 文件里面只写功能程序
  15.  
  16. 包的功能:
  17. 1、用来组织模块的,可以根据模块的功能分包;
  18. 2、避免模块冲突;而同名模块放在不同包就不会发生冲突。
  19.  
  20. ################################################33
  21. if __name__ == "__main__":
  22. print(add(3,5))
  23. print('ok')
  24.  
  25. print(__name__)
  26.  
  27. if __name__ == "__main__": 作用有二:
  28. 1 放入某一个文件种,用来测试该文件的结果,但是,该文件被调用时,该语句不会被执行。
  29. 简单说就是:用于被调用文件的测试
  30. 2、调用程序里面写上这么一句,可以防止别人修改我的主程序,仅供他人调用而已。

python模块--如何相互调用自己写的模块的更多相关文章

  1. python - 函数的相互调用 及 变量的作用域

    # -*- coding:utf-8 -*- '''@project: jiaxy@author: Jimmy@file: study_函数的相互调用及变量的作用域.py@ide: PyCharm C ...

  2. python不同包之间调用时提示文件模块不存在的问题

    python对于跨包调用函数时,经常会提示模块不存在的问题,主要是python程序执行时,搜索路径导致的,python程序执行的路径依次是: (1)程序根目录(2)环境变量(3)标准库目标(D:\Py ...

  3. Python与C相互调用、编译

    因为最近学习Boost::python的缘故,想尝试下不同语言之间的相互编译. 参考资料:http://blog.csdn.net/joliny/article/details/2457197. 很吃 ...

  4. Python与Javascript相互调用超详细讲解(2022年1月最新)(三)基本原理Part 3 - 通过C/C++联通

    目录 TL; DR python调javascript javascript调python 原理 基于Node.js的javascript调用python 从Node调用python函数 V8 嵌入P ...

  5. Python与Javascript相互调用超详细讲解(四)使用PyNode进行Python与Node.js相互调用项(cai)目(keng)实(jing)践(yan)

    目录 前提 安装 使用 const pynode = require('@fridgerator/pynode')的时候动态链接错误 ImportError: math.cpython-39-x86_ ...

  6. Python与Javascript相互调用超详细讲解(2022年1月最新)(一)基本原理 Part 1 - 通过子进程和进程间通信(IPC)

    TL; DR 适用于: python和javascript的runtime(基本特指cpython[不是cython!]和Node.js)都装好了 副语言用了一些复杂的包(例如python用了nump ...

  7. Python实例浅谈之三Python与C/C++相互调用

    一.问题 Python模块和C/C++的动态库间相互调用在实际的应用中会有所涉及,在此作一总结. 二.Python调用C/C++ 1.Python调用C动态链接库 Python调用C库比较简单,不经过 ...

  8. python调用C++之pybind11入门(相互调用)

    python调用C/C++有不少的方法,如boost.python, swig, ctypes, pybind11等,这些方法有繁有简,而pybind11的优点是对C++ 11支持很好,API比较简单 ...

  9. Python与C/C++相互调用(python2 调c++那个试了ok)

    一.问题 Python模块和C/C++的动态库间相互调用在实际的应用中会有所涉及,在此作一总结. 二.Python调用C/C++ 1.Python调用C动态链接库 Python调用C库比较简单,不经过 ...

随机推荐

  1. pahlcon:循环调度(Dispatch Loop)或跳转

    循环调度将会在分发器执行,直到没有action需要执行为止.在上面的例子中,只有一个action 被执行到.现在让我们来看下“forward”(转发)怎样才能在循环调度里提供一个更加复杂的操作流,从而 ...

  2. Template、ItemsPanel、ItemContainerStyle、ItemTemplate (部分内容有待验证)

    以下摘自“CSDN”的某人博客,部分内容有待验证,需注意“辨别学之....” 1.Template是指控件的样式 在WPF中所有继承自contentcontrol类的控件都含有此属性,(继承自Fram ...

  3. VS2017 MVC项目,新建控制器提示未能加载文件或程序集“Dapper.Contrib解决方法

    VS2017中MVC项目中,右键新建控制器时,提示 未能加载文件或程序集“Dapper.Contrib, Version=1.50.0.0, Culture=neutral, PublicKeyTok ...

  4. Friendly Date Ranges

    让日期区间更友好! 把常见的日期格式如:YYYY-MM-DD 转换成一种更易读的格式. 易读格式应该是用月份名称代替月份数字,用序数词代替数字来表示天 (1st 代替 1). 记住不要显示那些可以被推 ...

  5. 微信小程序获取当前页面的路径的方式

    使用getCurrentPages可以获取当前加载中所有的页面对象的一个数组,数组最后一个就是当前页面. var pages = getCurrentPages() //获取加载的页面 var cur ...

  6. TCP/IP网路协议复习

    1.OSI (Open System Interconnect Protocol) 开放互联协议,这是一个七层的计算机网络协议,包括:物理层.数据链路层.网络层.传输层.回话层.表示层.应用层.    ...

  7. C++多线程2.beginthread

    C++ 多线程2 beginthread 启动线程知识 20131021 Reference: http://blog.csdn.net/laoyang360/article/details/7720 ...

  8. COW写时复制

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  9. ubuntu下编译neovim

    # 安装编译依赖 sudo apt-get install libtool libtool-bin autoconf automake cmake g++ pkg-config unzip -y # ...

  10. [转载]面试心得与总结---BAT、网易、蘑菇街等

    转载自:http://mp.weixin.qq.com/s?__biz=MzIzMDIxNTQ3NA==&mid=2649111851&idx=1&sn=f43c42f7262 ...