Tôi muốn giải quyết một câu hỏi mà bạn có thể có hoặc có thể không, nhưng đó là điều
mà tôi phải mất nhiều năm mới hiểu được, và đó là lý do tại sao không chỉ có mọi thứ dưới dạng biến toàn cục.
Ý tôi là, tất cả sự nhầm lẫn này về việc ai có quyền truy cập vào ai.
Sẽ dễ dàng như thế nào nếu mọi thứ chỉ nằm trên trang chính?
Tất cả thông tin của chúng tôi, tất cả dữ liệu trên phạm vi toàn cầu của chúng tôi để mọi thứ đều có quyền truy cập vào mọi thứ, điều
đó sẽ không dễ dàng hơn sao?
Và bạn đã đúng.
Ý tôi là, điều đó sẽ làm cho cơn đau đầu này biến mất, phải không?
Nhưng bạn phải nhớ rằng máy móc không có sức mạnh vô hạn, không có CPU vô hạn, không có bộ
nhớ vô hạn.
Tất cả đều có nguồn lực hạn chế.
Và là những lập trình viên, chúng ta phải có ý thức về những tài nguyên chúng ta sử dụng, bởi vì đôi khi điều đó có thể khiến chúng ta mất
tiền, đôi khi chúng có thể làm hỏng máy tính của chúng ta.
Và phạm vi là một minh chứng tuyệt vời cho điều này.
Ví dụ, đoạn mã này ngay tại đây, khi hàm này được chạy, về mặt kỹ thuật, chúng tôi chỉ
tạo một vị trí trong bộ nhớ cho biến X.
Vì vậy, chúng tôi có giá sách đó trong máy tính của chúng tôi là X trỏ đến cục bộ khi chúng tôi thực sự gọi
hàm này.
Và sau đó, khi chúng tôi nói không thuộc địa phương ở đây, thì chúng tôi đang nói rằng đừng tạo một giá sách khác cho chúng tôi.
Chỉ cần sử dụng một cái mà chúng tôi đã có và gán nó không phải cục bộ.
Nếu chúng ta không có dòng này, thì đến dòng thứ bảy, chúng ta đã đặt trong bộ nhớ x bằng cục bộ
và x bằng không cục bộ.
Vì vậy, chúng tôi có hai vị trí bây giờ trong bộ nhớ.
Bây giờ đây không phải là một vấn đề lớn vì tốt, trong thời đại ngày nay chúng ta có rất nhiều trí nhớ.
Nhưng khi các chương trình ngày càng lớn hơn, điều này trở thành một vấn đề nhỏ.
OC Nhưng những gì về một chức năng?
Ý tôi là, chúng tôi biết rằng các hàm cho phép chúng tôi không lặp lại chính mình và có thể gọi ra hoặc gọi
nhiều lần.
Nhưng một cách sử dụng tốt khác của các hàm là một khi chúng ta gọi hàm này và tất cả điều này được thực hiện, máy tính và
trình thông dịch python đặc biệt sẽ phá hủy tất cả bộ nhớ này.
Đó là, một khi chúng ta hoàn thành với hàm bên ngoài, tôi thực sự không thể gọi print x ở đây.
Nó sẽ cho tôi một lỗi.
Nó sẽ nói rằng, tôi không biết X là gì và tại sao lại như vậy?
Đó là bởi vì sau khi chúng ta gọi hàm này, python, cái mà chúng ta gọi là bộ thu gom rác, sẽ nói, này, có
vẻ như chúng ta đã thực hiện xong hàm này.
Và tôi thấy rằng biến X này tốt trong biến X này, chúng tôi sẽ không sử dụng vì chúng tôi đã thực hiện xong hàm
này.
Vì vậy, tôi sẽ thu thập rác đó và sau đó vứt nó đi.
Vì vậy, tôi sẽ làm trống tủ bộ nhớ đó để các tài nguyên khác hoặc các chương trình khác có thể sử dụng nó.
Và đó là một tính năng thực sự hay mà Python chỉ tự động xóa những thứ này cho bạn để bạn không
làm nghẽn bộ nhớ của máy tính.
Và đó là lý do tại sao phạm vi hữu ích.
Chúng ta không phải nghĩ về nó quá chi tiết như tôi đã đề cập, nhưng thật tuyệt khi biết
rằng nó ở đó để các chương trình của bạn không chiếm nhiều bộ nhớ và chúng có thể chạy hiệu quả.
Đây là một chủ đề hơi nói trước, nhưng tôi muốn đưa nó vào đây để bạn có thể nghĩ về lý do tại
sao các chương trình được thiết kế theo cách của chúng.
Được rồi.
Tôi sẽ ngừng nói bây giờ.
Hẹn gặp lại các bạn trong video tiếp theo.
Tạm biệt.