Tại sao nên sử dụng getattr trong Python?

def getattr_without_default_value[]

print["hàm getattr[] không có giá trị mặc định"]

print["tên sinh viên - ", getattr[sinh viên, "tên"]]

print["Tuổi sinh viên - ", getattr[sinh viên, "tuổi"]]

print["điểm của sinh viên - ", getattr[sinh viên, "điểm"]]

ngoại trừ AttributeError như cũ

def getattr_with_default_value[]

print["hàm getattr[] với giá trị mặc định"]

print["tên sinh viên - ", getattr[sinh viên, "tên"]]

print["Tuổi sinh viên - ", getattr[sinh viên, "tuổi"]]

print["Điểm của sinh viên - ", getattr[sinh viên, "điểm", "Không tìm thấy"]]

getattr_without_default_value[]

getattr_with_default_value[]

Công dụng duy nhất của hàm getattr[] trong Python là lấy giá trị thuộc tính của đối tượng và nếu không tìm thấy thuộc tính nào của đối tượng đó, giá trị mặc định sẽ được trả về

Về cơ bản, việc trả về giá trị mặc định là lý do chính mà bạn nên sử dụng hàm getattr[]. hàm getattr[] chấp nhận nhiều tham số

cú pháp. getattr[đối tượng, tên_thuộc tính [, mặc định]] ở đâu,

đối tượng - đối tượng của lớp có giá trị thuộc tính sẽ được trả về

attribute_name — tên của thuộc tính

mặc định [Tùy chọn] — giá trị được trả về khi không tìm thấy thuộc tính

Nếu thuộc tính_name được chuyển đến getattr[] không được tìm thấy hoặc có sẵn trong lớp, giá trị mặc định sẽ xuất hiện

Điều này cho phép chúng tôi hoàn thành một số dữ liệu chưa hoàn chỉnh của mình và kết thúc quá trình thực thi chương trình mà không có bất kỳ lỗi nào. Hãy để chúng tôi xem một ví dụ-

Tương tự, chúng ta có một cái gì đó để thiết lập các giá trị thuộc tính của một đối tượng, setattr[]

cú pháp. setattr[đối tượng, tên, giá trị] ở đâu,

đối tượng - đối tượng có thuộc tính phải được đặt

attribute_name — tên thuộc tính mà chúng ta cần đặt giá trị

attribute_value — giá trị của thuộc tính được đặt

Hãy để chúng tôi xem một ví dụ-

Bạn cũng có thể đặt một thuộc tính và giá trị của nó bằng cách sử dụng hàm setattr[], ngay cả khi nó hiện không có trong lớp, tuy nhiên, nó là đối tượng cụ thể. Trong ví dụ dưới đây, chúng tôi đang cố gắng đặt một thuộc tính mới cho đối tượng 'emp_name' từ bên ngoài lớp

Có một chức năng sẵn có để kiểm tra xem đối tượng có thuộc tính hay không. Nó trả về true nếu một đối tượng có thuộc tính đã cho và false nếu không

Python hỗ trợ lập trình hướng đối tượng và có cú pháp ngắn gọn, dễ đọc và dễ học. Không có gì ngạc nhiên khi nó là một trong những ngôn ngữ lập trình phổ biến nhất. Một phần không thể thiếu của Python là các hàm tích hợp sẵn của nó.  

Chúng tôi đã viết một loạt bài viết để giúp bạn tìm hiểu và nắm bắt các hàm Python hữu ích nhất. Trong bài viết này, chúng ta sẽ tìm hiểu về hàm getattr[] của Python và cách sử dụng nó.  

Nếu bạn đang chuẩn bị cho một cuộc phỏng vấn kỹ thuật, hãy xem danh sách kiểm tra phỏng vấn kỹ thuật, trang câu hỏi phỏng vấn và sách điện tử đàm phán lương của chúng tôi để sẵn sàng cho cuộc phỏng vấn. Ngoài ra, hãy đọc Phương thức tham gia chuỗi Python [], Các lệnh thoát Python và Nhập và Iinstance trong Python để biết thêm nội dung về chuẩn bị phỏng vấn mã hóa Python

Đã đào tạo hơn 10.000 kỹ sư phần mềm, chúng tôi biết những gì cần thiết để vượt qua các cuộc phỏng vấn công nghệ khó khăn nhất. Các cựu sinh viên của chúng tôi liên tục nhận được các ưu đãi đất đai từ các công ty FAANG+. Ưu đãi cao nhất từng nhận được mà một cựu sinh viên IK nhận được là con số khổng lồ 1 đô la. 267 triệu

