Lỗi trong python

khi in ra console hay file mà dùng hàm print thì nó bị thế này
<main.Student object at 0x0000000001ED2908>
làm sao để fix cái này vậy ạ?

Đó không phải lỗi, đó là vì em in ra cái object (tên và địa chỉ object) chứ không phải nội dung trong object. Em nên làm thêm 1 method dùng để in dữ liệu, khi cần in dữ liệu thì gọi nó là xong.

thế làm sao để ghi 1 list object vào 1 file vậy ạ?

Thì cứ truy xuất từng phần tử bằng…tay. Anh cũng không biết cái object đó tròn hay méo thì cũng khó nói lắm. Ví dụ như em có 1 list chứa các object: lstudent, các object có các phần tử s_name, s_id có thể truy xuất phần tử qua getname()getid() thì cứ dùng vòng lặp for:

# tham số truyền vào hàm là lstudent.
def export_studentobjlist(lst):
    current_position = 1
    for current_obj in lst:
        print "Student number:", current_position
        print "   |-- id  :  ", current_obj.getid()
        print "   `-- name:", current_obj.getname()
        print
        current_position += 1

Lưu ý là khi nhập thông tin vào thì nó phải là instance của object chứ k phải object đó.

Khi print 1 object mà muốn ra nội dung theo ý mình thì bạn định nghĩa method __str()__:

def __str__(self):
    return '%s' % self.attribute
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?