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 相关文章推荐
python算法学习之桶排序算法实例(分块排序)
Dec 18 Python
用python编写第一个IDA插件的实例
May 29 Python
Python Pexpect库的简单使用方法
Jan 29 Python
详解小白之KMP算法及python实现
Apr 04 Python
Python笔记之代理模式
Nov 20 Python
Linux下升级安装python3.8并配置pip及yum的教程
Jan 02 Python
Django Haystack 全文检索与关键词高亮的实现
Feb 17 Python
解决import tensorflow as tf 出错的原因
Apr 16 Python
如何使用python的ctypes调用医保中心的dll动态库下载医保中心的账单
May 24 Python
Python eval函数介绍及用法
Nov 09 Python
python“静态”变量、实例变量与本地变量的声明示例
Nov 13 Python
Python实现小黑屋游戏的完整实例
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
与数据库连接
2006/10/09 PHP
jquery 插件 任意位置浮动固定层
2008/12/25 Javascript
javascript 动态生成私有变量访问器
2009/12/06 Javascript
JS 屏蔽按键效果与改变按键效果的示例代码
2013/12/24 Javascript
jquery中的on方法使用介绍
2013/12/29 Javascript
js函数内变量的作用域分析
2015/01/12 Javascript
js+canvas绘制五角星的方法
2016/01/28 Javascript
jQuery Select下拉框操作小结(推荐)
2016/07/22 Javascript
js中判断变量类型函数typeof的用法总结
2016/08/09 Javascript
js获取页面引用的css样式表中的属性值方法(推荐)
2016/08/19 Javascript
JS 实现可停顿的垂直滚动实例代码
2016/11/23 Javascript
微信页面弹出键盘后iframe内容变空白的解决方案
2017/09/20 Javascript
vue给组件传递不同的值方法
2018/09/29 Javascript
原生JS无缝滑动轮播图
2019/10/22 Javascript
Vue.js 中制作自定义选择组件的代码附演示demo
2020/02/28 Javascript
js实现上传按钮并显示缩略图小轮子
2020/05/04 Javascript
详解vue3.0 的 Composition API 的一种使用方法
2020/10/26 Javascript
python 解析html之BeautifulSoup
2009/07/07 Python
400多行Python代码实现了一个FTP服务器
2012/05/10 Python
Python Tkinter简单布局实例教程
2014/09/03 Python
Python 文件管理实例详解
2015/11/10 Python
Python 内置函数memoryview(obj)的具体用法
2017/11/23 Python
简单实现python画圆功能
2018/01/25 Python
python pycurl验证basic和digest认证的方法
2018/05/02 Python
python如何使用Redis构建分布式锁
2020/01/16 Python
基于Python实现简单学生管理系统
2020/07/24 Python
在家更换处方镜片:Lensabl
2019/05/01 全球购物
如何打印出当前源文件的文件名以及源文件的当前行号
2015/04/05 面试题
大学毕业的自我鉴定
2013/10/08 职场文书
农业大学毕业生的个人自我评价
2013/10/11 职场文书
2015国庆节66周年标语
2015/07/30 职场文书
六年级上册《闻官军收河南河北》的教学设计
2019/11/15 职场文书
浅谈MySQL next-key lock 加锁范围
2021/06/07 MySQL
MySQL 十大常用字符串函数详解
2021/06/30 MySQL
基于Apache Hudi在Google云构建数据湖平台的思路详解
2022/04/07 Servers
Debian11 Xfce终端光标的颜色怎么设置?
2022/08/14 数码科技