Hướng dẫn how do you declare a global variable in multiple functions in python? - làm thế nào để bạn khai báo một biến toàn cục trong nhiều hàm trong python?

Từ khóa toàn cầu nói với trình phân tích cú pháp trên mỗi hàm rằng một tên không nên được coi là cục bộ khi được gán cho.per function that a name shouldn't be treated as a local when assigned to.

Thông thường, bất kỳ tên nào bạn liên kết trong một hàm [gán cho, sử dụng làm đối số hàm, sử dụng trong một câu lệnh nhập trong phần thân hàm, v.v.] được trình phân tích cú pháp xem là cục bộ. any name you bind in a function [assign to, use as a function argument, use in an import statement in the function body, etc.] is seen by the parser as a local.

Bằng cách sử dụng từ khóa global, thay vào đó, trình phân tích cú pháp sẽ tạo mã byte sẽ tìm kiếm một tên toàn cầu thay thế. Nếu bạn có nhiều chức năng gán cho toàn cầu, bạn sẽ cần khai báo tên đó global trong tất cả các chức năng đó. Sau đó, họ sẽ tìm kiếm tên trong không gian tên toàn cầu.

Xem tài liệu câu lệnh global:

Tuyên bố global là một tuyên bố giữ cho toàn bộ khối mã hiện tại. Nó có nghĩa là các định danh được liệt kê sẽ được hiểu là toàn cầu.

và tài liệu đặt tên và ràng buộc:

Nếu một tên bị ràng buộc trong một khối, thì đó là một biến cục bộ của khối đó. Nếu một tên bị ràng buộc ở cấp độ mô -đun, thì đó là một biến toàn cầu. [Các biến của khối mã mô -đun là cục bộ và toàn cầu.] Nếu một biến được sử dụng trong khối mã nhưng không được xác định ở đó, thì đó là một biến miễn phí.

Python cũng sử dụng các biến để giữ dữ liệu. Họ cũng có một tên và một loại; Tuy nhiên, trong Python, bạn không phải khai báo loại dữ liệu. Thay vào đó, bạn có thể tạo một biến Python như sau.

class_number = 4;

Trong ví dụ trên, biến 'class_number' có giá trị là 4; Nó là một loại dữ liệu số nguyên. Và không giống như các ngôn ngữ lập trình khác, bạn không cần phải khai báo một biến mà không khởi tạo. & NBSP;

Phạm vi biến trong Python có nghĩa là gì?

Phạm vi biến có nghĩa là khu vực trong đó các phần của chương trình có thể truy cập biến. Có bốn phạm vi thay đổi trong Python:

  1. Địa phương
  2. Toàn cầu
  3. Kèm theo
  4. Built-in

Trong bài viết này, bạn sẽ tìm hiểu hai loại đầu tiên. Bạn sẽ học cách tạo các biến Python với phạm vi địa phương và toàn cầu.

Biến toàn cầu trong Python là gì?

Trong thế giới lập trình, một biến toàn cầu về Python có nghĩa là có phạm vi trong suốt chương trình, tức là, giá trị biến toàn cầu có thể truy cập trong suốt chương trình trừ khi bị che mờ. & NBSP; & NBSP;

Một biến toàn cầu trong Python thường được tuyên bố là đỉnh của chương trình. Nói cách khác, các biến được khai báo bên ngoài hàm được gọi là biến toàn cầu.

Bạn có thể truy cập các biến toàn cầu trong python cả bên trong và bên ngoài hàm. & Nbsp; & nbsp;

Syntax:

X = “SampleGlobalValue”

Def fn1 []:

Làm thế nào để tạo các biến toàn cầu trong Python?

Để tạo một biến toàn cầu trong Python, bạn cần khai báo biến bên ngoài hàm hoặc trong phạm vi toàn cầu.

Example: 

Output:

 

Làm thế nào để truy cập biến toàn cầu bên trong và bên ngoài chức năng?

Example:

 

Output:

 

Trong ví dụ được mô tả ở trên, bạn đã thấy một biến toàn cầu được khai báo và truy cập cả bên trong và bên ngoài hàm. & NBSP; & NBSP;

Vì vậy, bạn đang truy cập giá trị cả bên trong và bên ngoài hàm, điều này là tốt, nhưng điều gì xảy ra nếu bạn cố gắng sửa đổi giá trị biến phạm vi toàn cầu bên trong một hàm? & NBSP;

Xem ví dụ được đề cập dưới đây để hiểu tốt hơn. & NBSP;

Example:

 

Output:

 

Như nó là hiển nhiên, điều này ném một lỗi. Khi bạn cố gắng sửa đổi giá trị biến toàn cầu bên trong một hàm, nó sẽ ném không liên kết, bởi vì trong khi sửa đổi Python xử lý X như một biến cục bộ, nhưng X cũng không được xác định bên trong hàm [myfunc []].

Đó là nơi mà từ khóa toàn cầu đi vào hình ảnh. Bạn sẽ thấy việc sử dụng các từ khóa toàn cầu trong các phần sau.

Làm thế nào để tạo các biến với phạm vi cục bộ trong Python với các ví dụ?

Phạm vi của biến cục bộ là một hàm mà bạn đã khai báo nó. Để truy cập biến, bạn phải gọi hàm tương ứng. Ví dụ: bạn có thể tạo một biến cục bộ như hình dưới đây.

Def Superfunc []

#Xác định một chức năng

x = tuyệt vời

#Xác định một biến cục bộ

in ["Python là" + x]

#truy cập một biến cục bộ

superfunc[]

#calling hàm

Từ khóa toàn cầu

Từ khóa toàn cầu được sử dụng để sửa đổi biến toàn cầu ngoài phạm vi và ý nghĩa hiện tại của nó. Nó được sử dụng để thực hiện các thay đổi trong biến toàn cầu trong bối cảnh địa phương. Từ khóa ’toàn cầu cũng được sử dụng để tạo hoặc khai báo một biến toàn cầu bên trong một hàm. & Nbsp; & nbsp;

Thông thường, khi bạn tạo một biến bên trong một hàm [một biến cục bộ], nó chỉ có thể được sử dụng trong hàm đó. Đó là nơi mà từ khóa toàn cầu xuất hiện trong vở kịch, giúp tạo ra các biến toàn cầu bên trong hàm và có thể truy cập được trong phạm vi toàn cầu.

Syntax:

Def func []:

Biến toàn cầu

Ví dụ 1:

Sử dụng một từ khóa toàn cầu để tạo một biến trong phạm vi toàn cầu.

 

Output:

 

Ví dụ 2:

Sử dụng từ khóa toàn cầu để thay đổi giá trị của biến toàn cầu bên trong hàm.

 

Output:

 

Bạn đã thấy các từ khóa toàn cầu là gì, các ví dụ của họ và cách sử dụng các từ khóa toàn cầu. Nhưng Python có một số quy tắc cơ bản để sử dụng từ khóa ‘toàn cầu.

Hãy cùng xem toàn cầu trong các chức năng lồng nhau.

Khi bạn khai báo một biến từ khóa toàn cầu bên trong hàm lồng nhau và khi bạn thay đổi biến từ khóa toàn cầu bên trong hàm lồng nhau, nó sẽ phản ánh bên ngoài phạm vi cục bộ, vì nó được sử dụng làm từ khóa toàn cầu.

Example:

Hãy xem một ví dụ cho toàn cầu trong các chức năng lồng nhau.

 

Output:

 

Bạn có thể thấy đầu ra ở trên cho toàn cầu trong các chức năng lồng nhau. Nhưng có lẽ một lời giải thích nhanh chóng sẽ giúp hiểu rõ hơn.

Bạn đã khai báo biến toàn cầu bên trong hàm bên trong [], được lồng bên trong hàm chính [].

