完全没有区别。它们的功能完全相同。
但是,从样式角度来看,一个可能比另一个更可取。并注意,用于导入的PEP-8表示您应压缩
frommodule import name1, name2到单行上,然后保留
import module1多行:
Yes: import os import sysNo: import sys, osOk: from subprocess import Popen, PIPE
回应@teewuane的评论(如果删除评论,请在此处重复):
@
inspectorG4dget如果您必须从一个模块中导入多个函数,结果该行的长度超过80个字符,该怎么办?我知道80个字符的含义是“何时使代码更具可读性”,但是我仍然想知道是否有更整洁的方法来执行此操作。而且即使我基本上导入了所有内容,我也不想从foo
import *中进行操作。
这里的问题是,执行以下类似操作可能会超出80个字符的限制:
from module import func1, func2, func3, func4, func5
对此,我有两个答复(我看不出PEP8对此过于清楚):
将其分为两个输入 :
from module import func1, func2, func3from module import func4, func5
这样做的缺点是,如果
module将其从代码库中删除或进行了重构,则将需要删除两个导入行。这可能会很痛苦
分割线 :
为了减轻上述担忧,这样做可能更明智。
from module import func1, func2, func3, func4, func5
如果第二行未与第一行一起删除,同时仍保持单个import语句,则将导致错误



