Python标准库导入最佳做法

时间:2018-07-23 14:11:51

标签: python import

目前,我正在研究Python项目,但我不知道通过类导入标准库的最佳实践是什么。 例如,我有class Aclass B

import math
import os
class A:
def x()

class B中,我需要导入class A方法和math。我应该如何

import math
from A import x
class B:
x()
math.pow(1, 2)

from A import *
class B:
x()
math.pow(1, 2)

为避免再次导入math

该项目是用第二个版本编写的,我认为阅读起来确实很痛苦,因为我不知道从何而来。

1 个答案:

答案 0 :(得分:0)

您应始终避免使用

from math import *

特别是如果您将仅使用模块中的方法或类。使用*导入所有可用的函数,变量和类,这会使您的应用程序更重,更慢。仅当您确实要使用每个子模块,或者您非常确定自己在做什么时,才使用此选项。使用时

from math import sqrt

您正在向Python确切地说要使用什么,还可以提高代码的可读性。当模块使用的类别/功能不超过3个时,建议使用此功能。现在,当您使用

import subprocess

您正在向应用程序添加依赖项,但是Python仅在找到类似用法时才会加载必要的子模块

subprocess.call(...

假装使用模块的许多子模块时,应使用此功能。