簡體   English   中英

如何處理pylint消息:警告:方法可以是一個函數

[英]How to handle the pylint message: Warning: Method could be a function

我有一個python類並對它運行pylint。 它給出的一條信息是:

Warning: Method could be a function

這是否告訴我,將此方法移出類是更好的,因為它不使用任何實例變量?

在C#中,我會將其設為靜態方法。 在這里做什么最蟒蛇的事情?

將它移動到函數是很常見的,如果它根本不觸及類。

如果它操縱類屬性,請使用classmethod裝飾器:

@classmethod
def spam(cls, ...):
   # cls is the class, you can use it to get class attributes

classmethodstaticmethod (與前者相同,除了該方法沒有從第一個參數獲得對類的引用)最近才被引入。 這意味着一些Python程序員用於避免靜態和類方法。

一些鐵桿Python程序員會告訴你,這些裝飾器只會使事情復雜化; 其他一些人(通常是前C#或Java程序員)會告訴你,使用一個函數不是面向對象的。 我認為這只是一個偏好問題。

暫無
暫無

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

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