精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Python開發指南:最佳實踐精選

開發 后端
請注意,測試用例的類名稱和測試方法的名稱放在一起,就像是“測試一名用戶能否發布博文”。

總體原則

價值

  • “為別人開發你也想要使用的工具。” ——Kenneth Reitz

  • "簡潔總是勝過可用。" ——Pieter Hintjens

  • "滿足90%的使用場景。忽略那些說不的人。" ——Kenneth Reitz

  • "優美勝過丑陋。" ——PEP 20

  • 為開源(甚至是閉源項目)而開發。

  • [[155871]]

一般開發準則

  • “明確勝過含蓄。” —— PEP 20

  • “易讀亦有價。” —— PEP 20

  • “人人都能打補丁。” —— 可汗學院開發文檔

  • 一旦發現破窗(設計錯誤,決策失誤或編碼質量低),馬上修補。

  • “現在做也要勝過不去做。” —— PEP 20

  • "測試要徹底。撰寫新功能文檔。"

  • 人力驅動型開發,比測試驅動型開發更重要。(譯者:原文為Even more important that Test-Driven Development--Human-Driven Development,譯者認為more important that應該是more important than,應該是作者筆誤,否則意思不通,)

  • 這些準則可能——應該是很可能——會改變。

特殊準則

風格

感覺合理的話,就遵循PEP 8。

命名

  • 變量、函數、方法、包、模塊

  • 小寫,并使用下劃線分隔單詞(lower_case_with_underscores)

  • 類、異常

  • 首字母大寫(CapWords)

  • 受保護的方法和內部函數

  • 單下劃線開頭(_single_leading_underscore(self, ...))

  • 私有的方法

  • 雙下劃線開頭(__double_leading_underscore(self, ...))

  • 常量

  • 字母全部大寫,單詞間用下劃線分隔(ALL_CAPS_WITH_UNDERSCORES)

一般命名準則

盡量不要使用只有一個字母的變量名(例如,l,I,O等)。

例外:在很簡短的代碼塊中,如果變量名的意思可以從上下文明顯地看出來,即可。

沒問題

for e in elements:
    e.mutate()

避免重復變量名。

正確的做法

import audio

core = audio.Core()
controller = audio.Controller()

錯誤的做法

import audio

core = audio.AudioCore()
controller = audio.AudioController()

“反向標記”更好。

正確的做法

elements = ...
elements_active = ...
elements_defunct = ...

錯誤的做法

elements = ...
active_elements = ...
defunct_elements ...

避免使用getter和setter方法。

正確的做法

person.age = 42

錯誤的做法

person.set_age(42)

縮進

用4個空格符——永遠別用Tab制表符。就說這么多。

模塊引用

引用整個模塊,而不是模塊中的單個標識符。舉個例子,假設一個cantee模塊下面,有一個sessions.py文件,

正確的做法

import canteen
import canteen.sessions
from canteen import sessions

錯誤的做法

from canteen import get_user  # Symbol from canteen/__init__.py
from canteen.sessions import get_session  # Symbol from canteen/sessions.py

例外:如果第三方代碼的文檔中明確說明要單個引用,即可。

理由:避免循環引用。看這里

把代碼引用部分放在文件的頂部,按下面的順序分成三個部分,每個部分之間空一行。 1. 系統引用 2. 第三方引用 3. 本地引用

理由:明確顯示每個模塊的引用來源。

文檔

遵循PEP 257提出的文檔字符串準則。reStructuredText (reST) 和Sphinx有助于確保文檔符合標準。

對于功能明顯的函數,撰寫一行文檔字符串。

"""返回``foo``的路徑名."""

多行文檔字符串應包括:

  • 一行摘要

  • 合適的話,請描述使用場景

  • 參數

  • 返回數據類型和語義信息,除非返回None

    """訓練一個用來區分Foo和Bar的模型。

    用法::

    >>> import klassify
    >>> data = [("green", "foo"), ("orange", "bar")] >>> classifier = klassify.train(data)

    :param train_data: (color, label)形式的一個元祖列表。

    :rtype: A :class:Classifier <Classifier>

    """

注意

