<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          我的 Python 編碼規(guī)范

          共 2700字,需瀏覽 6分鐘

           ·

          2020-10-24 08:55

          版權(quán)聲明:本文為CSDN博主「天元浪子」?

          原文鏈接:https://blog.csdn.net/xufive/article/details/84957425


          python 文件的組成

          為了便于描述,先上一個 demo
          #!/usr/bin/env python# -*- coding: utf-8 -*-

          """通常這里是關(guān)于本文檔的說明(docstring),須以半角的句號、 問號或驚嘆號結(jié)尾!
          本行之前應(yīng)當(dāng)空一行,繼續(xù)完成關(guān)于本文檔的說明如果文檔說明可以在一行內(nèi)結(jié)束,結(jié)尾的三個雙引號不需要換行;否則,就要像下面這樣"""

          import os, timeimport datetimeimport math
          import numpy as npimport xlrd, xlwt, xlutils
          import youth_mongodbimport youth_curl

          BASE_PATH = r"d:\YouthGit"LOG_FILE = u"運行日志.txt"

          class GameRoom(object): """對局室"""
          def __init__(self, name, limit=100, **kwds): """構(gòu)造函數(shù)!
          name 對局室名字 limit 人數(shù)上限 kwds 參數(shù)字典 """
          pass

          def craete_and_start(): """創(chuàng)建并啟動對局室"""
          pass

          if __name__ == '__main__': # 開啟游戲服務(wù) start()


          Linux 平臺上,一個 python 源碼文件應(yīng)該以下部分組成。Windows 平臺上,可以省略第一項。


          1. 解釋器聲明

          2. 編碼格式聲明

          3. 模塊注釋或文檔字符串

          4. 模塊導(dǎo)入

          5. 常量和全局變量聲明

          6. 頂級定義(函數(shù)或類定義)

          7. 執(zhí)行代碼


          編碼格式聲明

          通常,編碼格式聲明是必需的。如果 python 源碼文件沒有聲明編碼格式,python 解釋器會默認(rèn)使用 ASCII 編碼,一旦源碼文件包含非ASCII編碼的字符,python 解釋器就會報錯。以 UTF-8 為例,以下兩種編碼格式聲明都是合乎規(guī)則的。

          # -*- coding: utf-8 -*-
          # coding = utf-8
          我一直 UTF-8 編碼格式,喜歡使用第一種聲明方式。
          Windows 平臺上,編碼格式聲明必須位于 python 文件的第一行。Linux 平臺上,編碼格式聲明通常位于 python 文件的第二行,第一行是 python 解釋器的路徑聲明。

          #!/usr/bin/env python# -*- coding: utf-8 -*-

          縮進

          統(tǒng)一使用 4 個空格進行縮進。絕對不要用tab, 也不要tab和空格混用。對于行連接的情況,我一般使用4空格的懸掛式縮進。例如:
          var_dict = {    'name': 'xufive',    'mail': '[email protected]'}

          引號

          • 自然語言使用雙引號
          • 機器標(biāo)識使用單引號
          • 正則表達式使用雙引號
          • 文檔字符串 (docstring) 使用三個雙引號


          注釋

          #號后空一格,段落件用空行分開(同樣需要#號):
              # 塊注釋    # 塊注釋    #    # 塊注釋    # 塊注釋

          行內(nèi)注釋,至少使用兩個空格和語句分開:

          age += 1  # 年齡增加一歲
          比較重要的注釋段, 使用多個等號隔開, 可以更加醒目, 突出重要性:
              server= gogame(room, options)
          # ===================================== # 請勿在此處傾倒垃圾!!! # =====================================
          if __name__ == '__main__': server.run()

          空行

          • 編碼格式聲明、模塊導(dǎo)入、常量和全局變量聲明、頂級定義和執(zhí)行代碼之間空兩行

          • 頂級定義之間空兩行,方法定義之間空一行

          • 在函數(shù)或方法內(nèi)部,可以在必要的地方空一行以增強節(jié)奏感,但應(yīng)避免連續(xù)空行


          空格

          • 在二元運算符兩邊各空一格,算術(shù)操作符兩邊的空格可靈活使用,但兩側(cè)務(wù)必要保持一致

          • 不要在逗號、分號、冒號前面加空格,但應(yīng)該在它們后面加(除非在行尾)

          • 函數(shù)的參數(shù)列表中,逗號之后要有空格

          • 函數(shù)的參數(shù)列表中,默認(rèn)值等號兩邊不要添加空格

          • 左括號之后,右括號之前不要加添加空格

          • 參數(shù)列表, 索引或切片的左括號前不應(yīng)加空格


          文檔字符串

          文檔字符串是包、模塊、類或函數(shù)里的第一個語句。這些字符串可以通過對象的__doc__成員被自動提取,并且被pydoc所用。文檔字符串的使用三重雙引號(""")。如果文檔字符串內(nèi)容不能在一行內(nèi)寫完,首行須以句號、 問號或驚嘆號結(jié)尾,接一空行,結(jié)束的三重雙引號必須獨占一行。


          導(dǎo)入模塊

          導(dǎo)入總應(yīng)該放在文件頂部,位于模塊注釋和文檔字符串之后,模塊全局變量和常量之前。導(dǎo)入應(yīng)該按照從最通用到最不通用的順序分組,分組之間空一行:
          1. 標(biāo)準(zhǔn)庫導(dǎo)入

          2. 第三方庫導(dǎo)入

          3. 應(yīng)用程序指定導(dǎo)入

          應(yīng)當(dāng)避免使用以下的導(dǎo)入方法:
          from math import *


          命名規(guī)范
          • 模塊盡量使用小寫命名,首字母保持小寫,盡量不要用下劃線
          • 類名使用駝峰(CamelCase)命名風(fēng)格,首字母大寫,私有類可用一個下劃線開頭
          • 函數(shù)名一律小寫,如有多個單詞,用下劃線隔開
          • 私有函數(shù)可用一個下劃線開頭
          • 變量名盡量小寫, 如有多個單詞,用下劃線隔開
          • 常量采用全大寫,如有多個單詞,使用下劃線隔開


          —??—

          回復(fù)關(guān)鍵字“簡明python ”,立即獲取入門必備書籍簡明python教程》電子版

          回復(fù)關(guān)鍵字爬蟲”,立即獲取爬蟲學(xué)習(xí)資料

          python入門與進階
          每天與你一起成長

          推薦閱讀


          點「在看」的人都變好看了哦!
          瀏覽 33
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  久久久久久91香蕉国产 | 国产成人精品在线视频 | 草久久免费视频 | 天天添天天操 | 韩国三级毛片 |