Trong nhiều tài nguyên tôi thấy "phạm vi" và "không gian tên" được sử dụng thay thế cho nhau, điều này có vẻ hơi khó hiểu vì chúng có nghĩa là những thứ khác nhau.
- Phạm vi xác định vùng mã nơi có sẵn tên.
- Quy tắc LEGB xác định cách nhìn tên.
- Không gian tên là một nơi mà bạn tìm kiếm tên.
Sau đó tôi đọc:
- "Tên được liên kết với một không gian tên theo nơi chúng được gán ..." (mà tôi tin là thỏa thuận với phạm vi trong phạm vi từ vựng).
- "Các chức năng thêm một lớp không gian tên bổ sung cho các chương trình của bạn" [ ref. ] (họ không thêm phạm vi địa phương bổ sung à?)
- "tất cả các tên được gán bên trong một định nghĩa hàm được đặt trong phạm vi cục bộ (không gian tên được liên kết với lệnh gọi hàm)."
- "phạm vi toàn cầu, đó là một không gian tên trong đó các biến được tạo (được gán) ở cấp cao nhất của tệp mô-đun trực tiếp."
* tất cả các trích dẫn là từ việc học python phiên bản 5 ch17
Các không gian tên trong Python có cách phạm vi được thực hiện không? Họ là những điều tương tự? Bất cứ ai có thể khai sáng cho tôi?