簡體   English   中英

Pycharm中for循環內的調試列表理解

[英]Debug list comprehension inside for loop in Pycharm

我正在嘗試調試循環內包含列表理解的代碼段。

list_a = ['a', 'b', 'c']
list_b = ['a', 'b']
for x in list_a:
    print([i for i in list_b if i == x])

當我運行整個腳本時,代碼可以正常運行。 但是,當我在for循環之前找到一個斷點並嘗試以交互方式運行for循環時,出現以下錯誤:

追溯(最近一次通話最后一次):文件“ /root/pycharm/helpers/pydev/_pydevd_bundle/pydevd_exec2.py”,第3行,在Exec exec(exp,global_vars,local_vars)中,在文件“”,第2行,在文件“” ,NameError中第2行:未定義名稱'x'

我正在使用pycharm進行調試。

調試列表理解的最好方法是使用一個簡單的for循環:

從:

[i for i in list_b if i == x]

采用:

for x in list_a:
    costum_list = []
    for i in list_b:
        if i == x:
            costum_list.append(i)
    print(costum_list)

但我只是運行您的代碼,似乎一切都很好

幾天前,我遇到了同樣的錯誤,而我所做的只是從調試控制台中單擊“ Remove All Watches ,這要歸功於此PyCharm引用了較早的已刪除變量問題。 右鍵單擊“ Variables部分,然后單擊“ Remove All Watches然后重新運行調試過程。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM