icantech
Lập trình Python
2181
08/11/2023

Tìm hiểu về biến global trong Python

Biến là đại lượng được đặt tên, dùng để lưu trữ giá trị và giá trị có thể được thay đổi trong quá trình thực hiện chương trình. Trong Python, mỗi biến là một con trỏ chỉ đến ô nhớ chứa giá trị đã được gán cho biến đó. Có ba loại biến quan trọng đó là biến toàn cục (global variables), biến cục bộ (local variables), và biến nonlocal. Trong bài viết này, hãy cùng ICANTECH tìm hiểu về biến global trong Python nhé!

1. Biến toàn cục là gì?

Biến toàn cục (Global Variables) là biến mà bạn định nghĩa ở phạm vi cao nhất trong chương trình, và nó có thể được truy cập từ bất kỳ đâu trong chương trình, bao gồm cả các hàm hoặc lớp.

Global-Variables

Để định nghĩa một biến toàn cục, bạn chỉ cần gán giá trị cho biến mà không đặt nó trong bất kỳ hàm nào.

Ví dụ:

global_var = 10

def some_function():

    print(global_var)

some_function()  # In ra giá trị của global_var

Kết quả:

10

Dưới đây là một ví dụ tổng hợp sử dụng biến toàn cục, biến cục bộ và biến nonlocal trong Python:

global_var = 10  # Biến toàn cục

def outer_function():

    outer_var = 5  # Biến cục bộ cho outer_function

    def inner_function():

        nonlocal outer_var  # Biến nonlocal cho outer_var

        local_var = 15  # Biến cục bộ cho inner_function

        outer_var = outer_var + local_var  # Thay đổi outer_var bằng outer_var + local_var

        global global_var  # Truy cập biến toàn cục global_var

        global_var = global_var + 5  # Thay đổi global_var bằng global_var + 5

    inner_function()

    print("inner_function: outer_var =", outer_var)  # In giá trị outer_var sau khi thay đổi trong inner_function

outer_function()

print("outer_function: global_var =", global_var)  # In giá trị global_var sau khi thay đổi trong inner_function

Kết quả:

inner_function: outer_var = 20

outer_function: global_var = 15

Trong ví dụ trên có các biến, bao gồm:

  • global_var là biến toàn cục (global), nó có thể được truy cập từ bất kỳ hàm nào.
  • outer_var là biến cục bộ (local) trong outer_function và được sử dụng ở cả inner_function với từ khóa nonlocal để thay đổi giá trị.

Khi gọi outer_function, inner_function được gọi bên trong và thay đổi giá trị của outer_var và global_var, dẫn đến kết quả được in ra như trên.

2. Quy tắc sử dụng biến global trong Python

“Global Python là gì? Là câu hỏi mà rất nhiều người thắc mắc khi tìm hiểu ngôn ngữ Python. Biến global trong Python được sử dụng để chỉ ra rằng biến được định nghĩa hoặc thay đổi trong một phạm vi cục bộ (như bên trong một hàm) sẽ trở thành biến toàn cục, có thể truy cập từ bất kỳ đâu trong chương trình. Nói cách khác, từ khoá "global" đưa biến vào phạm vi toàn cục thay vì giữ nó trong phạm vi cục bộ.

Global-Variables

Dưới đây là một ví dụ về cách khai báo biến global trong Python:

global_var = 10  # Biến toàn cục

def modify_global_variable():

    global global_var  # Sử dụng từ khoá global để thay đổi biến toàn cục

    global_var = 20

modify_global_variable()  # Gọi hàm để thay đổi giá trị của biến toàn cục

print(global_var)  # In giá trị của biến toàn cục sau khi thay đổi

Kết quả:

20

Trong Python, các quy tắc về từ khóa global bao gồm:

  • "global" là một từ khóa được sử dụng để khai báo biến ở mức toàn cục, nghĩa là biến được định nghĩa bên ngoài các hàm và có thể truy cập từ bất kỳ đâu trong chương trình.
  • Khi bạn sử dụng từ khóa "global" trong một hàm để chỉ định biến là biến toàn cục, bạn có thể thay đổi giá trị của biến toàn cục từ bên trong hàm.
  • Một biến toàn cục có thể được truy cập từ bất kỳ hàm nào trong chương trình, miễn là biến đó đã được khai báo là biến toàn cục bằng cách sử dụng từ khóa "global".
  • Việc sử dụng biến toàn cục nên được thực hiện cẩn thận để tránh sự mơ hồ và sự trùng lặp trong chương trình của chương trình.
  • Không nên sử dụng quá nhiều biến toàn cục mà thay vào đó nên ưu tiên sử dụng tham số và biến cục bộ trong các hàm để làm cho chương trình dễ hiểu và bảo quản.

3. Lời Kết

Việc khai báo trùng tên ở biến toàn cục và biến cục bộ là một trong những vấn đề phức tạp trong lập trình Python. Điều quan trọng là sử dụng biến một cách hợp lý. Đối với biến toàn cục, nên sử dụng chúng một cách cẩn thận và tránh xung đột với biến cục bộ trong hàm bằng cách sử dụng tham số truyền vào. Hi vọng bài viết trên của ICANTECH sẽ giúp bạn hiểu thêm về biến global trong Python cũng như sự khác biệt giữa biến toàn cục và biến cục bộ và biết cách sử dụng chúng một cách thích hợp. Chúc các bạn thành công!

Nếu bạn đang quan tâm đến học lập trình thì hãy tham khảo ngay các khóa học lập trình online tại ICANTECH nhé

Nguồn ảnh: ICANTECH.

Share
Tags
Lập trình Python

Bài tương tự