Trước và sau khi gọi bên trong [], biến 'integ' lấy giá trị của biến cục bộ chính, tức là integ = 20. bên ngoài hàm chính [], biến 'integ' lấy giá trị của từ khóa toàn cầu được khai báo bên trong hàm bên trong [], tức là, integ = 20 Khi bạn sử dụng từ khóa toàn cầu bên trong phạm vi cục bộ hàm bên trong []. Nếu bạn thực hiện bất kỳ thay đổi nào bên trong biến từ khóa toàn cầu trong bên trong [], sẽ phản ánh bên ngoài phạm vi, như một hành vi của từ khóa toàn cầu.

Các quy tắc cơ bản của từ khóa ‘toàn cầu như sau:

  • Khi bạn tạo một biến bên trong hàm, nó nằm trong bối cảnh cục bộ theo mặc định
  • Khi bạn tạo hoặc xác định một biến bên ngoài hàm, theo mặc định, đó là bối cảnh toàn cầu, không cần phải có từ khóa toàn cầu ở đây
  • Các từ khóa toàn cầu có thể được sử dụng để đọc hoặc sửa đổi biến toàn cầu bên trong hàm
  • Sử dụng từ khóa toàn cầu bên ngoài chức năng không sử dụng hoặc không có hiệu lực.

Làm thế nào bạn có thể tạo các biến bằng phạm vi toàn cầu trong Python với các ví dụ?

Bạn có thể tạo một biến với phạm vi toàn cầu bằng cách khởi tạo bên ngoài tất cả các chức năng trong chương trình Python. Và bạn có thể truy cập biến từ bất cứ nơi nào trong chương trình Python. & NBSP;

Tạo một biến toàn cầu là đơn giản; Bạn có thể làm điều đó như sau.

x = "tuyệt vời"

#Xác định một biến toàn cầu

def wonderfunc []:

#Declared một hàm

in ["Python là" + x]

#truy cập một biến cục bộ

wonderfunc[]

#calling hàm

Từ khóa toàn cầu

Từ khóa toàn cầu được sử dụng để sửa đổi biến toàn cầu ngoài phạm vi và ý nghĩa hiện tại của nó. Nó được sử dụng để thực hiện các thay đổi trong biến toàn cầu trong bối cảnh địa phương. Từ khóa ’toàn cầu cũng được sử dụng để tạo hoặc khai báo một biến toàn cầu bên trong một hàm. & Nbsp; & nbsp;

Thông thường, khi bạn tạo một biến bên trong một hàm [một biến cục bộ], nó chỉ có thể được sử dụng trong hàm đó. Đó là nơi mà từ khóa toàn cầu xuất hiện trong vở kịch, giúp tạo ra các biến toàn cầu bên trong hàm và có thể truy cập được trong phạm vi toàn cầu.

x = 5

#initializing một biến toàn cầu

Def Life []

#Xác định một chức năng

Toàn cầu x

#sử dụng từ khóa toàn cầu & nbsp;

x = x + 2

#Thay đổi biến toàn cầu

life[]

#calling hàm

print[x]

#cacting Biến toàn cầu

Các biến cục bộ

Ví dụ sau đây cho thấy một sai lầm. & Nbsp;

Ví dụ 1: Truy cập biến cục bộ bên ngoài phạm vi

def loc [] & nbsp;

#defining loc [] hàm

y = "địa phương"

# khai báo y tại địa phương

loc[]

# Gọi hàm loc []

print[y]

# Truy cập biến Y

Trong chương trình trên, bạn đang cố gắng truy cập 'y' được xác định trong hàm loc []. Và dòng in [y] sẽ cung cấp cho bạn một lỗi tên: tên 'y' không được xác định. & Nbsp;

Ví dụ sau đây cho thấy cách viết lại chương trình trên.

Ví dụ 2: Tạo một biến cục bộ

def loc []

#Xác định chức năng

y = "địa phương"

# khai báo y tại địa phương

print[y]

# Gọi hàm loc []

loc[]

# Truy cập biến Y

Trong chương trình trên, bạn đang cố gắng truy cập 'y' được xác định trong hàm loc []. Và dòng in [y] sẽ cung cấp cho bạn một lỗi tên: tên 'y' không được xác định. & Nbsp;

