真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

受用一生的PyCharm技巧大全(二)

這個(gè)系列的一些小技巧,對(duì)于一些重試用戶(hù)來(lái)說(shuō)可能是小 case,如果你覺(jué)得簡(jiǎn)單,直接略過(guò)即可,不是所有人都像你一樣,是個(gè)天才,在你之外,仍然有許多剛?cè)腴T(mén)的小伙伴。

創(chuàng)新互聯(lián)-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比仁布網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式仁布網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋仁布地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴(lài)。

6. 神一樣的調(diào)試技巧

假如我們?cè)谝粋€(gè)爬蟲(chóng)的項(xiàng)目中,會(huì)使用到 正則表達(dá)式 來(lái)匹配我們想要抓取的內(nèi)容。正則這種東西,有幾個(gè)人能夠一步到位的呢,通常都需要經(jīng)過(guò)很多次的調(diào)試才能按預(yù)期匹配。在我們改了一次正則后,運(yùn)行了下,需要重新向網(wǎng)站抓取請(qǐng)求,才能發(fā)現(xiàn)沒(méi)有匹配上,然后又改了一版,再次運(yùn)行同樣需要發(fā)起請(qǐng)求,結(jié)果還是發(fā)現(xiàn)還是沒(méi)有匹配上,往往復(fù)復(fù),正則不好的同學(xué)可能要進(jìn)行幾十次的嘗試。

(上面這個(gè)例子可能不太貼切,畢竟是有很多種方法實(shí)現(xiàn)不用重新發(fā)請(qǐng)求,只是列舉了一種很笨拙且低效的調(diào)試過(guò)程,你看看就好了。)

而我們?cè)谶@幾十次的調(diào)試中,向同一網(wǎng)站發(fā)起請(qǐng)求都是沒(méi)有意義的重復(fù)工作。如果在 Pycharm 中可以像 IPython Shell 和 Jupyter Notebook 那樣,可以記住運(yùn)行后所有的變量信息,可以在不需要重新運(yùn)行項(xiàng)目或腳本,只需稍微調(diào)整下我們的代碼,直接就可以進(jìn)行正則調(diào)試。

答案當(dāng)然是有。

假如我在調(diào)試如下幾行簡(jiǎn)單的代碼。在第 3 行處打了個(gè)斷點(diǎn)。然后點(diǎn)擊圖示位置 Show Python Prompt 按鈕。

受用一生的 PyCharm 技巧大全(二)

就進(jìn)入了 Python Shell 的界面,這個(gè)Shell 環(huán)境和我們當(dāng)前運(yùn)行的程序環(huán)境是打通的,使用的是同一個(gè) namespace,這下你可以輕松地進(jìn)行調(diào)試了。學(xué)習(xí)過(guò)程中有不懂的可以加入我們的學(xué)習(xí)交流秋秋圈784中間758后面214,與你分享Python企業(yè)當(dāng)下人才需求及怎么從零基礎(chǔ)學(xué)習(xí)Python,和學(xué)習(xí)什么內(nèi)容。相關(guān)學(xué)習(xí)視頻資料、開(kāi)發(fā)工具都有分享

受用一生的 PyCharm 技巧大全(二)

上面我們打了個(gè)斷點(diǎn),是為了方便說(shuō)明這個(gè)效果。并不是說(shuō)一定要打斷點(diǎn)。如果不打斷點(diǎn),在腳本執(zhí)行完成后,也仍然可以在這個(gè)界面查看并操作所有變量。

受用一生的 PyCharm 技巧大全(二)

現(xiàn)在我們已經(jīng)可以滿(mǎn)足我們的調(diào)試的需求,但是每次運(yùn)行腳本,都要手動(dòng)點(diǎn)擊Show Python Prompt ,有點(diǎn)麻煩。嗯?其實(shí)這個(gè)有地方可以設(shè)置默認(rèn)打開(kāi)的。這個(gè)開(kāi)頭還比較隱秘,一般人還真發(fā)現(xiàn)不了。

你需要點(diǎn)擊圖示位置 Edit Configurations 處。

