为什么Python无法看到现有模块

时间:2019-05-26 17:50:11

标签: python

我开发了一个用于在一个文件中分析数据的应用程序,但我读到它需要以客观的方式制作。试图使其客观,我得到一个错误,即模块不具有属性(它具有)

试图禁用掉毛并以不同的方式组织代码,但始终会出现此错误

文件-analyser.py

import argparse
import helper

class analyser:

    def __init__(self):
        pass

    def cli(self):

     #some code

if __name__ == '__main__':
    analyser.cli
    helper.analyse(arguments)

文件-helper.py

import csv

class helper:

    def __init__(self):
        pass


    def analyse(self, arguments):

    #code

我明白了 AttributeError:模块'analyser'没有属性'analyse'

1 个答案:

答案 0 :(得分:1)

模块helper没有属性analyse。但是, class helper确实有一个。您可以执行以下操作之一来访问analyse函数:

from helper import helper
...
helper.analyse(arguments)

import helper
...
helper.helper.analyse(arguments)

目前,两个类helperanalyser是多余的。仅使用函数可能会更好。面向对象的程序设计在某些情况下对于封装数据和进行抽象很有用,但是功能性程序设计有其自己的用途,并且最好知道何时使用它们。