Thay đổi biến toàn cục Python
Trước khi chúng ta tìm hiểu về từ khóa Show
Truy cập và sửa đổi biến toàn cục PythonTrước tiên, hãy thử truy cập một biến toàn cục từ bên trong hàm,
Ở đây, chúng ta có thể thấy rằng chúng ta đã truy cập một biến toàn cục từ bên trong hàm Tuy nhiên, nếu chúng ta cố gắng sửa đổi biến toàn cục từ bên trong một hàm như
đầu ra UnboundLocalError: local variable 'c' referenced before assignment Điều này là do chúng ta chỉ có thể truy cập biến toàn cục nhưng không thể sửa đổi nó từ bên trong hàm Giải pháp cho việc này là sử dụng từ khóa Ví dụ. Thay đổi biến toàn cầu từ bên trong một hàm bằng cách sử dụng toàn cầu
Trong ví dụ trên, chúng ta đã định nghĩa c là từ khóa 0Sau đó, chúng ta đã tăng biến c lên 2, i. e 1Như chúng ta có thể thấy khi gọi 0, giá trị của biến toàn cục c được sửa đổi từ 1 thành 3Toàn cầu trong các hàm lồng nhauTrong Python, chúng ta cũng có thể sử dụng từ khóa
đầu ra ________số 8_______Trong ví dụ trên, chúng ta đã khai báo một biến toàn cục bên trong hàm lồng nhau 4Bên trong 5, num không có tác dụng với từ khóa global Trước và sau khi gọi 4, num nhận giá trị của biến cục bộ i. e 8Bên ngoài hàm 5, num sẽ nhận giá trị được xác định trong hàm 4 i. e UnboundLocalError: local variable 'c' referenced before assignment1 Điều này là do chúng ta đã sử dụng từ khóa 4 (phạm vi cục bộ)Vì vậy, nếu chúng tôi thực hiện bất kỳ thay đổi nào bên trong hàm 4, những thay đổi đó sẽ xuất hiện bên ngoài phạm vi cục bộ, tôi. e. 5 Để bắt đầu, bạn sẽ học cách khai báo biến trong Python và thuật ngữ 'phạm vi biến' thực sự có nghĩa là gì Sau đó, bạn sẽ tìm hiểu sự khác biệt giữa biến cục bộ và biến toàn cục, đồng thời hiểu cách xác định biến toàn cục và cách sử dụng từ khóa 0Đây là những gì chúng tôi sẽ đề cập Biến trong Python là gì và bạn tạo chúng như thế nào?Bạn có thể nghĩ về các biến như là nơi lưu trữ Chúng là các thùng lưu trữ để chứa dữ liệu, thông tin và giá trị mà bạn muốn lưu vào bộ nhớ của máy tính. Sau đó, bạn có thể tham khảo hoặc thậm chí thao tác chúng tại một số thời điểm trong suốt vòng đời của chương trình Một biến có một tên tượng trưng và bạn có thể coi tên đó là nhãn trên bộ chứa lưu trữ đóng vai trò là mã định danh của nó Tên biến sẽ là một tham chiếu và con trỏ tới dữ liệu được lưu trữ bên trong nó. Vì vậy, không cần phải nhớ chi tiết dữ liệu và thông tin của bạn – bạn chỉ cần tham chiếu tên biến chứa dữ liệu và thông tin đó Khi đặt tên cho một biến, hãy đảm bảo rằng tên đó mô tả được dữ liệu mà nó chứa. Tên biến cần phải rõ ràng và dễ hiểu cho cả bản thân bạn trong tương lai và các nhà phát triển khác mà bạn có thể đang làm việc cùng Bây giờ, hãy xem cách thực sự tạo một biến trong Python Khi khai báo biến trong Python, bạn không cần chỉ định kiểu dữ liệu của chúng Ví dụ, trong ngôn ngữ lập trình C, bạn phải đề cập rõ ràng loại dữ liệu mà biến sẽ chứa Vì vậy, nếu bạn muốn lưu trữ tuổi của mình là một số nguyên hoặc kiểu 2, đây là điều bạn sẽ phải làm trong C
Tuy nhiên, đây là cách bạn sẽ viết ở trên bằng Python
Tên biến luôn ở phía bên trái và giá trị bạn muốn gán nằm ở phía bên phải sau toán tử gán Hãy nhớ rằng bạn có thể thay đổi giá trị của các biến trong suốt vòng đời của chương trình
Bạn giữ nguyên tên biến, 3, nhưng chỉ thay đổi giá trị từ 4 thành 5Phạm vi biến trong Python có nghĩa là gì?Phạm vi biến đề cập đến các phần và ranh giới của chương trình Python nơi biến có sẵn, có thể truy cập và hiển thị Có bốn loại phạm vi cho các biến Python, còn được gọi là quy tắc LEGB
Trong phần còn lại của bài viết này, bạn sẽ tập trung vào việc tìm hiểu về cách tạo biến với phạm vi toàn cục và bạn sẽ hiểu sự khác biệt giữa phạm vi biến cục bộ và biến toàn cầu Cách tạo biến với phạm vi cục bộ trong PythonCác biến được xác định bên trong phần thân của hàm có phạm vi cục bộ, có nghĩa là chúng chỉ có thể truy cập được trong hàm cụ thể đó. Nói cách khác, chúng là 'cục bộ' đối với chức năng đó Bạn chỉ có thể truy cập một biến cục bộ bằng cách gọi hàm
Hãy xem điều gì sẽ xảy ra khi tôi cố gắng truy cập biến đó với phạm vi cục bộ từ bên ngoài nội dung của hàm
Nó tăng 6 vì nó không 'hiển thị' trong phần còn lại của chương trình. Nó chỉ 'hiển thị' trong chức năng mà nó được xác địnhCách tạo biến với phạm vi toàn cầu trong PythonKhi bạn xác định một biến bên ngoài một hàm, chẳng hạn như ở đầu tệp, nó có phạm vi toàn cục và nó được gọi là biến toàn cục Một biến toàn cục được truy cập từ bất kỳ đâu trong chương trình Bạn có thể sử dụng nó bên trong thân hàm, cũng như truy cập nó từ bên ngoài hàm
Điều gì xảy ra khi có một biến toàn cục và biến cục bộ và cả hai đều có cùng tên?
Trong ví dụ trên, có thể bạn không mong đợi kết quả cụ thể đó Có thể bạn nghĩ rằng giá trị của 7 sẽ thay đổi khi tôi gán cho nó một giá trị khác bên trong hàmCó thể bạn đã dự đoán rằng khi tôi tham chiếu biến toàn cục với dòng 8, kết quả sẽ là 9 thay vì 0Tuy nhiên, khi hàm được gọi, nó in ra giá trị của biến cục bộ Sau đó, khi tôi tham chiếu biến toàn cục bên ngoài hàm, giá trị được gán cho biến toàn cục đã được in Họ không can thiệp lẫn nhau Điều đó nói rằng, sử dụng cùng một tên biến cho các biến toàn cầu và cục bộ không được coi là một phương pháp hay nhất. Đảm bảo rằng các biến của bạn không có cùng tên, vì bạn có thể nhận được một số kết quả khó hiểu khi chạy chương trình của mình Cách sử dụng từ khóa age = 28 #'age' is the variable name, or identifier # '=' is the assignment operator #'28' is the value assigned to the variable, so '28' is the value of 'age' 0 trong PythonNếu bạn có một biến toàn cục nhưng muốn thay đổi giá trị của nó bên trong một hàm thì sao? Hãy xem điều gì sẽ xảy ra khi tôi cố gắng làm điều đó
Theo mặc định, Python cho rằng bạn muốn sử dụng một biến cục bộ bên trong một hàm Vì vậy, khi tôi thử in giá trị của biến lần đầu tiên và sau đó gán lại giá trị cho biến mà tôi đang cố truy cập, Python bị nhầm lẫn Cách để thay đổi giá trị của một biến toàn cục bên trong một hàm là sử dụng từ khóa 0
Sử dụng từ khóa 0 trước khi tham chiếu nó trong hàm, vì bạn sẽ gặp lỗi sau. 4Trước đó, bạn đã thấy rằng bạn không thể truy cập các biến được tạo bên trong các hàm vì chúng có phạm vi cục bộ Từ khóa 0 thay đổi mức độ hiển thị của các biến được khai báo bên trong các hàm
Phần kết luậnVà bạn có nó rồi đấy. Bây giờ bạn đã biết kiến thức cơ bản về biến toàn cục trong Python và có thể cho biết sự khác biệt giữa biến cục bộ và biến toàn cục Tôi hy vọng bạn tìm thấy bài viết này hữu ích Để tìm hiểu thêm về ngôn ngữ lập trình Python, hãy xem Chứng chỉ máy tính khoa học với Python của freeCodeCamp Bạn sẽ bắt đầu từ những điều cơ bản và học theo cách tương tác và thân thiện với người mới bắt đầu. Cuối cùng, bạn cũng sẽ xây dựng năm dự án để đưa vào thực tế và giúp củng cố những gì bạn đã học Cảm ơn đã đọc và mã hóa hạnh phúc QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO Học một cái gì đó mới mỗi ngày và viết về nó Nếu bài viết này hữu ích, hãy tweet nó Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu Bạn có thể thay đổi biến toàn cục trong Python không?Trong Python, từ khóa toàn cục cho phép chúng ta sửa đổi biến bên ngoài phạm vi hiện tại . Nó được sử dụng để tạo một biến toàn cục và thay đổi biến đó trong ngữ cảnh cục bộ.
Có thể thay đổi biến toàn cục không?Biến toàn cục là biến được định nghĩa bên ngoài tất cả các hàm. Các biến toàn cục có thể được truy cập và sửa đổi bởi bất kỳ hàm nào trong C .
Bạn có thể thay đổi biến toàn cục trong lớp Python không?Bạn có thể truy cập các biến toàn cục từ bất kỳ đâu trong chương trình. Tuy nhiên, bạn chỉ có thể truy cập các biến cục bộ từ hàm. Ngoài ra, nếu bạn cần thay đổi một biến toàn cục từ một hàm, bạn cần khai báo rằng biến đó là toàn cục . Bạn có thể làm điều này bằng cách sử dụng từ khóa "toàn cầu". |