翻譯|使用教程|編輯:龔雪|2018-08-13 14:40:09.000|閱讀 5300 次
概述:PyCharm是一種Python IDE,其帶有一整套可以幫助用戶在使用Python語言開發(fā)時(shí)提高其效率的工具。本文使用一個(gè)有理數(shù)的簡(jiǎn)單類的示例,展示了PyCharm中可用的一些重構(gòu)。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
確保滿足以下先決條件:
在項(xiàng)目中創(chuàng)建一個(gè)Python文件rational.py并添加以下代碼:
通過將分子和分母除以最大公約數(shù)來簡(jiǎn)化有理數(shù):
現(xiàn)在,將搜索最大公約數(shù)提取到單獨(dú)的方法中。為此,請(qǐng)選擇語句
并按Ctrl+Alt+M。在打開的dialog box中輸入方法名稱(gcd),然后單擊OK:
factor通過使用 Inline variable重構(gòu)來擺脫變量。為此,請(qǐng)將插入符號(hào)放在相關(guān)變量上,然后按Ctrl+Alt+N。所有檢測(cè)到的factor變量都是內(nèi)聯(lián)的。
接下來,使用Change Signature更改參數(shù)名稱。為此,請(qǐng)將插入符號(hào)放在方法聲明行中,然后按Ctrl+F6。在打開的dialog box中,分別將參數(shù)denom和num重命名為x和y,然后單擊圖標(biāo)節(jié)點(diǎn)upLevel以更改參數(shù)的順序。
現(xiàn)在,將現(xiàn)有的靜態(tài)方法轉(zhuǎn)換為函數(shù)。 要執(zhí)行此操作,請(qǐng)按Alt + Enter,請(qǐng)從?suggestion列表中選擇Convert static method to function,然后按Enter:
現(xiàn)在,把函數(shù)移動(dòng)到一個(gè)單獨(dú)的文件并添加一個(gè)import語句。 要執(zhí)行此操作,請(qǐng)將插入符號(hào)放在函數(shù)gcd聲明中,然后按F6。在打開的 dialog box中,指定目標(biāo)文件的完全限定路徑util.py。此文件不存在,但會(huì)自動(dòng)創(chuàng)建:
import語句也會(huì)自動(dòng)添加。因此該文件rational.py如下所示:
在類的對(duì)象上添加對(duì)加法/減法操作的magic方法的聲明Rational:
將表達(dá)式提取Rational(other, 1)到一個(gè)單獨(dú)的方法中。要執(zhí)行此操作,請(qǐng)將插入符號(hào)放在上述表達(dá)式中,按Ctrl + Alt + M,然后在打開的對(duì)話框中輸入新方法名稱from_int。將插入符號(hào)放在方法from_int聲明中,按 Alt+Enter,從suggestion列表中選擇Make method static,然后按Enter:
最后,讓我們將參數(shù)的名稱更改為number。 為此,請(qǐng)將插入符號(hào)放在參數(shù)上,然后按Shift + F6鍵。
將方法__radd __,__ sub__和__rsub__的實(shí)現(xiàn)移動(dòng)到superclass中。 另外,將使方法__neg__和__add__成為抽象的。
這就是它的完成方式......將插入符號(hào)放在類Rational聲明中,在context菜單中指向Refactor | Extract 并選擇Superclass......。接下來,在打開的dialog box中,指定superclass的名稱(此處為 AdditiveMixin),并選擇要添加到superclass的方法。對(duì)于方法 __neg__和__add__,選擇列dialog box中的Make abstract。 最后得到以下代碼:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都