Tại IK, bạn có cơ hội duy nhất để học hỏi từ những người hướng dẫn chuyên gia đang tuyển dụng các nhà quản lý và lãnh đạo công nghệ tại Google, Facebook, Apple và các công ty công nghệ hàng đầu khác ở Thung lũng Silicon

Bạn muốn hoàn thành cuộc phỏng vấn công nghệ tiếp theo của mình?

Trong bài viết này, chúng tôi sẽ đề cập

  • Hàm getattr[] trong Python là gì và nó làm gì?
  • Hàm getattr[] trong Python. cú pháp
  • Hàm getattr[] trong Python. Ví dụ
  • Câu hỏi thường gặp về hàm getattr[] trong Python

Hàm getattr[] trong Python là gì và nó làm gì?

Hàm getattr[] trong Python là một hàm tích hợp được sử dụng để truy cập giá trị thuộc tính của một đối tượng. Nó cũng được sử dụng để thực thi giá trị mặc định trong trường hợp thuộc tính/khóa không tồn tại. Phương pháp thông thường để truy cập giá trị thuộc tính thường mất ít thời gian hơn getattr[]. Nhưng nếu chúng ta cần sử dụng các giá trị mặc định trong trường hợp thiếu thuộc tính, getattr[] là phù hợp

Hàm getattr[] của Python được sử dụng trong quá trình phát triển web liên quan đến các thuộc tính biểu mẫu tùy chọn. Ngoài ra, nó cũng được sử dụng trong các trường hợp thu thập tính năng Machine Learning, trong đó các tính năng đôi khi bị thiếu trong quá trình thu thập dữ liệu

Hàm getattr[] trong Python. cú pháp


getattr[object, key, defaultValue]

thông số.  

  • vật. Đối tượng có thuộc tính chúng ta cần xử lý
  • Chìa khóa. Một thuộc tính của đối tượng đã cho
  • giá trị mặc định. Giá trị mặc định chúng ta cần in trong trường hợp không tìm thấy thuộc tính

Giá trị trả về

Hàm getattr[] của Python trả về giá trị đối tượng nếu giá trị [thuộc tính] tồn tại hoặc giá trị mặc định nếu thuộc tính không tồn tại.  

Nếu không có thuộc tính cũng như không có giá trị mặc định được chỉ định, getattr[] sẽ ném AttributeError trong Python

Hàm getattr[] trong Python. Ví dụ

Sau đây, chúng ta hãy xem cách bạn có thể sử dụng hàm getattr[] của Python vào lần tới khi bạn cần

Mã số


# Using getattr[] in Python

# For the performance analysis of getattr[] done later in the example
import time
 
# Creating a class to use in the example
class fruit:
	name = "Apple"
	color = "Red"
	weightInGrams = "100"
# Initializing an object of the class fruit

objectFruit1 = fruit[]

# Using getattr[] to print attribute values
print["The name of the fruit is " + getattr[objectFruit1, 'name']]
print["The color of the fruit is " + getattr[objectFruit1, 'color']]

# Using getattr[] giving default value to be used if attribute value does not exist
print["The weightInGrams of the fruit is " + getattr[objectFruit1, 'weightInGrams', "not mentioned"]]
print["The taste of the fruit is " + getattr[objectFruit1, 'taste', "not described"]]
 
# Performance analysis of getattr[] 
getattrBeginTime = time.time[]
print[getattr[objectFruit1, 'name']]
print["Time taken to execute getattr[] = " + str[time.time[] - getattrBeginTime]]
 
# Contrasting the above with the performance of conventional method to get the attribute value
getattrBeginTime2 = time.time[]
print[objectFruit1.name]
print["Time to execute conventional method " + str[time.time[] - getattrBeginTime2]]

đầu ra


The name of the fruit is Apple
The color of the fruit is Red
The weightInGrams of the fruit is 100
The taste of the fruit is not described
Apple
Time taken to execute getattr[] = 9.5367431640625e-07
Apple
Time to execute conventional method 4.76837158203125e-07

Tìm thấy bài viết này hữu ích? .  

Câu hỏi thường gặp về hàm getattr[] trong Python

Q1. Hàm getattr[] làm gì trong Python?

