Python 在u_init中执行代码__

Python 在u_init中执行代码__,python,class,init,Python,Class,Init,我正在尝试解构类的init部分中的xz/bx2/gz文件。我正在使用以下代码: class myClass(object): def __init__(self, *args): for i in args: try: f = tarfile.open(i) print("Extracting ", i) f.extractall() f.close() exc

我正在尝试解构类的init部分中的xz/bx2/gz文件。我正在使用以下代码:

class myClass(object):
def __init__(self, *args):
    for i in args:
        try:
            f = tarfile.open(i)
            print("Extracting ", i)
            f.extractall()
            f.close()
        except tarfile.ReadError:
            print("File not a tarball, or any of .xz/.bz2/.gz archives.")
            exit()

if __name__ == "__main__":
    <???>
既然我想在init本身中进行解包,那么在这种情况下我该怎么做呢

编辑:

抱歉,如果我不清楚,我将尝试从命令行运行此脚本,如下所示:

# python script.py file1.tar.bz2 file2.tar.bz2 file3.tar.bz2
所以*args应该用文件名填充,因此提取它的代码应该运行,至少根据我所知道的

谢谢,

您只需调用myClass():


您没有将任何参数传递给
\uuuu init\uuu
myClass()
调用,因此循环永远不会执行。。。你期望空列表上的循环做什么?好的,关于编辑-阅读和。你似乎对自己正在做的事情有一个模糊的概念,但同时又没有掌握一些非常基本的概念……完全没有必要将其作为一个类。我认为这是OP想要的答案,但我认为应该说,用
\uuuuu init\uuuu
方法完成工作可能是个坏主意。要么把它移到一个方法,要么直接生成一个函数(Python中的每个问题都不需要类)。这只是学习的一部分。。我让它在不上课的情况下工作。。
# python script.py file1.tar.bz2 file2.tar.bz2 file3.tar.bz2
if __name__ == "__main__":
    start = myClass(sys.argv)