繁体   English   中英

如何在Python中导入外部类并从中创建对象?

[英]How do I import an external class and make an object out of it in Python?

我已经在Google周围搜索了,但似乎找不到一个明确的例子来说明这一点。 我为Job类创建了一个名为job.py的文件。

class Job(object):
    title = ""
    pay = ""
    description = ""

    def __init__(self, title, pay, description):
        self.title = title
        self.pay = pay
        self.description = description

    def getNoobiness(self):
        return self.title

但是,当我在同一目录的测试文件中尝试此操作时:

import job

job = Job("Fun Job", "7 elephants", "You will have much fun")

我收到此错误:

Traceback (most recent call last):
  File "test.py", line 3, in <module>
    job = Job("Fun Job", "7 elephants", "You will have much fun")
NameError: name 'Job' is not defined

您需要从文件中导入类:

from job import Job

或者,如果您想保留当前的导入,请执行以下操作:

job.Job(...)

要导入的模块job ,其包含类Job 但是,Python不知道这一点。 截至目前,尚不知道Job在哪里。

要解决该问题,请通过放置job.明确告诉Python Job在哪里job. 在它前面:

import job
new_job = job.Job("Fun Job", "7 elephants", "You will have much fun")

现在,Python知道您正在使用job模块中的Job类。


或者,更干净的解决方案是仅显式导入Job

from job import Job
job = Job("Fun Job", "7 elephants", "You will have much fun")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM