如果__name__ ==' __ main __'部分?

时间:2014-12-13 14:45:10

标签: python pep8

如果仅在直接执行脚本时使用模块,那么将import语句放在if __name__ == '__main__'部分的顶部而不是脚本的顶部是否可以接受?

示例:

def open_as_clean_list(filename):
    list = []
    with open(filename) as f:
        for line in f:
            li = line.rstrip()
            if not li.startswith("#") and li:
               list.append(li)
        return list

if __name__ == '__main__':
    import random

    first = open_as_clean_list("first.txt")
    second = open_as_clean_list("second.txt")
    print(random.choice(first) + ' ' + random.choice(second))

如您所见,只有在直接运行代码时才需要random。无论如何都是最佳导入,或者直接执行时才导入?这模块实际上有什么不同吗?

0 个答案:

没有答案