Ví dụ sau đây cho thấy cách viết lại chương trình trên.

Ví dụ 2: Tạo một biến cục bộ

def loc []

#initializing một biến toàn cầu

#Xác định chức năng

# Khai báo biến cục bộ

#truy cập vào biến cục bộ

#calling một chức năng

Các biến toàn cầu và địa phương

Vì bạn không thể truy cập một biến cục bộ từ bên ngoài một hàm, không quan trọng nếu các biến toàn cầu và cục bộ có cùng tên. Dưới đây bạn có thể tìm thấy một ví dụ trong đó có hai biến. Một là toàn cầu, và cái kia là địa phương. Cả hai đều có cùng tên. & NBSP;

man[]

Ví dụ1: Biến toàn cầu và biến cục bộ cùng tên

x = 5; & nbsp;

Def Man []:

#Xác định một người đàn ông chức năng []

x = 4

#initializing một biến cục bộ

Example:

 

Output:

 

in ["cục bộ x:", x] & nbsp;

# Truy cập một biến cục bộ

#Đoạn chức năng người đàn ông

In ["Toàn cầu X:", X]

#truy cập một biến cục bộ

Example:

 

Output:

 

Explanation:

Trong ví dụ trên, hàm in trong hàm man [] truy cập biến cục bộ x với giá trị là 4. và hàm in bên ngoài truy cập biến cục bộ với giá trị là 5. & nbsp; & nbsp;

Sự khác biệt giữa các biến toàn cầu và địa phương

Hãy cho chúng tôi xem một ví dụ về cách các biến toàn cầu và cục bộ hoạt động trong cùng một mã.

Giải trình:

Ở đây trong chương trình ở trên, bạn đã tuyên bố X là toàn cầu và y là một biến cục bộ trong cùng một chương trình. Sau đó, nó đã cố gắng sửa đổi biến toàn cầu bằng cách sử dụng từ khóa toàn cầu trong hàm cục bộ và in cả GX và LY.

Khi bạn gọi Function1 [], giá trị của GX đã trở thành toàn cầu toàn cầu. Khi bạn đã cố gắng sửa đổi thành GX*2, nó đã in ‘Toàn cầu hai lần. Sau đó, bạn đã in biến LY cục bộ, hiển thị giá trị biến cục bộ, tức là, một lần nữa ’cục bộ.

Sự khác biệt giữa các biến toàn cầu và phi địa phương

Có bất kỳ câu hỏi cho chúng tôi?Để lại cho họ trong phần bình luận của bài viết này, và các chuyên gia của chúng tôi sẽ liên hệ lại với bạn về họ, càng sớm càng tốt!

Làm thế nào để bạn tuyên bố một biến toàn cầu trong Python?

Thông thường, khi bạn tạo một biến bên trong một hàm, biến đó là cục bộ và chỉ có thể được sử dụng bên trong hàm đó.Để tạo một biến toàn cầu bên trong một hàm, bạn có thể sử dụng từ khóa toàn cầu.use the global keyword.

Làm thế nào để bạn chuyển một biến toàn cầu cho một hàm trong Python?

Sử dụng từ khóa toàn cầu † để sửa đổi biến toàn cầu bên trong một hàm.Nếu chức năng của bạn có một biến cục bộ có cùng tên với biến toàn cầu và bạn muốn sửa đổi chức năng biến toàn cầu bên trong thì hãy sử dụng từ khóa 'toàn cầu' trước tên biến khi bắt đầu chức năng, tức là.. If your function has a local variable with same name as global variable and you want to modify the global variable inside function then use 'global' keyword before the variable name at start of function i.e.

Làm thế nào để bạn gán một giá trị cho một biến toàn cầu trong một hàm?

Có hai cách để khai báo một biến trên toàn cầu: khai báo một biến bên ngoài các chức năng.Gán giá trị cho một biến bên trong một hàm mà không cần khai báo nó bằng cách sử dụng từ khóa VAR VAR.Assign value to a variable inside a function without declaring it using “var” keyword.

Bài Viết Liên Quan

Chủ Đề