進出口運行到一個問題,即如何在python中引發警告時在函數中查看變量?
cds_to_protein = str(feature.extract(record).seq.translate(to_stop = True))
將拋出一個Biopython警告。所以我需要看看傳遞給它的記錄和功能是什麼導致了這個警告。
有沒有辦法使用pdb或其他調試器來查看函數中的參數?
編輯:我使用python -Werror -m pdb script.py
其工作時的警告出現
停止PDB,我也是爲了救他們加入
saved_record = record
saved_feature = feature
,但我不知道他們是否」必要的。我應該讓他們全球化,以查看他們?
這裏的功能:
def validate_cds(record, feature):
saved_record = record
saved_feature = feature
protein_in_file = str(feature.qualifiers.get('translation', 'no_translation')).strip('\'[]')
cds_to_protein = str(feature.extract(record).seq.translate(to_stop = True))
return
當然,只需使用調試器即可進入該功能;那時你可以檢查你喜歡的任何地方(只需在調試器中使用'!record'和'!feature'來回顯它們的值)。沒有必要分配給其他當地人這樣做。 –
@MartijnPieters我使用'python -Werror -m pdb'來運行pdb,直到它拋出錯誤,但我得到'*** NameError:名稱'記錄'未定義' – ahtmatrix
您可以使用'try:except'和打印出你的程序無法執行的值 –