2012-06-10 54 views
2

我的問題是關於如何將多個導入放在一行中。如何將多個導入放在python中的單行中

from sys import argv 
from os.path import exists 

我們可以修改上述表述爲如下所示的一個單一聲明:

from sys,os.path import argv,exists 

我們能這樣做的。請做糾正我,如果我錯了?

+0

不,你不能。抱歉! –

+7

謝天謝地,你不能那樣做。 –

+0

它甚至不會非常邏輯或乾淨地閱讀。你可以做基本的進口x,z,但不能選擇多個進口 – jdi

回答

11

不,你不能。抱歉!

python import statement只支持一個模塊從一次導入語句。

如果可以做到這一點,坦白地說,你會在下面的意思是:

from threading, multiprocessing import Thread, Condition, Lock 

什麼模塊將Condition從進口?兩個模塊都定義了這樣一個類。

Python首選隱式;您一次選擇一個要導入的數據源,因爲這導致發生的情況最令人驚訝並且最清晰。

0

如果您已經嘗試過,您會發現它不起作用。不,你不能那樣做。

+0

感謝提供的信息 – jithin

6
from sys import argv; from os.path import exists 
+4

只需使用換行符; PEP-8在分號上皺眉,原因是......「複合陳述(多條語句在同一行上)通常是不鼓勵的。」 –

+4

@Martijn彼得 - 我也不喜歡它,但它是合法的。 – fraxel

1

你可以把兩條線放在一起,用分號分隔,但除此之外,不可以。

相關問題