受用一生的 PyCharm 技巧大全(二)

然后在這里打勾選中。

受用一生的 PyCharm 技巧大全(二)

設(shè)置上之后,之后你每次運(yùn)行后腳本后,都會(huì)默認(rèn)為你存儲(chǔ)所有變量的值,并為你打開(kāi) console 命令行調(diào)試界面。

除了上面這種方法,其實(shí)還有一種方法可以在調(diào)試過(guò)程中,執(zhí)行命令表達(dá)式,而這種大家可能比較熟悉了,這邊也提一下,就當(dāng)是匯總一下。但是從功能上來(lái)說(shuō),是沒(méi)有上面這種方法來(lái)得方便易用的。因?yàn)檫@種方法,必須要求你使用 debug 模式運(yùn)行項(xiàng)目,并打斷點(diǎn)。

使用方法就是,在你打了斷點(diǎn)后,在圖示位置處,點(diǎn)擊右鍵使用 Evaluate Expression

受用一生的 PyCharm 技巧大全(二)

就彈出了一個(gè) Evaluate Expression 窗口,這里 可以運(yùn)行命令表達(dá)式,直接操作變量。

受用一生的 PyCharm 技巧大全(二)

7. 指定參數(shù)執(zhí)行腳本

你在 Pycharm 運(yùn)行你的項(xiàng)目,通常是怎么執(zhí)行的?我的做法是,右鍵,然后點(diǎn)擊 Run,或者使用快捷鍵 Shift + F10

有時(shí)候,在運(yùn)行/調(diào)試腳本的時(shí)候,我們需要指定一些參數(shù),這在命令行中,直接指定即可。

假設(shè)在命令行中,運(yùn)行腳本的命令是這樣

python main.py init --local

對(duì)于剛使用 Pycharm 的同學(xué),可能并不知道 Pycharm 也是可以指定參數(shù)的。點(diǎn)擊下圖位置

受用一生的 PyCharm 技巧大全(二)

進(jìn)入設(shè)置面板,在 Script parameters 中填入?yún)?shù)即可。學(xué)習(xí)過(guò)程中有不懂的可以加入我們的學(xué)習(xí)交流秋秋圈784中間758后面214,與你分享Python企業(yè)當(dāng)下人才需求及怎么從零基礎(chǔ)學(xué)習(xí)Python,和學(xué)習(xí)什么內(nèi)容。相關(guān)學(xué)習(xí)視頻資料、開(kāi)發(fā)工具都有分享

受用一生的 PyCharm 技巧大全(二)

同時(shí)在上圖的底部,你可以看到,這里可以很方便的切換 解釋器,比你跑到這邊來(lái)要容易得多吧

受用一生的 PyCharm 技巧大全(二)

8. 搜索時(shí)過(guò)濾測(cè)試文件

接下來(lái),介紹一個(gè),我看框架源碼的時(shí)的一個(gè)小技巧,可能只適用一小部分人吧。

我平時(shí)會(huì)看的框架是 OpenStack ,我不知道其他框架是怎樣的,但在 OpenStack 里面帶有大量(真的很多)的單元測(cè)試文件。這給我在使用Find in Path 時(shí)帶來(lái)了不小的困擾,你可以從下圖的搜索結(jié)果中感受一下,搜索一個(gè)函數(shù),test 文件里的結(jié)果比 正常文件要多很多。

受用一生的 PyCharm 技巧大全(二)

這些測(cè)試文件的搜索結(jié)果,對(duì)于我們看源代碼不僅沒(méi)有任何幫助的,更重要的是還干擾視線(xiàn)。于是我就研究了一下,從文件名入手,只要在 File mask里填寫(xiě) !test* 可以將這些test文件過(guò)濾掉。搜索結(jié)果一下子清晰很多。

受用一生的 PyCharm 技巧大全(二)

9. 關(guān)閉煩人的燈泡提示

先來(lái)說(shuō)下這個(gè)燈泡提示是什么,有什么用?

