python 中不同包 类 方法 之间的调用详解


Posted in Python onMarch 09, 2020

目录结构如下:

python 中不同包 类 方法 之间的调用详解

在hello.py中导入ORM.py这个文件的时候,采用

import ORMPackage.ORM

或者

import ORM
u = User(id = 123, name='codiy', email='codiy_huang@163.com', password='123456')

两种方式均报错

错误提示:

name '***' is not defined

或者

No module named ORM

解决办法:

方法一 将包所在的目录添加到sys.path路径

import sys
import os
sys.path.append(os.getcwd() + '/ORMPackage')
from ORM import User
u = User(id = 123, name='codiy', email='codiy_huang@163.com', password='123456')

方法二 python版本≥3.5,可采用

from ORMPackage import ORM

或者

from ORMPackage.ORM import User

或者

from .ORM import User # 最近发现这种情况较多,直接 .*

补充知识:python导入两个包括同名函数的模块

当使用的函数中出现同名函数时,如果不注意的话,会造成程序的异常,这个时候要仔细的看程序的报错信息,会发现是函数的引用出现错误。如果不仔细的话会误以为是其他原因导致函数不能正常运行,会浪费很多时间。o(???)o

rectangle和 circular为两个不同的模块,它们都包含girth函数

如下运行函数时会有异常

from rectangle import *  #导入矩形模块
 
from circular import *   #导入圆形模块
 
girth(10)           #调用计算圆形周长的函数
 
girth(10,,20)      #调用计算矩形周长的函数

解决办法是:不使用from....import 导入,而是使用import导入

import rectangle as r
 
import circular as c
 
c.girth(10)           #调用计算圆形周长的函数
 
r.girth(10,,20)      #调用计算矩形周长的函数

也可以直接把函数起别名,这样在用函数的时候直接使用函数别名就行了

from... import ....as...

以上这篇python 中不同包 类 方法 之间的调用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python3设计模式之简单工厂模式
Oct 17 Python
Python爬虫信息输入及页面的切换方法
May 11 Python
Python实现base64编码的图片保存到本地功能示例
Jun 22 Python
python特性语法之遍历、公共方法、引用
Aug 08 Python
Python 实现域名解析为ip的方法
Feb 14 Python
Python地图绘制实操详解
Mar 04 Python
使用python 将图片复制到系统剪贴中
Dec 13 Python
使用 tf.nn.dynamic_rnn 展开时间维度方式
Jan 21 Python
Django模板标签中url使用详解(url跳转到指定页面)
Mar 19 Python
解决jupyter notebook显示不全出现框框或者乱码问题
Apr 09 Python
Python numpy矩阵处理运算工具用法汇总
Jul 13 Python
Pandas之缺失数据的实现
Jan 06 Python
PyCharm 无法 import pandas 程序卡住的解决方式
Mar 09 #Python
python3 使用traceback定位异常实例
Mar 09 #Python
基于Python3.7.1无法导入Numpy的解决方式
Mar 09 #Python
Python 解决火狐浏览器不弹出下载框直接下载的问题
Mar 09 #Python
Python实现井字棋小游戏
Mar 09 #Python
python爬虫开发之selenium模块详细使用方法与实例全解
Mar 09 #Python
python为QT程序添加图标的方法详解
Mar 09 #Python
You might like
PHP实现下载功能的代码
2012/09/29 PHP
深入php多态的实现详解
2013/06/09 PHP
IIS+fastcgi下PHP运行超时问题的解决办法详解
2013/06/20 PHP
js textarea自动增高并隐藏滚动条
2009/12/16 Javascript
jquery 新浪网易的评论块制作
2010/07/01 Javascript
JS限制Textarea文本域字符个数的具体实现
2013/08/02 Javascript
百度判断手机终端并自动跳转js代码及使用实例
2014/06/11 Javascript
JS判断变量是否为空判断是否null
2014/07/25 Javascript
jQuery实现在列表的首行添加数据
2015/05/19 Javascript
AnjularJS中$scope和$rootScope的区别小结
2016/09/18 Javascript
js实现动态显示时间效果
2017/03/06 Javascript
史上最全JavaScript数组去重的十种方法(推荐)
2017/08/17 Javascript
jQuery封装animate.css的实例
2018/01/04 jQuery
更强大的vue ssr实现预取数据的方式
2019/07/19 Javascript
JS如何实现动态添加的元素绑定事件
2019/11/12 Javascript
[56:14]Fnatic vs OG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
对于Python编程中一些重用与缩减的建议
2015/04/14 Python
Python中文字符串截取问题
2015/06/15 Python
win7 x64系统中安装Scrapy的方法
2018/11/18 Python
python用pip install时安装失败的一系列问题及解决方法
2020/02/24 Python
python os模块在系统管理中的应用
2020/06/22 Python
Python如何进行时间处理
2020/08/06 Python
通过案例解析python鸭子类型相关原理
2020/10/10 Python
微信浏览器左上角返回按钮拦截功能
2017/11/21 HTML / CSS
PUMA官方商城:世界领先的运动品牌之一
2016/11/16 全球购物
乌克兰第一的珠宝网上商店:Gold.ua
2019/11/29 全球购物
理工大学毕业生自荐信
2013/11/01 职场文书
学雷锋活动总结范文
2014/04/25 职场文书
创新社会管理心得体会
2014/09/12 职场文书
2014年个人工作总结模板
2014/12/15 职场文书
毕业设计致谢语
2015/05/14 职场文书
cf战队宣传语
2015/07/13 职场文书
终止合同协议书范本
2016/03/22 职场文书
Flask response响应的具体使用
2021/07/15 Python
Oracle中update和select 关联操作
2022/01/18 Oracle
在python中读取和写入CSV文件详情
2022/06/28 Python