在編寫代碼時(shí)宏怔,有些代碼語句是固定的,如
for i in range(10):
...
這其中的for
in
:
就是固定的畴椰,在考慮編碼效率問題時(shí)臊诊,就可以考慮如何讓IDE自動(dòng)生成這些固定的代碼,只輸入根據(jù)上下文變化的代碼斜脂。就可以提高效率抓艳。
一、Pycharm Live Templates 簡介
Live templates 是Pycharm中內(nèi)置的一個(gè)功能帚戳,它可以讓你快速玷或、有效儡首、精確的插入常用的(pycharm已經(jīng)配置好的)和自定義的代碼構(gòu)造語句。
在Pycharm中已經(jīng)內(nèi)置好了很多常用的代碼構(gòu)造段偏友,在輸入代碼時(shí)按下?J
蔬胯,就可以看到現(xiàn)有基于當(dāng)前編輯文件后綴匹配的語言的代碼構(gòu)造段。
左邊是代碼段的縮寫位他,右邊是說明氛濒。
確定輸入一個(gè)代碼段后便會(huì)插入到當(dāng)前編輯的文件。
二鹅髓、 創(chuàng)建或修改Live Templates
操作的位置是在Settings/Preferences
對(duì)話框中的Live Templates
標(biāo)簽頁里泼橘。
三、 代碼構(gòu)造段的種類
Simple live templates
Simple templates 包含著一些固定的純文本代碼迈勋,會(huì)自動(dòng)插入到源代碼中。
Parameterized live templates
Parameterized templates 包含純文本代碼和用戶可以輸入的變量位置醋粟。
在模版代碼擴(kuò)展后靡菇,變量位置就像Html Input控件一樣可以輸入,或者可以根據(jù)上下文由Pycharm讀取模版代碼的配置自動(dòng)計(jì)算后填入米愿。
Surround live templates
Surround templates僅在選中代碼后工作厦凤。可以給選中的代碼外圍包括些固定代碼育苟。
四较鼓、 Live templates 中的變量
變量在這里的表達(dá)的形式是$<var_name>$
。
主要有三個(gè)作用:
- 占位
- 由配置的方法根據(jù)上下文自動(dòng)替換
- pycharm保留名稱
$SELECTION$
$END$
更抽象一點(diǎn)說违柏,其功能都是占位作用博烂,等待著被某種方式的輸入替換。
第一個(gè)就是被用戶輸入給替換掉漱竖。
第二個(gè)是由Pycharm提供的內(nèi)置方法的返回值替換禽篱。
如下
Item | Description |
---|---|
camelCase(String) | Returns the string passed as a parameter, converted to camel case. For example, my-text-file/my text file/my_text_file will be converted to myTextFile |
capitalize(String) | Capitalizes the first letter of the name passed as a parameter. |
... | ... |
具體見list of predefined functions
第三個(gè)中$SELECTION$
是會(huì)被選中的代碼給替換掉。$END$
指代碼構(gòu)造段最后結(jié)束轉(zhuǎn)交給用戶輸入的地方馍惹。
# main
if __name__ == '__main__':
$END$