Fw: [翻譯] Google 建議的 Python 風格指南 2、3
※ [本文轉錄自 Python 看板 #1HUe1BGt ]
作者: sandwichC (沒回應=掛站) 看板: Python
標題: [翻譯] Google 建議的 Python 風格指南 2、3
時間: Fri Apr 26 21:25:28 2013
原文網址:http://google-styleguide.googlecode.com/svn/trunk/pyguide.html
這兩則建議高度相關,所以放在一起
----------正文開始的分隔線----------
* Imports
只 import package 和 module (不要 import object)
編案:
python 中的 module 對應 python 程式本身,object 則是 python 程式中宣告的
變數。當你寫一個 foo.py,其實就已經寫了一 個名為 foo 的 module。package
是 module 的集合,創建 package 的細節可參照
http://guide.python-distribute.org/creation.html
釋義:
import 的目的在共用 module
優點:
Python 的 namespace 管理方式簡潔而一致。如:x.Obj 指的是 module x 中的
object Obj。
缺點:
Module 的名稱仍可能重覆。某些 module 的名稱可能很長而造成不便。
決策:
使用 import x 來 import package 和 module。
當 y 是 module 而 x 是 package 的前綴時,使用 from x import y。
若有兩個以上的 module 叫做 y 且兩個都被 import 時,用:
from x import y as z
若 y 的名稱很長而造成不便時,也可使用:
from x import y as z
例如,要使用 sound.effects.echo 這個 module 時,可用:
from sound.effects import echo
...
echo.EchoFilter(input, output, delay=0.7, atten=4)
import 時避免使用相對名稱。即使同一個 package 內有兩個不同的 module,從其
中一個 module import 另一個 module時,也要使用完整的 package 名稱。這可以
避免多次 import 同一個 package。
* Packages
使用完整的路徑來 import module
優點:
避免重覆的 module 名稱,且易於找到 module 的位置。
缺點:
部署程式時需要複製整個 package 的樹狀資料夾等檔案結構。
決策:
所有的程式 import module 都應該要用完整的 package 名稱。
範例:
# Reference in code with complete name.
import sound.effects.echo
# Reference in code with just module name (preferred).
from sound.effects import echo
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 75.102.68.55
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 轉錄者: sandwichC (75.102.68.55), 時間: 04/26/2013 21:25:44
Translate-CS 近期熱門文章
PTT數位生活區 即時熱門文章