Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 类引用_Python_Oop - Fatal编程技术网

Python 类引用

Python 类引用,python,oop,Python,Oop,我有两个文件:class1.py和class2.py 在文件class2.py中,我有一个类需要继承class1.py中的类: 在文件class2.py中,我有以下导入功能 import class1 as class1 #is the right way to do it? 我的问题是我是否需要这样定义类: class temp(class1): ... class temp(class1.class1) ... 或者像这样: class temp(class1):

我有两个文件:
class1.py
class2.py

在文件
class2.py
中,我有一个类需要继承
class1.py
中的类:

在文件
class2.py
中,我有以下导入功能

import class1 as class1   #is the right way to do it?
我的问题是我是否需要这样定义类:

class temp(class1):
    ...
class temp(class1.class1)
    ...
或者像这样:

class temp(class1):
    ...
class temp(class1.class1)
    ...

你需要第二张表格

class temp(class1.class1):
   ...
关于导入
class1
的方式,在
class2
模块中,
class1
是对
class1
模块的引用,该模块包含
class1

另一种方法是仅从
class1
模块导入
class1
类:



一般来说,为了避免这些问题,最好遵循PEP 8命名约定——类应写成
UppCaseWords
,模块应使用带有下划线的
names\u

不要给文件赋予与其中类相同的名称,否则Python将不知道要引用哪个类。您可以调用文件
class1\u file.py
。然后在导入时:

import class1_file as c1
然后使用
class1
作为:

class temp(c1.class1):
    ...

当您想要导入一个本身位于class1.py中的类时,您需要使用第二种方法——但就您的代码而言,class1.py中有一个名为class1的类——如果这是正确的,那么就使用第二种方法。”导入中的“as”可以轻松地将较长的类名用作较短的类名,或者区分任何类似的导入类名。所以这不会有太大的区别。

将class1导入为class1
->
导入class1
:)谢谢!我问的原因是在类
temp
中,我将实现需要
class1.py
中的对象的方法,因此我认为给它一个名称空间将允许我正确地引用。请更改标题,因为super意味着其他内容,并且可能会混淆在python中搜索super的人。