Câu hỏi phỏng vấn Python
Câu hỏi

Câu lệnh nonlocal trong Python 3.0 để làm gì?

Câu trả lời

Trong Python 3.0 trở lên, câu lệnh nonlocal được sử dụng để làm việc với các biến trong các phạm vi bao quanh (enclosing scopes), nhưng không phải là biến toàn cục (global) hoặc biến cục bộ (local) trong hàm hiện tại. Câu lệnh nonlocal cho phép bạn gán giá trị cho một biến trong phạm vi bao quanh nhất mà không phải là phạm vi toàn cục.

Tại sao sử dụng nonlocal?

  • Sửa đổi biến trong phạm vi bao quanh: Khi bạn muốn sửa đổi một biến từ một phạm vi bao quanh trong một hàm lồng nhau, mà không tạo ra một biến cục bộ mới trong hàm đó.
  • Tránh tạo biến toàn cục: Giúp tránh việc sử dụng biến toàn cục khi bạn muốn chia sẻ biến giữa các hàm lồng nhau.

Ví dụ:

python Copy
def outer():
    x = "local"
    def inn...
middle

middle

Gợi ý câu hỏi phỏng vấn

expert

Global Interpreter Lock (GIL) là gì và tại sao nó lại là một vấn đề?

middle

Virtualenvs trong Python là gì?

senior

Monkey Patching là gì và có nên sử dụng nó không?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào