python面試170題 2 編碼規範

2021-09-25 14:45:55 字數 1739 閱讀 5208

什麼是 pep8?

【理解】pep8是針對python編碼風格的規範,可以增強**的可讀性,建議執行,不是強制執行。有的公司會有自己的編碼規範。

【舉例】

**編排:縮排是4個空格;每行最大長度是70幾個字元;空行的使用;import匯入模組書寫順序等。

空格的使用:逗號、冒號之前不加空格;各種右括號前不加空格;呼叫函式的左括號前不加空格;賦值時=前後要加空格,但是在函式引數中不加空格等。

命名規則:類用大駝峰;函式用小寫+下劃線;常量用全大寫等。

了解 python 之禪麼?

【理解】python之禪是tim peter提出的一種python**的設計哲學,被作為pep 20。對我們的程式設計思路有一定的指導意義。有人說每乙個優秀的程式猿(程式媛)都是一位哲學家。

優雅。在python中,import this就可以看到python之禪的內容。

了解 docstring 麼?

docstring 是文件字串。在函式的第乙個邏輯行的字串是這個函式的 文件字串 。用來對函式或類的使用功能做解釋說明。

在python中,推崇在**中寫文件,**就是文件,直觀,易讀,易維護。

在python中使用,func.__doc__可以檢視函式的docstring。

了解型別註解麼?

python3.6後增加了型別註解。是提醒使用者引數資料型別的注釋,pycharm會提示,但是違背注釋使用函式是不會報錯的。(如圖)

例舉你知道 python 物件的命名規範,例如方法或者類等

【方法】小寫字母,可以有下劃線

【類】駝峰命名,可以有下劃線

命名是很重要的,要顧名思義,看到名字就知道這個類,這個方法是幹嘛的。

python 中的注釋有幾種?

【單行注釋】井號,單引號括起來或雙引號括起來。

【多行注釋】三個單引號括起來或三個多引號對括起來。

如何優雅的給乙個函式加注釋?

函式開始第一行的字串是這個函式的docstring。

使用pycharm時,函式的第一行輸入六個"加乙個回車,會自動生成函式注釋模板。

如何給變數加注釋?

在變數同行用#新增注釋。

python **縮排中是否支援 tab 鍵和空格混用。

不支援混用。會出現如圖錯誤。如果你使用pycharm,會自動糾正這個問題。

是否可以在一句 import 中匯入多個庫?

pep 8 中是不建議這樣書寫**的,但是這樣書寫,**也不會報錯。

在給 py 檔案命名的時候需要注意什麼?

不要和一直的模組,變數,常量等名字衝突;建議不要用中文。

例舉幾個規範 python **風格的工具

pycharm中ctrl+alt+l可以做一定的格式整理,但是不完整。

pyline。

flake8。

autopep8。

華為有自己的**規範檢查工具。

以上答案皆為鄙人回答,如有問題,敬請諸君指出.

【python面試170題】系列

1. 語言特性

2. 編碼規範

3. 資料型別-字串

python編碼問題 2

先上 coding utf 8 import sys import urllib2 import re import chardet import sys print sys.getdefaultencoding html src urllib2.urlopen html read print ch...

Python2編碼問題

以下內容說的都是 python 2.x 版本 我們看到的輸入輸出都是 字元 characters 計算機 程式 並不能直接處理,需要轉化成位元組資料 bytes 因為程式只能處理 bytes 資料。例如 檔案 網路傳輸等,處理的都是 bytes 資料 二進位制數字。孤立的 byte 是毫無意義的,所...

Python2編碼問題

以下內容說的都是 python 2.x 版本 我們看到的輸入輸出都是 字元 characters 計算機 程式 並不能直接處理,需要轉化成位元組資料 bytes 因為程式只能處理 bytes 資料。例如 檔案 網路傳輸等,處理的都是 bytes 資料 二進位制數字。孤立的 byte 是毫無意義的,所...