使用主動詞(“返回”),而不是描述性的單詞(“返回值”)。 在類的文檔字符串中為__init__方法撰寫文檔。

class Person(object):
    """A simple representation of a human being. :param name: A string, the person's name. :param age: An int, the person's age. """ def __init__(self, name, age): self.name = name self.age = age

關于注釋

盡量少用。與其寫很多注釋,不如提高代碼可讀性。通常情況下,短小的方法比注釋更有效。

錯誤的做法

# If the sign is a stop sign
if sign.color == 'red' and sign.sides == 8:
    stop()

正確的做法

def is_stop_sign(sign):
    return sign.color == 'red' and sign.sides == 8

if is_stop_sign(sign):
    stop()

但是的確要寫注釋時,請牢記:“遵循斯托克與懷特所寫的《風格的要素》。” —— PEP 8

每行的長度

不要過分在意。80到100個字符都是沒問題的。

使用括號延續當前行。

wiki = (
    "The Colt Python is a .357 Magnum caliber revolver formerly manufactured "
    "by Colt's Manufacturing Company of Hartford, Connecticut. It is sometimes "
    'referred to as a "Combat Magnum". It was first introduced in 1955, the '
    "same year as Smith & Wesson's M29 .44 Magnum."
)

測試

盡量爭取測試全部代碼,但也不必執著于覆蓋率。

一般測試準則

  • 使用較長的、描述性的名稱。通常情況下,這能避免在測試方法中再寫文檔。

  • 測試之間應該是孤立的。不要與真實地數據庫或網絡進行交互。使用單獨的測試數據庫,測試完即可銷毀,或者是使用模擬對象。

  • 使用工廠模式,而不是fixture。

  • 別讓不完整的測試通過,否則你就有可能忘記。你應該加上一些占位語句,比如assert False, "TODO: finish me"

單元測試

  • 每次聚焦一個很小的功能點。

  • 運行速度要快,但是速度慢總比不測試好。

  • 通常,每一個類或模型都應該有一個測試用例類。

    import unittest
    import factories

    class PersonTest(unittest.TestCase):

        def setUp(self):
            self.person = factories.PersonFactory()

        def test_has_age_in_dog_years(self):
            self.assertEqual(self.person.dog_years, self.person.age / 7)

功能測試

功能測試是更高層次的測試,更接近最終用戶如何與應用交互這一層面。通常用在網絡應用與圖形應用測試。

  • 按照場景撰寫測試。測試用例的測試方法命名應該看上去像場景描述。

  • 在編寫代碼之前,通過注釋說明具體場景信息。

    import unittest

    class TestAUser(unittest.TestCase):

        def test_can_write_a_blog_post(self):
            # Goes to the her dashboard
            ...
            # Clicks "New Post" ... # Fills out the post form ... # Clicks "Submit" ... # Can see the new post ...

請注意,測試用例的類名稱和測試方法的名稱放在一起,就像是“測試一名用戶能否發布博文”。

本文受到下列資料的啟發...

 

責任編輯:王雪燕 來源: 編輯派
相關推薦

2012-03-30 16:54:33

JavaJProbe

2011-07-25 16:21:22

Sencha touc

2022-08-02 08:01:09

開發插件Chrome前端技術

2024-10-10 09:46:18

2012-03-26 09:27:40

谷歌安卓開發谷歌安卓

2011-06-09 18:24:36

QT Wince

2023-05-15 18:44:07

前端開發

2009-06-24 16:30:21

JSF組件模型

2023-12-06 09:00:00

2010-06-13 09:27:56

Widget開發

2019-10-31 08:00:00

機器學習人工智能AI

2015-12-16 10:30:18

前端開發指南

2011-04-18 11:00:34

使用音頻BlackBerry

2012-05-18 10:08:56

TitaniumAndroid

2021-08-09 09:47:34

Blazor 路由開發

2011-12-29 10:48:49

移動Web

2021-06-21 15:21:52

鴻蒙HarmonyOS應用開發

2023-06-05 07:49:13

?左移測試敏捷

2012-12-13 09:47:50

2020-06-12 07:00:00

Web開發項目
點贊
收藏

51CTO技術棧公眾號