當(dāng)我們?cè)诖a里面有語(yǔ)法錯(cuò)誤,或者代碼編寫(xiě)不符合 pep8 代碼規(guī)范時(shí),鼠標(biāo)選擇有問(wèn)題的代碼,就會(huì)自動(dòng)彈出小燈泡,這個(gè)燈泡是有顏色之分的,如果是紅燈泡,一般都是語(yǔ)法問(wèn)題,如果不處理會(huì)影響代碼運(yùn)行。而如果是黃燈泡,就只是一個(gè)提示,提示你代碼不規(guī)范等,并不會(huì)影響程序的運(yùn)行。

雖然這個(gè)燈泡,是出于善意之舉,但我認(rèn)為它確實(shí)有點(diǎn)多余(可能是我個(gè)人沒(méi)有使用它的習(xí)慣),要是語(yǔ)法錯(cuò)誤會(huì)有紅色波浪線(xiàn)提示。你可能會(huì)說(shuō)燈泡不僅起到提示的作用,它還可以自動(dòng)糾正代碼,我個(gè)人感覺(jué)并沒(méi)有人工校正來(lái)得效率,來(lái)得精準(zhǔn)。

基于有時(shí)還會(huì)像知乎上這個(gè)朋友說(shuō)的這樣,會(huì)擋住我們的代碼,會(huì)經(jīng)常誤點(diǎn),這確實(shí)也是一個(gè)煩惱。

我研究了下,Pycharm (2018版本)里是有開(kāi)關(guān)按鈕的,將下圖中的這個(gè)選項(xiàng)(Show intention bulb)取消勾選,就可以關(guān)閉這個(gè)功能。

受用一生的 PyCharm 技巧大全(二)

10. 關(guān)閉礙眼的波浪線(xiàn)

下面我先給出了一小段代碼示例,思考一下,為什么name,my_name 不會(huì)有波浪線(xiàn),而 myname 和 wangbm 會(huì)有波浪線(xiàn)呢?

受用一生的 PyCharm 技巧大全(二)

Pycharm 本身會(huì)實(shí)時(shí)地對(duì)變量名進(jìn)行檢查,如果變量名不是一個(gè)已存在的英文單詞,就會(huì)出現(xiàn)一條波浪線(xiàn),當(dāng)一個(gè)變量里有多個(gè)單詞時(shí),Python 推薦的寫(xiě)法是用下劃線(xiàn)來(lái)分隔(其他語(yǔ)言可能會(huì)習(xí)慣使用駝峰式命名法 ,但 Python 是使用下劃線(xiàn)),所以在 Pycharm 看來(lái) my_name 是規(guī)范的,而 myname 會(huì)被當(dāng)成是一個(gè)單詞對(duì)待,由于它在單詞庫(kù)里并沒(méi)有它,所以 myname 是不規(guī)范的。學(xué)習(xí)過(guò)程中有不懂的可以加入我們的學(xué)習(xí)交流秋秋圈784中間758后面214,與你分享Python企業(yè)當(dāng)下人才需求及怎么從零基礎(chǔ)學(xué)習(xí)Python,和學(xué)習(xí)什么內(nèi)容。相關(guān)學(xué)習(xí)視頻資料、開(kāi)發(fā)工具都有分享

每個(gè)人的變量命名習(xí)慣不一樣,如何你在項(xiàng)目里大量使用了 myname 這種風(fēng)格的變量命名方法,像下面這樣(隨便找了一段 cloudinit 的代碼),是讓人挺不舒服的,總有一種代碼有 bug 的錯(cuò)覺(jué)。

受用一生的 PyCharm 技巧大全(二)

那么如何關(guān)閉這個(gè)非語(yǔ)法級(jí)別的波浪線(xiàn)呢?很簡(jiǎn)單,它的開(kāi)關(guān)就在你的右下角那個(gè)像 人頭像 一樣的按鈕

受用一生的 PyCharm 技巧大全(二)

然后選擇 Syntax 級(jí)別的即可。同樣一段代碼,效果如下,干凈了很多。

受用一生的 PyCharm 技巧大全(二)


網(wǎng)站欄目:受用一生的PyCharm技巧大全(二)
當(dāng)前URL:http://weahome.cn/article/gedjdc.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部