Qual è il vantaggio dell’utilizzo di metodi statici?

| |

Ho riscontrato un errore di metodo non associato in Python con il codice

import random class Sample(object): """Questa classe definisce vari metodi relativi all'esempio""" def drawSample( samplesize,List): sample=random.sample(List,samplesize) return sample Choices=range(100) print Sample.drawSample(5,Choices) 

Dopo aver letto molti post utili qui, Ho pensato a come aggiungere @staticmethod sopra per far funzionare il codice. Sono un principiante di Python. Qualcuno può spiegare perché si vorrebbe definire metodi statici? Oppure, perché non tutti i metodi sono definiti come metodi statici?