欧美aⅴ一区二区三区视频| 91精品入口| 国产精品欧美一区喷水| 成人免费大片黄在线播放| 久久av高潮av无码av喷吹| 牛牛影视久久网| 欧美日韩激情一区二区三区| 国产九色porny| 黄色片免费在线| 国产精品综合二区| 555www成人网| 开心激情五月网| 精品深夜福利视频| 欧美美女bb生活片| 国产视频九色蝌蚪| 久操视频在线播放| 久久先锋影音av| 91精品综合久久| 中文字幕免费高清在线观看| 激情久久久久| 日韩在线观看免费全| 国产人妻人伦精品1国产丝袜| 欧洲精品久久久久毛片完整版| 香港成人在线视频| 正在播放一区| 国产一级在线观看| 99视频超级精品| 亚洲伊人久久综合| 亚洲天堂中文字幕在线| 99热免费精品在线观看| 欧美乱妇高清无乱码| 嘿嘿视频在线观看| 免费av一区| 337p日本欧洲亚洲大胆精品| 在线不卡一区二区三区| 你懂得影院夜精品a| 精品久久久中文| 毛片在线视频观看| www在线视频| 国产精品丝袜91| 欧美连裤袜在线视频| 人妻精品无码一区二区| 国产精品中文字幕日韩精品| 国产欧美日韩免费| 男操女视频网站| 新狼窝色av性久久久久久| 欧美激情在线视频二区| 九九热只有精品| 亚洲成人精品| 久久色免费在线视频| 日韩黄色中文字幕| 久久网站免费观看| 中文字幕亚洲情99在线| 97在线观看免费视频| 欧美亚洲在线日韩| 夜夜躁日日躁狠狠久久88av| 色屁屁草草影院ccyy.com| 国产毛片一区二区三区| 一个人看的www久久| 秋霞网一区二区三区| 日韩精品欧美激情一区二区| 在线看欧美日韩| 中国美女黄色一级片| 91一区二区三区四区| www亚洲欧美| 99久久婷婷国产综合| 亚洲色图88| 欧美日韩国产91| 福利一区二区三区四区| 亚洲青色在线| 日本一区二区三区在线播放 | 一区精品在线播放| 夜夜春亚洲嫩草影视日日摸夜夜添夜| 中文字幕在线播放| 亚洲视频一二三区| 久久av高潮av| 爱草tv视频在线观看992| 日韩欧美一区视频| 在线观看的毛片| 亚洲高清国产拍精品26u| 日韩欧美色综合| 中文字幕在线永久| 精品久久一区| 久久色免费在线视频| 国产精品美女毛片真酒店| 99精品热视频只有精品10| 国产精品91久久久| 国产精品热久久| 99精品视频一区二区| 日本在线视频一区| av毛片在线看| 色综合久久久久综合| 久热精品在线观看视频| swag国产精品一区二区| 亚洲欧美日韩国产中文专区| 国产91在线播放九色| 亚洲高清在线| 国产精品自拍偷拍视频| 亚洲国产精品suv| 久久久久久久久久久电影| 国产精品jizz在线观看老狼| 日韩在线伦理| 欧美一级二级在线观看| 精品人妻互换一区二区三区| 午夜国产精品视频| 日韩av色综合| 超碰在线人人干| 中文字幕免费不卡在线| a级免费在线观看| 不卡亚洲精品| 一区二区三区午夜| 91日韩一区二区三区| 中文字幕日韩精品久久| 性孕妇free特大另类| 欧美一区二区高清| 萌白酱视频在线| 亚洲视频大全| 成人在线观看网址| 日韩毛片久久久| 欧美天堂在线观看| www.17c.com喷水少妇| 天天射综合网视频| 国产精品678| 天天操天天射天天| 亚洲欧美综合色| 人妻无码视频一区二区三区| 人体久久天天| 久久久人成影片一区二区三区观看 | 久久爱www成人| 性色av一区二区三区在线观看 | 亚洲精品成人图区| 亚洲国产欧美一区二区丝袜黑人| 国产精品白丝喷水在线观看| 男女男精品视频网| 欧美日韩精品久久| 天堂在线中文网官网| 欧美成人一区二区三区在线观看| 国产一区二区三区视频播放| 久久激情婷婷| 久久青青草原一区二区| av福利导福航大全在线| 欧美xxxxx牲另类人与| 国产97免费视频| 国产美女视频91| 伊人久久大香线蕉成人综合网| 久久xxx视频| 国产一区二区三区视频在线观看 | 欧美日韩一卡二卡| 熟女少妇内射日韩亚洲| 久久久青草婷婷精品综合日韩| 国产无套精品一区二区| av日韩国产| 亚洲成色777777女色窝| 日本五十路女优| 99久久婷婷国产综合精品 | 视频一区欧美精品| 欧美一区二区三区四区夜夜大片| 一区二区三区四区日本视频| 日韩成人中文字幕在线观看| 久久久久久久久久免费视频 | 欧美日韩ab| 99在线看视频| 黄页网站在线| 亚洲第一精品自拍| 国产情侣在线视频| 91免费看`日韩一区二区| 六月丁香婷婷激情| 精品一区三区| 国产精品久久精品| 欧美成人视屏| 5858s免费视频成人| 麻豆视频在线观看| 久久综合九色综合欧美亚洲| 爆乳熟妇一区二区三区霸乳| 亚洲91中文字幕无线码三区| 99在线观看视频网站| 精精国产xxxx视频在线野外| 亚洲欧美制服综合另类| 亚洲免费黄色网址| 久久精品免费在线观看| 国产二区视频在线播放| 日韩大片在线免费观看| 国产suv精品一区二区三区88区| 粉嫩一区二区三区国产精品| 欧美狂野另类xxxxoooo| 久久久久久久国产视频| 久久久久久久免费视频了| 天天影视色综合| 亚洲福利免费| 五月天亚洲综合小说网| 亚洲一区二区三区在线免费| 日韩av免费一区| 色呦呦在线资源| 亚洲品质视频自拍网| 国产美女主播在线观看| 婷婷综合另类小说色区| 日韩av网站在线播放| 成人成人成人在线视频| 8x8x最新地址| 亚洲电影av| 天天爱天天做天天操| 精品一区免费| 国产98在线|日韩| 欧美日韩亚洲国产| 欧美精品久久久久a| 最新国产在线观看| 亚洲精品第一页| 一区二区三区黄| 色吊一区二区三区| 久久久精品视频免费| 国产精品久久久久久妇女6080| 中文在线观看免费视频| 国模娜娜一区二区三区| 黑森林福利视频导航| 国产精品www.| 亚洲综合网中心| 亚洲+变态+欧美+另类+精品| 国产欧美精品在线播放| www.51av欧美视频| 超碰97人人做人人爱少妇| 国产一二在线观看| 亚洲精品白浆高清久久久久久| 精品久久久久成人码免费动漫| 欧美在线免费视屏| 一级黄色在线视频| 黄色91在线观看| 精品无码av在线| 亚洲免费av高清| 91动漫免费网站| 中文字幕欧美日本乱码一线二线| 泷泽萝拉在线播放| gogogo免费视频观看亚洲一| 极品人妻一区二区| 久久99久久久欧美国产| 制服丝袜综合网| 人人狠狠综合久久亚洲| 欧美精品一区二区三区免费播放| 亚洲激情黄色| 欧美精品卡一卡二| 在线电影一区| 日本阿v视频在线观看| 欧美日本三区| 黄色成人在线免费观看| 欧美午夜电影在线观看| 国产激情片在线观看| 中文精品久久| eeuss中文| 欧美日本一区二区视频在线观看| av影院在线播放| 国产一区二区中文| 丰满少妇大力进入| 伊人精品在线| 每日在线更新av| 性色一区二区| 激情视频综合网| 美女视频网站黄色亚洲| 亚洲国产成人va在线观看麻豆| 免播放器亚洲一区| 亚洲精品免费一区亚洲精品免费精品一区 | 91video| 日本韩国视频一区二区| 中文字幕欧美人妻精品| 欧美高清激情brazzers| 国产伦理吴梦梦伦理| 欧美一卡二卡三卡| 可以免费看毛片的网站| 亚洲国产日韩精品在线| 欧美日韩在线精品一区二区三区激情综| 日韩av有码在线| 欧美在线观看在线观看| 国产亚洲一级高清| 好吊日视频在线观看| 欧美高清视频一区二区| av福利导福航大全在线| 国产精品av在线播放| 伊人亚洲精品| 国产亚洲精品美女久久久m| 女厕嘘嘘一区二区在线播放| 天堂v在线视频| 亚洲国产一区二区三区高清| www.xxx亚洲| 国产一区在线精品| 国产性生活毛片| 国产色91在线| 日韩黄色免费观看| 精品动漫一区二区三区| 丰满熟女人妻一区二区三| 欧美高清视频不卡网| 欧美一级在线免费观看| 亚洲日本成人女熟在线观看| 中日韩高清电影网| 欧美一区二区.| 国产一区二区av在线| 久久久久久国产精品mv| 97久久视频| 女人和拘做爰正片视频| 精品一区二区免费在线观看| 国模私拍在线观看| 国产精品成人一区二区三区夜夜夜| 日本亚洲欧美在线| 欧美日韩一区三区四区| 日韩永久免费视频| 日韩有码在线播放| 周于希免费高清在线观看| 成人午夜高潮视频| 天堂俺去俺来也www久久婷婷| 中文字幕欧美日韩一区二区| 久久久噜噜噜久久狠狠50岁| 中文字幕一区二区三区人妻在线视频| 国产免费观看久久| 永久免费看片在线播放| 欧美一区二区观看视频| 成人影院免费观看| 992tv在线成人免费观看| 玖玖玖电影综合影院| 三区精品视频观看| 夜夜嗨一区二区| 91精品国产高清91久久久久久| 国产精品久线在线观看| 少妇高潮av久久久久久| 欧美精品一区二区三区很污很色的| 日本中文字幕在线播放| 国产精品9999| 蜜桃一区二区| 久色视频在线播放| 成人午夜在线播放| 男女性高潮免费网站| 欧美精品亚洲二区| 91九色在线porn| 国产精品极品美女粉嫩高清在线| 欧美天堂影院| 男女视频网站在线观看| 国产91精品欧美| 国产福利视频网站| 欧美日韩免费在线视频| 成年人在线视频| 国产成人一区二区三区| 夜夜春成人影院| 北条麻妃69av| 久久香蕉国产线看观看99| 日本韩国欧美中文字幕| 亚洲精品国精品久久99热| 国产高清自产拍av在线| 精品午夜一区二区三区| 亚洲黄色视屏| 免费成人蒂法网站| 欧美性69xxxx肥| 日漫免费在线观看网站| 欧美亚洲在线播放| 欧美激情在线免费| 精品久久久久久久无码| 国产精品毛片久久久久久| 亚洲熟女乱色一区二区三区久久久| 伊人男人综合视频网| 99久久伊人| 三年中文高清在线观看第6集| 狠狠色丁香婷综合久久| 性欧美videos| 精品久久免费看| 绿色成人影院| 久久99精品久久久久久青青日本| 亚洲精品欧洲| 美女100%无挡| 欧美三级日韩在线| 精品自拍一区| 国产精品一区二区三区在线观 | 国外成人在线视频| 亚洲国产最新| 艹b视频在线观看| 日韩美女视频19| 欧美一区二区三区黄片| 日韩免费在线免费观看| 婷婷综合亚洲| 亚洲一区二区三区四区av| 欧美视频在线看| 婷婷在线视频| 国产高清自拍一区| 美女网站久久| 加勒比婷婷色综合久久| 亚洲精品按摩视频| 久久免费资源| 99色这里只有精品| 中文字幕 久热精品 视频在线 | 久久99精品一区二区三区| 欧美日韩三级在线观看 | 亚洲va电影大全| 1000部精品久久久久久久久| 成人在线一级片| 日韩亚洲欧美在线观看| 原纱央莉成人av片| 中国一级黄色录像| 91网站在线观看视频| 亚洲视频久久久| 午夜精品福利在线观看| 欧美顶级大胆免费视频| 国产精品无码一区二区三| 欧美精选午夜久久久乱码6080| 国产三级电影在线播放| 少妇精品久久久久久久久久| 福利视频网站一区二区三区|