python 模块间的引入
转载来自:
https://www.cnblogs.com/whitemouseV2-0/p/9925344.html
https://www.cnblogs.com/whitemouseV2-0/p/9925374.html
1、python同级目录及子目录模块引入
2个模块在同一个包内时(即引入和被引入的2个py文件在同一个目录下),直接引入模块名
1、引入与被引入模块或包在同一目录下时,直接引入模块名或者包名import modulename.py或者import packagename
示例:
文件层级:

①模块print_parameters.py引入parameters.py模块内变量或函数时,
import parameters #使用时,module_name.variable_name(模块名.变量名)
from parameters import * #使用时,直接variable_name(变量名)
from parameters import variable_name #使用时,直接variable_name(变量名或方法)
如:print(parameters.number+1) #number为parameters.py参数内的变量
②模块print_letter.py引入test176包下__init__.py模块内变量或函数时,
import test176
from test176 import *
from test176 import variable_name #使用时,直接variable_name(变量名或方法)
③模块print_letter.py引入test176包下letter.py模块内变量或函数时,
import test176.letter
from test176.letter import *
from test176.letter import variable_name #使用时,直接variable_name(变量名或方法)
④模块print_word.py引入包test下__init__.py模块内变量或函数时,
import __init__
from __init__ import *
from __init__ import variable_name #使用时,直接variable_name(变量名或方法)
2、引入父级模块或者包
---引入父级目录
目录结构:

print_father.py引入上级目录father.py模块的sentence变量,代码如下:
#注:需要引入的文件 E:\test\test176\test186\grandfather.py
import sys
sys.path.append(r'E:\test\test176\test186') #python搜索环境变量中增加需要引入模块所在路径
from grandfather import sentence
print(sentence)
-----------------------
print_grandfather.py引入上级目录grandfather.py模块的sentence变量,代码如下:
import sys
sys.path.append(r'E:\test\test176')
from grandfather import sentence
print(sentence)
-----------------------------------------------------------------------引入父级子目录
引入父级子目录,并且把增加变量写在包所属模块__init__.py内
目录结构:

python 模块间的引入的更多相关文章
- python 包和模块间的引入
##############################总结####################### 主要内容: 1. 模块 2. import 3. from xxx import xxx ...
- 7 python 模块间相互导入
python在不同层级目录import模块的方法 注意,在python3里,即使目录下没__int__.py文件也能创建成功,猜应该是解释器优化所致,但创建包还是要记得加上这个文件 吧. 1.模块的分 ...
- Python 中模块间全局变量的使用上的注意
最近用Python写代码,需要用到模块间的全局变量. 网上四处搜索,发现普遍做法是把全局变量放到一个独立的模块中,使用时,导入此全局变量模块即可. 但是在实际使用过程中发现了些小问题:在使用如下代码导 ...
- 18 Python 模块引入
Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python 代码段. 把相关的代码 ...
- python 模块基础介绍
从逻辑上组织代码,将一些有联系,完成特定功能相关的代码组织在一起,这些自我包含并且有组织的代码片段就是模块,将其他模块中属性附加到你的模块的操作叫做导入. 那些一个或多个.py文件组成的代码集合就称为 ...
- 6.python模块(导入,内置,自定义,开源)
一.模块 1.模块简介 模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py.模块可以被别的程序引入,以使用该模块中的函数等功能.这也是使用python标准库的方法. 类似于函数式编程和面向过 ...
- Python模块(Module)
一个Python Module(模块),是一个文件,包含了Python对象定义和Python语句(definitions and statements).文件名就是模块名加上后缀.py,在模块内部,模 ...
- Python之路【第八篇】:Python模块
阅读目录 一.模块和包 模块(module)的概念: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到 ...
- python 模块 - 序列化 json 和 pickle
1,引入 之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval ...
随机推荐
- Ubuntu12.04下Encountered a section with no Package: header错误解决方案
刚刚想在Ubuntu12.04下安装几个软件,sudo apt-get install libsqlite3-dev automake scratchbox2,没成想出现下面的错误: ...
- 【Linux】- CentOS安装docker及docker-compose
1.安装docker,命令如下: -- 把yum包更新到最新 yum update -- 安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicema ...
- swiper 窗口宽度变化,页面宽度高度变化 导致自动滑动 解决方案
又又又又是swiper问题 背景: pc端项目,rem布局,swiper作为步骤条(上一步,下一步)的功能. 发现在屏幕拖动,宽高的变化,窗口大小的变化 会引起swiper自动滑动(到下一步). 在下 ...
- hdu6331 /// Floyd+分块DP
题目大意: 给定单向图的n m 为点数和单向边数 接下来m行给定 u v w 为边的起点终点和长度 给定q 为询问个数 接下来q行给定 x y k 求从x到y至少经过k条边的最短路长度 https:/ ...
- python中 try、except、finally执行顺序
我们虽然经常用到try...except 作为异常补货,但是其实很少去研究try源码和机制,也许点进去看过,也是看不出个所以然来 class Exception(BaseException): &qu ...
- Spark Streaming与Storm的对比
- elementUI+JS实现全选与反选
在实际项目开发过程中,遇到的需求,需要实现全选以及取消全选等功能,主要使用ElementUI + JS来实现,具体代码如下: <!DOCTYPE html> <html lang=& ...
- memset函数及其用法,C语言memset函数详解
在前面不止一次说过,定义变量时一定要进行初始化,尤其是数组和结构体这种占用内存大的数据结构.在使用数组的时候经常因为没有初始化而产生“烫烫烫烫烫烫”这样的野值,俗称“乱码”. 每种类型的变量都有各自的 ...
- bzoj1012题解
[解题思路] 强制在线线段树/树状数组,没什么好说的..复杂度O(mlog2m)(线段树)或O(mlog22m)(树状数组). [参考代码] (还naive的时候写的zkw真是翔..) #includ ...
- 线性dp——hdu6578经典dp
多校第一场第一题,这种类型的dp之前做过两题,状态转移一般是从当前状态往后推的 很经典的dp,不过很卡时间 /* 定义 dp[t][i][j][k]代表填完前 t 个位置后,{0, 1, 2, 3} ...