01/10/2018, 14:03
Giúp mình phần python này với
class Students():
name = "";
mark1 = 0;
mark2 = 0;
def __init__(self, name):
self.name = name
def __init__(self, mark1):
self.mark1 = mark1
def __init__(self, mark2):
self.mark2 = mark2
def enter_name(name):
name = input("enter_name: ")
print 'Your name:', name
def progress(mark1):
mark1 = input("Your mark1: " )
print "Your mark1: ", mark1
def final(mark2):
mark2 = input("Your mark2: " )
print "Your mark2: ", mark2
def total(mark1,mark2 ):
print "Total mark: ", mark1 + mark2
enter_name(name)
progress(mark1)
final(mark2)
total(mark1,mark2)
ở phần print "Total mark: ", mark1 + mark2
mình k biết cách lấy giá trị của mark1 và mark2 ở trên. Mong mọi người giúp đỡ.
Bài liên quan
bác đăng code Python kiểu này là chịu thua luôn =)) không có ngoặc {} mà viết thẳng hàng như này nguy hiểm quá :v
print ("Total mark: ", self.mark1 + self.mark2)
Nhưng đây là hàm bạn đã đưa mark1,mark2 là input mà?
mình là newbie, ý mình làm bài này là. nhập tên, nhập điểm 1, nhập điểm 2 và tự in ra kết quả điểm trung bình…nhưng lúc in ra điểm trung bình, thì k lấy kết quả của 2 điểm trên. hazz
Xem qua thì có thể chương trình chạy ko như mong muốn là do tên parameter trùng với tên biến trong phương thức của bạn.
Có nghĩa là khi bạn nhập điểm thì điểm đó được lưu vào biến mark1, mark2 trong phương thức nhập thôi, còn biến mark1, mark2 của class Student thì chưa được gán => tính tổng điểm của Student sẽ ko ra kết quả.
=> Solution: bạn nên phân biệt rõ biến của phương thức và biến của class, nếu không kiểm soát được thì nên đặt tên parameter khác tên biến của class cho an toàn =))
Note: Mình chưa từng viết code Python bao giờ và cũng chưa test thử solution nên comment chỉ mang tính tham khảo =))
Ý bài này của bạn là sao nhỉ, cảm thấy các method nó không liên quan với class, bạn nói rõ xem là bạn muốn làm gì