Metody statyczne klasy Python

Chcę utworzyć rodzaj klasy narzędziowej, która zawiera tylko metody statyczne, które można wywołać przez prefiks klasy nazw. Wygląda na to, że robię coś źle :)

Oto moja mała klasa:

class FileUtility():

    @staticmethod
    def GetFileSize(self, fullName):
        fileSize = os.path.getsize(fullName)
        return fileSize

    @staticmethod
    def GetFilePath(self, fullName):
        filePath = os.path.abspath(fullName)
        return filePath

Teraz moja „główna” metoda:

from FileUtility import *
def main():
        path = 'C:\config_file_list.txt'
        dir = FileUtility.GetFilePath(path)
        print dir

i dostałem błąd:unbound method GetFilePath() must be called with FileUtility instance as first argument (got str instance instead).

Masz tutaj kilka pytań:

Co ja robię źle? Czy metoda statyczna nie powinna być wywoływana przez nazwę klasy?Czy naprawdę potrzebuję klasy narzędziowej, czy są inne sposoby osiągnięcia tego samego w Pythonie?Jeśli spróbuję zmienić kod w głównym, otrzymuję:TypeError: GetFilePath() takes exactly 1 argument (2 given)

Nowamain:

from FileUtility import *
def main():
    objFile = FileUtility()
    path = 'H:\config_file_list.txt'
    dir = objFile.GetFilePath(path)
    print dir

questionAnswers(4)

yourAnswerToTheQuestion