Phạm vi của biến
Không phải tất cả các biến trong chương trình đều có thể truy cập ở tất cả các vị trí trong chương trình đó. Điều này phụ thuộc vào nơi bạn đã khai báo một biến.
Phạm vi của một biến xác định phần của chương trình mà bạn có thể truy cập một định danh cụ thể. Có hai phạm vi cơ bản của biến trong Python −
- Biến toàn cục
- Biến cục bộ
Biến toàn cục và cục bộ
Trong lập trình, biến toàn cục (global variable) là biến được khai báo ở ngoài phạm vi của một hàm hoặc lớp và có thể truy cập từ bất kỳ đâu trong chương trình. Biến toàn cục được khởi tạo bên ngoài hàm và có thể được sử dụng trong các hàm khác.
Biến toàn cục được khởi tạo bên ngoài hàm và có thể được sử dụng trong các hàm khác.
Ví dụ:
x = 10
def func():
print(x)
func() # Output: 10
Trong đoạn code trên, biến x được khai báo ở ngoài phạm vi của hàm func(). Do đó, biến x được coi là biến toàn cục và có thể truy cập từ bên trong hàm.
Một biến được khai báo trong một hàm được gọi là biến cục bộ (local variable). Biến cục bộ chỉ có thể truy cập được trong phạm vi của hàm mà nó được khai báo và sẽ bị hủy khi hàm kết thúc.
Ví dụ:
def func():
x = 10
print(x)
func() # Output: 10
print(x) # Lỗi: NameError: name 'x' is not defined
Trong đoạn code trên, biến x được khai báo trong hàm func(). Do đó, biến x được coi là biến cục bộ và chỉ có thể truy cập được từ bên trong hàm. Khi hàm kết thúc, biến x sẽ bị hủy và không thể truy cập được từ bên ngoài hàm.
Sau đây là một ví dụ khác về biến toàn cục và biến cục bộ:
total = 0 # Đây là biến toàn cục
# Hàm này có thể truy cập biến toàn cục
def sum(arg1, arg2):
# Tính tổng hai tham số và trả lại kết quả."
total = arg1 + arg2; # total ở đây là biến cục bộ
print("Bên trong hàm : ", total)
return total
# Gọi hàm sum
sum(10, 20)
print("Bên ngoài hàm : ", total)
Khi mã trên được thực thi, nó sẽ tạo ra kết quả sau:
Bên trong hàm : 30
Bên ngoài hàm : 0
Trong thực tế, biến toàn cục và biến cục bộ được sử dụng để lưu trữ giá trị và chuyển đổi thông tin trong chương trình. Dưới đây là bảng so sánh ứng dụng của biến toàn cục và biến cục bộ trong chương trình:
Ứng dụng | Biến toàn cục | Biến cục bộ |
---|---|---|
Lưu trữ giá trị và chuyển đổi thông tin trong chương trình | Có thể được sử dụng để lưu trữ các thiết lập cấu hình trong chương trình | Có thể được sử dụng để lưu trữ các giá trị trung gian và tính toán trong hàm |
Truyền thông tin giữa các hàm | Có thể được sử dụng để lưu trữ thông tin đăng nhập của người dùng và chia sẻ giữa các hàm khác nhau trong chương trình | Không được sử dụng để truyền thông tin giữa các hàm |
Giảm thiểu khả năng xảy ra lỗi trong chương trình | Không giảm thiểu khả năng xảy ra lỗi trong chương trình | Có thể giảm thiểu khả năng xảy ra lỗi trong chương trình |
Đảm bảo tính nhất quán trong chương trình | Có thể được sử dụng để đảm bảo tính nhất quán của thông tin trên toàn bộ chương trình | Không được sử dụng để đảm bảo tính nhất quán trong chương trình |
Tóm lại, biến toàn cục và biến cục bộ đều có những ứng dụng khác nhau trong chương trình. Biến toàn cục thường được sử dụng để lưu trữ các thiết lập cấu hình và chia sẻ thông tin giữa các hàm khác nhau trong chương trình. Trong khi đó, biến cục bộ được sử dụng để lưu trữ các giá trị trung gian và tính toán trong hàm, giảm thiểu khả năng xảy ra lỗi và đảm bảo tính nhất quán trong chương trình.
Bình luận