首页 > 解决方案 > pyspark init 超类警告

问题描述

我在我的 pySpark 程序的 pyCharm 中创建了一个单元测试类。

class TableLiteral(unittest.TestCase):
   def __init__(self, table_value):
      self.table_value = [x.strip().strip("|") for x in table_value.split("\n") if x.strip() != '']
      # The above code is as part of my development

现在,我唯一担心的是__init_突出显示对__init_ of super class is missing的警告调用。您能否更新我必须更新的地方,因为我是 python 类的新手。

标签: pythonpysparksuperclass

解决方案


这不是强制性的,很大程度上取决于您是否使用真正的协作类继承层次结构。换句话说:在这种情况下,pycharm 过于热心了——因为通常不必调用unittest.TestCase.

也就是说,您所要做的就是super().__init__()在您的__init__方法中添加一行。

(如果您使用的是 Python 2 而不是 Python 3(您应该使用它),则调用super需要您明确填写类和实例参数 - 所以它变成super(TableLiteral, self).__init__():)


推荐阅读