Python縮進為什麼要用4個空格呢?為什麼不是TAB或者2個空格?
個人認為主要是協同開發時可以保持眾人代碼的外觀一致性,減少一些不必要的麻煩。如果誰有更好的觀點歡迎指教。
在vimrc中加入如下代碼即可將自動縮進改為4空格:
autocmd FileType python setlocal et sta sw=4 sts=4
其中相關變量含義:
變量名 縮寫含義
(no)autoindent ai 自動縮進,即為新行自動添加與當前行同等的縮進。
(no)cindent ci 類似C語言程序的縮進
(no)smartindent si 基於autoindent的一些改進
變量名 縮寫含義
tabstop=X ts 編輯時一個TAB字符占多少個空格的位置。
shiftwidth=X sw 使用每層縮進的空格數。
(no)expandtab (no)et 是否將輸入的TAB自動展開成空格。開啟後要輸入TAB,需要Ctrl-V<TAB>
softtabstop=X sts 方便在開啟了et後使用退格(backspace)鍵,每次退格將刪除X個空格
(no)smarttab (no)sta 開啟時,在行首按TAB將加入sw個空格,否則加入ts個空格。