Đây là một ví dụ dài nhưng giúp chứng minh bản chất của các biến lớp và đối tượng. Ở đây,
>>> num=10
9 thuộc về lớp >>> num
10
0 và do đó là một biến lớp. Biến >>> num
10
1 thuộc về đối tượng [nó được gán bằng cách sử dụng >>> num
10
2] và do đó là biến đối tượngDo đó, chúng tôi đề cập đến biến lớp
>>> num=10
9 là >>> num
10
4 chứ không phải là >>> num
10
5. Lưu ý rằng một biến đối tượng có cùng tên với biến lớp sẽ ẩn biến lớp. Chúng tôi đề cập đến biến đối tượng >>> num
10
1 bằng cách sử dụng ký hiệu >>> num
10
7 trong các phương thức của đối tượng đó. Hãy nhớ sự khác biệt đơn giản này giữa các biến lớp và đối tượngQuan sát rằng phương thức
>>> num=10
90 được sử dụng để khởi tạo đối tượng >>> num
10
0 với một tên. Trong phương pháp này, chúng tôi tăng số lượng >>> num=10
9 lên 1 vì chúng tôi có thêm một người được thêm vào. Cũng quan sát rằng các giá trị của >>> num
10
7 là cụ thể cho từng đối tượng cho biết bản chất của các biến đối tượngHãy nhớ rằng bạn phải tham chiếu đến các biến và phương thức của cùng một đối tượng chỉ sử dụng biến
>>> num
10
2. Đây được gọi là tham chiếu thuộc tínhTrong chương trình này, chúng ta cũng thấy việc sử dụng các chuỗi tài liệu cho các lớp cũng như các phương thức. Chúng ta có thể truy cập chuỗi tài liệu lớp khi chạy bằng cách sử dụng
>>> num=10
95 và chuỗi tài liệu phương thức là >>> num=10
96Cũng giống như phương thức
>>> num=10
90, có một phương thức đặc biệt khác là >>> num=10
98 được gọi khi một đối tượng sắp chết i. e. nó không còn được sử dụng nữa và đang được trả lại hệ thống để sử dụng lại phần bộ nhớ đó. Trong phương pháp này, chúng tôi chỉ cần giảm số lượng >>> num
10
4 xuống 1Phương thức
>>> num=10
98 được chạy khi đối tượng không còn được sử dụng và không có gì đảm bảo khi nào phương thức đó sẽ được chạy. Nếu bạn muốn làm điều này một cách rõ ràng, bạn chỉ cần sử dụng câu lệnh >>> num
10
01 mà chúng tôi đã sử dụng trong các ví dụ trướcLưu ý dành cho Lập trình viên C++/Java/C#
Tất cả các thành viên lớp [bao gồm cả các thành viên dữ liệu] là công khai và tất cả các phương thức là ảo trong Python
một ngoại lệ. Nếu bạn sử dụng các thành viên dữ liệu có tên sử dụng tiền tố dấu gạch dưới kép, chẳng hạn như
>>> num
10
02, thì Python sử dụng tính năng xáo trộn tên để biến nó thành một biến riêng tư một cách hiệu quảDo đó, quy ước tuân theo là bất kỳ biến nào chỉ được sử dụng trong lớp hoặc đối tượng phải bắt đầu bằng dấu gạch dưới và tất cả các tên khác là công khai và có thể được sử dụng bởi các lớp/đối tượng khác. Hãy nhớ rằng đây chỉ là một quy ước và không được Python thực thi [ngoại trừ tiền tố gạch dưới kép]
Trong Python, biến là tên được đặt cho một giá trị, để sau này dễ dàng tham chiếu một giá trị. Nói cách khác, một biến trỏ đến một đối tượng. Một giá trị bằng chữ được gán cho một biến bằng cách sử dụng toán tử
>>> num
10
4 trong đó phía bên trái phải là tên của một biến và phía bên phải phải là một giá trị. Sau đây gán tên cho một giá trị số nguyên>>> num=10
Bây giờ, bạn có thể tham khảo 10 bằng cách sử dụng tên biến num, như hình bên dưới
>>> num
10
Sử dụng hàm print[] tích hợp để hiển thị giá trị của một biến trên REPL
>>> print[num] #display value
10
>>> print[num * 2] # multiply and display result
20
Biến trong Python là đối tượng. Sử dụng hàm type[] để lấy tên lớp của một đối tượng. Ví dụ: phần sau hiển thị tên lớp của biến
>>> num
10
5>>> type[num]
Loại của
>>> num
10
5 là int. Một đối tượng của lớp int chứa một số nguyên bằng chữ >>> num
10
7Tất cả các biến thực sự là một đối tượng của một lớp tùy thuộc vào giá trị
________số 8
Không giống như các ngôn ngữ lập trình khác như C# hay Java, Python là ngôn ngữ kiểu động, nghĩa là bạn không cần khai báo kiểu của biến. Loại sẽ được gán động dựa trên giá trị được gán
>>> x=100
>>> type[x]
>>> x='Hello World'
>>> type[a]
Các hoạt động khác nhau có thể được thực hiện trên các biến bằng cách sử dụng các toán tử khác nhau dựa trên loại biến. Ví dụ: toán tử
>>> num
10
8 tính tổng hai biến int, trong khi nó nối hai biến kiểu chuỗi, như minh họa bên dưới>>> num=10
1Nhận dạng đối tượng
Mỗi đối tượng trong Python có một id. Đó là địa chỉ của đối tượng trong bộ nhớ được biểu thị bằng một giá trị số nguyên. Hàm
>>> num
10
9 trả về id của đối tượng được chỉ định nơi nó được lưu trữ, như hình bên dưới>>> num=10
3Một id sẽ được thay đổi nếu một biến thay đổi thành giá trị khác
>>> num=10
4Ví dụ, nhiều biến được gán cho cùng một giá trị bằng chữ sẽ có cùng id
>>> num=10
5Do đó, Python tối ưu hóa việc sử dụng bộ nhớ bằng cách không tạo các đối tượng riêng biệt nếu chúng trỏ đến cùng một giá trị
Bài tập nhiều biến
Bạn có thể khai báo nhiều biến và gán giá trị cho từng biến trong một câu lệnh, như hình bên dưới
>>> num
10
0Trong ví dụ trên, giá trị int đầu tiên
>>> num
10
7 sẽ được gán cho biến đầu tiên x, giá trị thứ hai cho biến thứ hai y và giá trị thứ ba cho biến thứ ba z. Việc gán giá trị cho các biến phải theo thứ tự như đã khai báoBạn cũng có thể khai báo các loại giá trị khác nhau cho các biến trong một câu lệnh, như hình bên dưới
>>> num
10
1Gán một giá trị cho từng biến riêng lẻ được phân tách bằng dấu phẩy sẽ gây ra lỗi cú pháp, như được hiển thị bên dưới