python 中不同包 类 方法 之间的调用详解
目录结构如下:
在hello.py中导入ORM.py这个文件的时候,采用
importORMPackage.ORM
或者
importORM
u=User(id=123,name='codiy',email='codiy_huang@163.com',password='123456')
两种方式均报错
错误提示:
name'***'isnotdefined
或者
NomodulenamedORM
解决办法:
方法一将包所在的目录添加到sys.path路径
importsys importos sys.path.append(os.getcwd()+'/ORMPackage') fromORMimportUser u=User(id=123,name='codiy',email='codiy_huang@163.com',password='123456')
方法二python版本≥3.5,可采用
fromORMPackageimportORM
或者
fromORMPackage.ORMimportUser
或者
from.ORMimportUser#最近发现这种情况较多,直接.*
补充知识:python导入两个包括同名函数的模块
当使用的函数中出现同名函数时,如果不注意的话,会造成程序的异常,这个时候要仔细的看程序的报错信息,会发现是函数的引用出现错误。如果不仔细的话会误以为是其他原因导致函数不能正常运行,会浪费很多时间。o(╥﹏╥)o
rectangle和circular为两个不同的模块,它们都包含girth函数
如下运行函数时会有异常
fromrectangleimport*#导入矩形模块 fromcircularimport*#导入圆形模块 girth(10)#调用计算圆形周长的函数 girth(10,,20)#调用计算矩形周长的函数
解决办法是:不使用from....import导入,而是使用import导入
importrectangleasr importcircularasc c.girth(10)#调用计算圆形周长的函数 r.girth(10,,20)#调用计算矩形周长的函数
也可以直接把函数起别名,这样在用函数的时候直接使用函数别名就行了
from...import....as...
以上这篇python中不同包类方法之间的调用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。