Computer >> Máy Tính >  >> Lập trình >> Python

Các đối số được truyền bằng giá trị hoặc bằng tham chiếu trong Python như thế nào?

Python sử dụng một cơ chế, được gọi là " Gọi theo đối tượng ", đôi khi còn được gọi là" Gọi theo tham chiếu đối tượng "hoặc" Gọi bằng chia sẻ "

Nếu bạn truyền các đối số không thay đổi như số nguyên, chuỗi hoặc bộ giá trị vào một hàm, thì việc chuyển sẽ hoạt động giống như C tất cả theo giá trị . Sẽ khác, nếu chúng ta truyền các đối số có thể thay đổi.

Tất cả tham số (đối số ) bằng ngôn ngữ Python được chuyển qua tham chiếu . Điều đó có nghĩa là nếu bạn thay đổi thông số đề cập đến trong một hàm, thì thay đổi đó cũng phản ánh lại trong hàm đang gọi.

Ví dụ

student={'Archana':28,'krishna':25,'Ramesh':32,'vineeth':25}
def test(student):
   new={'alok':30,'Nevadan':28}
   student.update(new)
   print("Inside the function",student)
   return
test(student)
print("outside the function:",student)

Đầu ra

Inside the function {'Archana': 28, 'krishna': 25, 'Ramesh': 32, 'vineeth': 25, 'alok': 30, 'Nevadan': 28}
outside the function: {'Archana': 28, 'krishna': 25, 'Ramesh': 32, 'vineeth': 25, 'alok': 30, 'Nevadan': 28}