Hướng dẫn python __str__ - python __str__
Cả hai hàm str() và repr() đều được sử dụng để lấy về dạng thức kiểu string của một đối tượng 1. Ví dụ về hàm str():
Kết quả in ra là:
2. Ví dụ về hàm repr():
Kết quả in ra là:
2. Ví dụ về hàm repr(): Từ kết quả đầu ra của đoạn chương trình ví dụ trên, chúng ta có thể thấy được rằng nếu chúng ta sử dụng hàm repr() để in ra chuỗi, thì chuỗi được in ra sẽ được bao bọc trong một cặp dấu nháy đơn (‘ ‘), và nếu chúng ta sử dụng hàm repr() để tính toán một giá trị cụ thể, thì ta sẽ thu được kết quả có độ chính xác cao hơn so với khi sử dụng hàm str(). Có thể liệt kê các điểm khác biệt giữa hàm str() và hàm repr() là: – str() được sử dụng để tạo ra dữ liệu đầu ra dành cho người dùng cuối, trong khi hàm repr() được sử dụng chủ yếu cho việc debugging và phát triển phần mềm. Mục tiêu của hàm repr() là không rõ ràng, còn mục tiêu của hàm str() là cho ra một kết quả có thể đọc được, Ví dụ, nếu chúng ta nghi ngờ một số kiểu float đang tiềm tàng một lỗi nhỏ về việc làm tròn, thì hàm repr() sẽ cho chúng ta thấy được lỗi này có xảy ra hay không, trong khi hàm str() có thể sẽ không làm được điều đó. – Hàm repr() sẽ tính toán dạng thức kiểu string “chính thức” của một đối tượng (một dạng thức mà chứa tất cả các thông tin về đối tượng), còn hàm str() thì được sử dụng để tính toán dạng thức kiểu string “không chính thức” của một đối tượng (một dạng thức hữu dụng khi cần in ra đối tượng). – Câu lệnh print và hàm str() được tích hợp sẵn trong Python sử dụng __str__ để hiển thị dạng biểu diễn theo kiểu string của đối tượng, trong khi hàm repr() sẽ sử dụng __repr__ để hiển thị đối tượng.
Kết quả in ra là:
2. Ví dụ về hàm repr(): Từ kết quả đầu ra của đoạn chương trình ví dụ trên, chúng ta có thể thấy được rằng nếu chúng ta sử dụng hàm repr() để in ra chuỗi, thì chuỗi được in ra sẽ được bao bọc trong một cặp dấu nháy đơn (‘ ‘), và nếu chúng ta sử dụng hàm repr() để tính toán một giá trị cụ thể, thì ta sẽ thu được kết quả có độ chính xác cao hơn so với khi sử dụng hàm str(). Có thể liệt kê các điểm khác biệt giữa hàm str() và hàm repr() là: – str() được sử dụng để tạo ra dữ liệu đầu ra dành cho người dùng cuối, trong khi hàm repr() được sử dụng chủ yếu cho việc debugging và phát triển phần mềm. Mục tiêu của hàm repr() là không rõ ràng, còn mục tiêu của hàm str() là cho ra một kết quả có thể đọc được, Ví dụ, nếu chúng ta nghi ngờ một số kiểu float đang tiềm tàng một lỗi nhỏ về việc làm tròn, thì hàm repr() sẽ cho chúng ta thấy được lỗi này có xảy ra hay không, trong khi hàm str() có thể sẽ không làm được điều đó. – Hàm repr() sẽ tính toán dạng thức kiểu string “chính thức” của một đối tượng (một dạng thức mà chứa tất cả các thông tin về đối tượng), còn hàm str() thì được sử dụng để tính toán dạng thức kiểu string “không chính thức” của một đối tượng (một dạng thức hữu dụng khi cần in ra đối tượng).
Kết quả in ra là:
2. Ví dụ về hàm repr():
Có thể liệt kê các điểm khác biệt giữa hàm str() và hàm repr() là:
Để có thể hiểu được những điều trên, chúng ta cùng theo dõi ví dụ sau:
Full series tự học Python từ cơ bản tới nâng cao tại đây nha. Ebook về python tại đây. |