Trong Python, hàm getattr[] lấy một đối tượng, thuộc tính của đối tượng và trả về giá trị của thuộc tính đó nếu nó tồn tại. Nếu giá trị thuộc tính không tồn tại, giá trị mặc định được chỉ định sẽ được trả về

quý 2. Hành vi của getattr[] trong Python trong trường hợp giá trị thuộc tính không tồn tại và giá trị mặc định cũng không được chỉ định là gì?

AttributeError được ném nếu trong trường hợp không có giá trị thuộc tính, getattr[] không nhận được giá trị mặc định làm tham số để sử dụng trong những trường hợp như vậy

Q3. Tại sao chúng ta sử dụng getattr[] trong Python?

Một lý do quan trọng để sử dụng getattr[] trong Python là bạn có thể lấy thủ công tên thuộc tính làm đầu vào từ bảng điều khiển của mình và sử dụng trực tiếp tên thuộc tính dưới dạng chuỗi trong getattr để lấy giá trị. Và trong trường hợp không có thuộc tính, bạn có thể chỉ định một giá trị mặc định, giúp chúng tôi điền vào một số khoảng trống trong dữ liệu của mình

Q4. Bạn có nên sử dụng getattr[] trong Python không?

Nếu bạn cần trả về một giá trị mặc định cho các giá trị vắng mặt, thì đó là trường hợp sử dụng chính của getattr[]. Mặt khác, phương pháp truy cập giá trị trực tiếp, thông thường có thể nhanh hơn

Q5. Getattr[] Python có chậm không?

Có, so với phương thức truyền thống trực tiếp để truy cập một thuộc tính của một đối tượng nhất định, hiệu suất của getattr[] chậm hơn

Sẵn sàng để hoàn thành cuộc phỏng vấn mã hóa tiếp theo của bạn?

Cho dù bạn là một kỹ sư viết mã đang tìm kiếm vị trí nhà phát triển phần mềm hay kỹ sư phần mềm, trưởng nhóm công nghệ hay bạn đang nhắm đến các vị trí quản lý tại các công ty hàng đầu, IK đều cung cấp các khóa học được thiết kế riêng cho nhu cầu của bạn để giúp bạn chuẩn bị cho cuộc phỏng vấn kỹ thuật của mình

Nếu bạn đang tìm kiếm hướng dẫn và trợ giúp để bắt đầu, hãy đăng ký hội thảo trên web MIỄN PHÍ của chúng tôi. Là những người tiên phong trong lĩnh vực chuẩn bị phỏng vấn kỹ thuật, chúng tôi đã đào tạo hàng ngàn kỹ sư phần mềm vượt qua các cuộc phỏng vấn mã hóa khó khăn nhất và tìm được việc làm tại các công ty mơ ước của họ, chẳng hạn như Google, Facebook, Apple, Netflix, Amazon, v.v.

Getattr[] được sử dụng cho l1 là gì?

Hàm getattr[] của Python được sử dụng để truy cập giá trị thuộc tính của một đối tượng và cũng cung cấp tùy chọn thực thi giá trị mặc định trong trường hợp không có khóa. Parameters : obj : The object whose attributes need to be processed. key : The attribute of object.

Setattr[] và Getattr[] dùng để làm gì?

Python setattr[] và getattr[] song hành cùng nhau. Như chúng ta đã thấy getattr[] làm gì; . to assign a new value to an object/instance attribute.

Getattr[] dùng để làm gì để truy cập thuộc tính của đối tượng để xóa một thuộc tính?

Định nghĩa. Python getattr[] là một hàm tích hợp được sử dụng để trả về giá trị thuộc tính của một đối tượng/trường hợp cụ thể . Hàm getattr[] trong Python được sử dụng để lấy giá trị thuộc tính của đối tượng và cũng cung cấp tùy chọn thực thi giá trị mặc định nếu thuộc tính không khả dụng.

Sự khác biệt giữa Getattr và Getattribute là gì?

getattribute. Được sử dụng để lấy một thuộc tính từ một thể hiện. Nó ghi lại mọi nỗ lực truy cập một thuộc tính thể hiện bằng cách sử dụng ký hiệu dấu chấm hoặc hàm tích hợp getattr[]. getattr. Được thực thi dưới dạng tài nguyên cuối cùng khi không tìm thấy thuộc tính trong một đối tượng

Chủ Đề