Khi sử dụng khái niệm hướng đối tượng của Python đủ nhiều trong lập trình, chúng ta cần tạo đối tượng và truy cập thuộc tính của chúng. Các đối tượng thường được tạo từ một lớp (class) và hàm getattr giúp truy cập thuộc tính của đối tượng.
Ví dụ
Trong ví dụ dưới, tạo đối tượng từ lớp Best Buy và gán giá trị cho thuộc tính của đối tượng đó. Sau đó truy cập các thuộc tính đó trong câu lệnh print.
import time
# Khai báo class
class bestpy:
name = "pyexperts"
course = "python"
# Khởi tạo đối tượng
n = bestpy()
# Sử dụng getattr để in name
getattr_bestpy = time.time()
print("Tên công ty là :" + getattr(n, 'name'))
print("Thời gian thực thi getattr_bestpy : " + str(time.time() - getattr_bestpy), "\n")
# Sử dụng phương pháp thông thường để in course
conventional_bestpy = time.time()
print("Cung cấp công việc về " + n.course)
print("Thời gian thực thi conventional_bestpt :" + str(time.time() - conventional_bestpy))
Kết quả
Chạy đoạn code trên cho kết quả sau:
Tên công ty là :pyexperts getattr_bestpy time execution is : 0.0011477470397949219 It provides work on python conventional_bestpt time execution is: 0.0002818107604980469