日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

a pycharm 标记多个_每周分享五个 PyCharm 使用技巧(二)

發(fā)布時(shí)間:2023/12/10 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 a pycharm 标记多个_每周分享五个 PyCharm 使用技巧(二) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

這是 「PyCharm 技巧分享」系列的第二篇分享。由于上一篇文章得到了大家的一些贊同,所以今天又來給大家推薦一些我平時(shí)自己有用的小技巧,大家擇需所取即可。

先聲明下,并不保證對所有的人都是有幫助的,所以請大神嘴下留情,覺得有用的朋友,還請給個(gè)贊,證明這系列有人在看,有人在看那我就有更多的動(dòng)力繼續(xù)更新,你說是不是呢?

如果你沒看過第一篇文章,你可以點(diǎn)擊這里進(jìn)行查看:

每周分享五個(gè) PyCharm 使用技巧(一)

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

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

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

而我們在這幾十次的調(diào)試中,向同一網(wǎng)站發(fā)起請求都是沒有意義的重復(fù)工作。如果在 Pycharm 中可以像 IPython Shell 和 Jupyter Notebook 那樣,可以記住運(yùn)行后所有的變量信息,那我們就可以在打了斷點(diǎn)后,可以在不需要重新運(yùn)行項(xiàng)目或腳本,就可以通過執(zhí)行命令表達(dá)式,來調(diào)整我們的代碼,進(jìn)行我們的正則調(diào)試。

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

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

就進(jìn)入了 Python Shell 的界面,這個(gè)Shell 環(huán)境和我們當(dāng)前運(yùn)行的程序環(huán)境是打通的,變量之間可以互相訪問,這下你可以輕松地進(jìn)行調(diào)試了。

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

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

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

然后在這里打勾選中。

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

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

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

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

07. 指定參數(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

復(fù)制代碼

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

進(jìn)入設(shè)置面板,在 Script parameters 中填入?yún)?shù)即可。

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

08. 搜索時(shí)過濾測試文件

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

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

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

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

本來沒有想寫這個(gè)的,但是知乎上有一位朋友有這個(gè)需求,那我研究了下。

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

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

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

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

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

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

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

Pycharm 本身會(huì)實(shí)時(shí)地對變量名進(jìn)行檢查,如果變量名不是一個(gè)已存在的英文單詞,就會(huì)出現(xiàn)一條波浪線,當(dāng)一個(gè)變量里有多個(gè)單詞時(shí),Python 推薦的寫法是用下劃線來分隔(其他語言可能會(huì)習(xí)慣使用駝峰式命名法 ,但 Python 是使用下劃線),所以在 Pycharm 看來 my_name 是規(guī)范的,而 myname 會(huì)被當(dāng)成是一個(gè)單詞對待,由于它在單詞庫里并沒有它,所以 myname 是不規(guī)范的。

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

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

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

本周的 PyCharm 使用技巧,就是這五個(gè)了,你學(xué)會(huì)了嗎?

最后,我可以求個(gè)贊嗎? *^_^*

總結(jié)

以上是生活随笔為你收集整理的a pycharm 标记多个_每周分享五个 PyCharm 使用技巧(二)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。