Ini tidak tepat pada pertanyaan Anda yang sebenarnya, tetapi karena Anda telah mengatakan bahwa Anda adalah pemula python mungkin itu akan membantu, dan tidak ada orang lain yang cukup keluar dan mengatakannya secara eksplisit.
Saya tidak akan pernah memperbaiki kode di atas dengan membuat metode metode statis. Saya akan meninggalkan kelas dan hanya menulis fungsi:
def drawSample(samplesize,List):
sample=random.sample(List,samplesize)
return sample
Choices=range(100)
print drawSample(5,Choices)
Jika Anda memiliki banyak fungsi terkait, Anda dapat mengelompokkannya dalam sebuah modul - yaitu, taruh semuanya dalam file yang sama, dinamai sample.py
misalnya; kemudian
import sample
Choices=range(100)
print sample.drawSample(5,Choices)
Atau saya akan menambahkan __init__
metode ke kelas dan membuat contoh yang memiliki metode yang berguna:
class Sample(object):
'''This class defines various methods related to the sample'''
def __init__(self, thelist):
self.list = thelist
def draw_sample(self, samplesize):
sample=random.sample(self.list,samplesize)
return sample
choices=Sample(range(100))
print choices.draw_sample(5)
(Saya juga mengubah konvensi case pada contoh di atas agar sesuai dengan gaya yang direkomendasikan oleh PEP 8.)
Salah satu kelebihan Python adalah tidak memaksa Anda menggunakan kelas untuk semuanya. Anda dapat menggunakannya hanya jika ada data atau status yang harus dikaitkan dengan metode, untuk tujuan kelas apa. Jika tidak, Anda dapat menggunakan fungsi, untuk apa fungsi itu.