亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    一起聊聊Python的編碼樣式

    本篇文章給大家?guī)砹岁P(guān)于python的相關(guān)知識(shí),其中主要介紹了Python的基本編碼規(guī)范,包括聲明編碼格式、縮進(jìn)規(guī)則、注釋部分和空行使用等等,希望對(duì)大家有幫助。

    一起聊聊Python的編碼樣式

    推薦學(xué)習(xí):python教程

    Python編碼規(guī)范

    編碼規(guī)范 在各種編程語言中都存在,可能有的語言中體現(xiàn)的不是很直觀而已

    如果是新手學(xué)習(xí)編寫代碼,那么在一開始就 熟記編碼規(guī)則 對(duì)日后的編寫規(guī)范是影響非巨大的!

    下面就來簡單介紹一些初學(xué)者要牢記的幾種編碼規(guī)范,分為幾個(gè)方面來介紹,一起來看一下吧!

    Python 采用 PEP 8 作為編碼規(guī)范,其中 PEPPython Enhancement Proposal(Python 增強(qiáng)建議書)的縮寫,8 代表的是 Python 代碼的樣式指南。

    先來看一張圖中的代碼
    一起聊聊Python的編碼樣式
    對(duì)比上圖 中的兩段代碼可以發(fā)現(xiàn),它們所包含的代碼時(shí)完全相同的

    但是右側(cè)的代碼編寫格式明顯看上去比左側(cè)的代碼段更加規(guī)整,閱讀起來也會(huì)比較輕松、暢快,因?yàn)樗裱俗罨镜?Python 代碼編寫規(guī)范。

    下面分為幾個(gè)部分來學(xué)習(xí)一下Python的編碼規(guī)范,讓我們的代碼更加美觀、漂亮!


    聲明編碼格式

    • 一般來說,聲明編碼格式在腳本中是必需的

    • 如果 python 源碼文件 沒有聲明編碼格式,python 解釋器會(huì)默認(rèn)使用 ASCII 編碼

    • 但是這樣有個(gè)缺點(diǎn)就是,一旦出現(xiàn)非ASCII編碼的字符,python 解釋器就會(huì)報(bào)錯(cuò)

    • 以 UTF-8 為例,以下兩種編碼格式聲明都是合乎規(guī)則的。

    # -*- coding: utf-8 -*-
    # coding = utf-8

    縮進(jìn)規(guī)則

    • 和其它程序設(shè)計(jì)語言(如 Java、C 語言)采用大括號(hào)“{}”分隔代碼塊不同,Python 采用代碼縮進(jìn)和冒號(hào)( : )來區(qū)分代碼塊之間的層次。

    • 在 Python 中,對(duì)于類定義、函數(shù)定義、流程控制語句、異常處理語句等,行尾的冒號(hào)和下一行的縮進(jìn),表示下一個(gè)代碼塊的開始,而縮進(jìn)的結(jié)束則表示此代碼塊的結(jié)束。

    • 注意,Python 中實(shí)現(xiàn)對(duì)代碼的縮進(jìn),可以使用空格或者 Tab 鍵實(shí)現(xiàn)。但無論是手動(dòng)敲空格,還是使用 Tab 鍵,通常情況下都是采用 4 個(gè)空格長度作為一個(gè)縮進(jìn)量(默認(rèn)情況下,一個(gè) Tab 鍵就表示 4 個(gè)空格)。

    • 對(duì)于 Python 縮進(jìn)規(guī)則,初學(xué)者可以這樣理解,Python 要求屬于同一作用域中的各行代碼,它們的縮進(jìn)量必須一致,但具體縮進(jìn)量為多少,并不做硬性規(guī)定。

    正確示例代碼:

    a=1if a==1:     print("正確")  # 縮進(jìn)4個(gè)空白占位else:              # 與if對(duì)齊     print("錯(cuò)誤")   # 縮進(jìn)4個(gè)空白占位

    錯(cuò)誤示例代碼:

    a=1if a==1:     print("正確") else:                   print("錯(cuò)誤")     print("end")   # 改正只需將這行代碼前面的空格刪除即可

    只需要記住一點(diǎn):統(tǒng)一使用 4 個(gè)空格進(jìn)行縮進(jìn),不要用tab, 也不要tab和空格混用

    記住這一點(diǎn),一般來說縮進(jìn)就不會(huì)出現(xiàn)太大的問題!


    注釋部分

    Python中使用 # 進(jìn)行注釋,我們?cè)谑褂? 的時(shí)候,# 號(hào)后面要空一格

        # 注釋部分      #      # 注釋部分

    在行內(nèi)注釋的時(shí)候,中間應(yīng)該至少加兩個(gè)空格

    print("你好,世界")  # 注釋

    空格

    空格 使用的一般性原則:

    • 在二元運(yùn)算符兩邊各空一格,算術(shù)操作符兩邊的空格可靈活使用,但兩側(cè)務(wù)必要保持一致
    • 不要在逗號(hào)、分號(hào)、冒號(hào)前面加空格,但應(yīng)該在它們后面加(除非在行尾)
    • 函數(shù)的參數(shù)列表中,逗號(hào)之后要有空格
    • 函數(shù)的參數(shù)列表中,默認(rèn)值等號(hào)兩邊不要添加空格
    • 左括號(hào)之后,右括號(hào)之前不要加添加空格
    • 參數(shù)列表, 索引或切片的左括號(hào)前不應(yīng)加空格

    通常情況下,在運(yùn)算符兩側(cè)、函數(shù)參數(shù)之間以及逗號(hào)兩側(cè),都建議使用空格進(jìn)行分隔。


    空行使用

    空行 使用的一般性原則:

    • 編碼格式聲明、模塊導(dǎo)入、常量和全局變量聲明、頂級(jí)定義和執(zhí)行代碼之間空兩行
    • 頂級(jí)定義之間空兩行,方法定義之間空一行
    • 在函數(shù)或方法內(nèi)部,可以在必要的地方空一行以增強(qiáng)節(jié)奏感,但應(yīng)避免連續(xù)空行

    使用必要的空行可以增加代碼的可讀性,通常在頂級(jí)定義(如函數(shù)或類的定義)之間空兩行,而方法定義之間空一行,另外在用于分隔某些功能的位置也可以空一行。


    模塊導(dǎo)入部分

    導(dǎo)入總應(yīng)該放在文件頂部,位于模塊注釋和文檔字符串之后,模塊全局變量和常量之前。

    導(dǎo)入應(yīng)該按照從最通用到最不通用的順序分組,分組之間空一行:

    • 標(biāo)準(zhǔn)庫導(dǎo)入
    • 第三方庫導(dǎo)入
    • 應(yīng)用程序指定導(dǎo)入

    每個(gè) import 語句只導(dǎo)入一個(gè)模塊,盡量避免一次導(dǎo)入多個(gè)模塊

    #推薦import osimport sys #不推薦import os,sys

    命名規(guī)范

    命名規(guī)范這一塊的大家應(yīng)該都比較熟悉了,但是不同的編程語言之間的明明規(guī)范也是有所區(qū)別的~

    Python命名建議遵循的一般性原則:

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

    引號(hào)用法

    Python中,輸出語句中使用單雙引號(hào)都是可以正確的,但是也有相應(yīng)的編碼規(guī)范

    所以我們也不要隨心所欲的添加引號(hào),最好是遵循下面的規(guī)范!

    引號(hào)使用的一般性原則:

    • 自然語言使用雙引號(hào)
    • 機(jī)器標(biāo)識(shí)使用單引號(hào)
    • 正則表達(dá)式使用雙引號(hào)
    • 文檔字符串 (docstring) 使用三個(gè)雙引號(hào)

    分號(hào)用法

    Python跟其他幾個(gè)主流編程語言的分號(hào)使用區(qū)別很大
    Python的代碼末尾不需要加分號(hào),而Java和C#等都需要添加

    不要在行尾添加分號(hào),也不要用分號(hào)將兩條命令放在同一行,例如:

    # 不推薦print("Hello") ;  print("World")

    推薦學(xué)習(xí):python詳細(xì)教程

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)