Đây không phải là vấn đề thực sự của câu hỏi của bạn, nhưng vì bạn đã nói rằng bạn là một người mới chơi python, có lẽ nó sẽ hữu ích và không ai khác đã đứng ra và nói điều đó một cách rõ ràng.
Tôi sẽ không bao giờ sửa đoạn mã trên bằng cách đặt phương thức này thành phương thức tĩnh. Tôi có thể đã bỏ lớp và chỉ viết một hàm:
def drawSample(samplesize,List):
sample=random.sample(List,samplesize)
return sample
Choices=range(100)
print drawSample(5,Choices)
Nếu bạn có nhiều chức năng liên quan, bạn có thể nhóm chúng trong một mô-đun - tức là, đặt tất cả chúng trong cùng một tệp, được đặt tên sample.pychẳng hạn; sau đó
import sample
Choices=range(100)
print sample.drawSample(5,Choices)
Hoặc tôi đã thêm một __init__phương thức vào lớp và tạo một thể hiện có các phương thức hữu ích:
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)
(Tôi cũng đã thay đổi các quy ước trường hợp trong ví dụ trên để phù hợp với phong cách được khuyến nghị bởi PEP 8.)
Một trong những lợi thế của Python là nó không bắt bạn phải sử dụng các lớp cho mọi thứ. Bạn chỉ có thể sử dụng chúng khi có dữ liệu hoặc trạng thái cần được liên kết với các phương thức, đó là những gì các lớp dành cho. Nếu không, bạn có thể sử dụng các hàm, đó là chức năng dùng để làm gì.