我使用标准库定义了一个具有多个methods
的类。
class Dostuff:
def __init__(self):
pass
def read_book(self):
import os
pass
def listen_music(self):
import os.path
pass
def ask_question(self):
import glob
pass
班级内合适的地方在哪里?
该类将用作重复应用的模块。
答案 0 :(得分:1)
将所有导入放在文件顶部是一件好事。 PEP-8中有进口风格指南。
https://www.python.org/dev/peps/pep-0008/#imports
在你的情况下:
#!/usr/bin/python3
import os
import os.path
import glob
class Dostuff:
def __init__(self):
pass
def read_book(self):
pass
def listen_music(self):
pass
def ask_question(self):
pass
答案 1 :(得分:1)
导入总是放在文件的顶部,就在任何模块注释和文档字符串之后,以及模块全局变量和常量之前。
答案 2 :(得分:0)
你误解了import
的范围。
首先,将模块放在顶部是PEP的做法,
其次,最重要的是,它不是最佳实践,而是以这种方式运作。
每次从文件(或模块)导入任何class
或function
时
import **
始终保持领先。
答案 3 :(得分:-1)
通常,导入任何类型模块的最佳做法是在您编写的文件的顶部执行此操作。因此,在您的情况下,它将如下所示:
import os
import glob
class Dostuff:
def __init__(self):
pass
def read_book(self):
pass
def listen_music(self):
pass
def ask_question(self):
pass