簡體   English   中英

PyCharm for Python給出了錯誤,自我未定義

[英]PyCharm for Python gives error for self is not defined

我的代碼如下

import mod_curves
import mod_dates
import datetime
import modcalinputs

curvesclass = mod_curves.curvecalcs()
datesclass = mod_dates.datecalcs()
calcInputs = modcalinputs.calcinputs()

 1. List item

class payment_calculations:
    def __init__(self):
        self.__accrualdays = 0
        self.__accrualrate = 0
        self.__coupondates = {}
....

當我在init聲明中對包括self在內的任何變量運行PyCharm時,我看到PyCharm(NameError)名稱“ self”報告的以下內容未定義。 此錯誤出現在我的代碼中以self .__開頭的每個變量上。

這阻止了我可以進行的任何調試。

但是,當我執行代碼時,該應用程序將按預期運行。

我如何擺脫該錯誤信息_

似乎對我有用,使用PyCharm 4.5.3。 抱歉,如果答案太明顯:

調試時,僅當調試器當前位於變量范圍內時,才能查看變量的內容。 例如,在這里我在main中設置了一個斷點,其中selfself.__x不在范圍內。 在此處輸入圖片說明

在這里,我在構造函數中設置了一個斷點,其中selfself.__x在作用域內。 在此處輸入圖片說明

如果要從main訪問它,另一種方法是只使用實例而不是self進行訪問,如下所示: 在此處輸入圖片說明

我不確定以下各項中的哪一項確實有效-但有些事情已經解決了

  • 進行了自動代碼清理
  • 關閉PyCharm並重新打開所有文件
  • 有條不紊地瀏覽了整個項目,並確保每一行代碼都非常緊密,沒有任何形式的錯誤。

現在,當我對self .__和相關變量進行監視時,看不到錯誤。 我認為部分問題是我最初是在IDLE中編寫代碼,然后將代碼復制到PyCharm項目中。 因此,我沒有進行PyCharm錯誤檢查等。這意味着我有很多不必要的錯誤等。

暫無
暫無

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

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