Sự khác biệt giữa biến toàn cầu và không cục bộ trong python là gì?
Phạm vi được định nghĩa là một khu vực có thể truy cập các biến đủ điều kiện. Để thực thi bảo mật, ngôn ngữ lập trình cung cấp phương tiện để người dùng có thể xác định rõ ràng các phạm vi này Show Điều quan trọng là phải hiểu việc sử dụng phạm vi và cách xử lý chúng. Trong bài viết này, chúng ta sẽ xem các phạm vi có sẵn trong Python là gì và cách làm việc với chúng 1. Phạm vi toàn cầu¶Bất kỳ biến nào được định nghĩa bên ngoài hàm không lồng nhau được gọi là biến toàn cục. Như tên cho thấy, các biến toàn cục có thể được truy cập ở bất cứ đâu Ví dụ. ¶
đầu ra
Khi một hàm cố gắng thao tác các biến toàn cục, lỗi UnboundLocalError sẽ xuất hiện. Để khắc phục điều này, biến toàn cục được xác định lại bên trong hàm bằng cách sử dụng từ khóa 2. Bằng cách này, người dùng có thể sửa đổi các biến toàn cục mà không gặp lỗiVí dụ. ¶Không có từ khóa toàn cầu
đầu ra
Với từ khóa toàn cầu
đầu ra
2. Phạm vi cục bộ¶Theo mặc định, các biến được xác định bên trong một hàm có phạm vi cục bộ. Nó ngụ ý rằng các biến phạm vi cục bộ chỉ có thể được truy cập bên trong hàm cha và không nơi nào khác Các biến cục bộ bị hủy ngay khi phạm vi không còn tồn tại Ví dụ. ¶
đầu ra ________số 8 3. Phạm vi phi cục bộ¶Các hàm lồng nhau giới thiệu một loại phạm vi mới được gọi là phạm vi 3. Khi một hàm lồng nhau muốn chia sẻ phạm vi cục bộ của các hàm cha, từ khóa 3 được sử dụng Trong trường hợp này gun() đã khởi tạo biến mới var1 trong phạm vi của gun. var1 với giá trị 10 và var1 với giá trị 20 là hai biến khác nhau và duy nhất. var1 giữ giá trị 20 sẽ được truy cập mặc định trong gun() Xem xét ví dụ trước, chúng ta biết rằng các khẩu súng sẽ khởi tạo một biến mới var1 trong phạm vi của chính nó. Nhưng khi thực hiện thì nó chưa tìm được giá trị của var1, Python3 0 1 2 3 10 11
2 0 14 15 08 15 10 15 12 15 14 15 16 15 3 10 3 12 11 15 16____117
2 18 19đầu ra. 1
Trong ví dụ này, trước khi khởi tạo var1 trong gun(). Chúng tôi đã nói rõ ràng với Python rằng, đừng khởi tạo một biến mới, thay vào đó hãy truy cập var1 đã có trên dòng 2. sử dụng từ khóa nonlocal Vì vậy, khi trình thông dịch thực hiện phép cộng, nó sẽ truy cập giá trị 10(đã có) và tránh được lỗi Bây giờ chúng ta hãy chuyển sang từ khóa toàn cầu. Hãy xem xét các ví dụ được đưa ra dưới đây Python3 3 10 11 0 1 2 35 36 2 16____639 100 101
19đầu ra. 5
Biến toàn cục var1 sẽ được đọc hoặc truy cập đơn giản bên trong hàm fun() Python3 3 10 11 0 1 2 109 2____1111 2 3 10 14 2 16____639 100 101 2 16____639 124 125 18 19
19_______116____639____1100 101 16______639____1124 125 18 19đầu ra. 1
Một biến mới var1 sẽ được khởi tạo trong fun(). Biến toàn cục var1 sẽ khác với biến cục bộ var1 của fun(). Theo mặc định trong fun(), các biến cục bộ sẽ được truy cập Sự khác biệt giữa biến toàn cục và biến cục bộ trong Python là gì?Sự khác biệt giữa biến cục bộ và biến toàn cục là gì? . Global variables have the entire program as their scope, whereas local variables have only the function in which they are defined as their scope.
Biến cục bộ không cục bộ và cục bộ trong Python là gì?Trong python, các biến không cục bộ đề cập đến tất cả các biến được khai báo trong các hàm lồng nhau . Phạm vi cục bộ của một biến không cục bộ không được xác định. Về cơ bản, điều này có nghĩa là biến không tồn tại trong phạm vi cục bộ cũng như trong phạm vi toàn cầu.
Sự khác biệt giữa các biến cục bộ và toàn cầu là gì?Sự khác biệt chính giữa biến Toàn cầu và biến cục bộ là các biến toàn cục có thể được truy cập trên toàn cầu trong toàn bộ chương trình, trong khi các biến cục bộ chỉ có thể được truy cập trong hàm hoặc khối mà chúng được xác định.
Biến không cục bộ trong Python là gì?Từ khóa nonlocal là được sử dụng để làm việc với các biến bên trong các hàm lồng nhau, trong đó biến không được thuộc về hàm bên trong . Sử dụng từ khóa nonlocal để khai báo rằng biến không cục bộ. |