Python 使用不同类中的函数?
我正在学习python,来自java/kotlin的背景,我试图弄明白如何使用另一个文件中定义的类来调用其中的函数 这是我的班级:Python 使用不同类中的函数?,python,Python,我正在学习python,来自java/kotlin的背景,我试图弄明白如何使用另一个文件中定义的类来调用其中的函数 这是我的班级: class Practise: def messageFunction(message): print("your message you entered is " + message) return def messageFunction2(message): print("mesage 2 " +
class Practise:
def messageFunction(message):
print("your message you entered is " + message)
return
def messageFunction2(message):
print("mesage 2 " + message)
return
def messageFunction3(message):
print("message 3 " + message)
return
这是我想要调用上述类中的函数的主要python文件(在一个单独的文件中)
我得到这个错误:
文件“/home/me/Work/PycharmProjects/practice/venv/Main.py”,第3行,在
练习
TypeError:“模块”对象不可调用`
问题在于导入其他模块的方式。你应该做如下的事情
import <modulename>
practise = <modulename>.Practise()
practise.messageFunction("wagwan")
导入
练习
practice.messageFunction(“wagwan”)
或
来自导入实践
练习
practice.messageFunction(“wagwan”)
其中
是定义类的文件名。是包含practice
的文件,称为practice
?如果是这种情况,请尝试:来自practice import practice
。这有帮助吗?作为一种旁白,Python类通常用于创建具有不同状态的对象实例。虽然类可以用来将函数组合在一起,但更典型的做法是在模块中定义这些函数,并让模块作为分组机制。这是否回答了您的问题?你能分享显示文件夹和文件名的文件结构吗?那不行。仍然得到相同的错误。Practice类位于practice.pyuse中,用于表示模块名称(文件名)。这应该可以解决冲突。因此,在本例中,请从Practice import Practice中重命名文件Practice.py
和不起作用的文件,相同的错误。将这两个文件重命名为小写。from practice import practice=practice.practice()practice.messageFunction(“wagwan”)
import <modulename>
practise = <modulename>.Practise()
practise.messageFunction("wagwan")
from <modulename> import Practise
practise = Practise()
practise.messageFunction("wagwan")