Hướng dẫn what are different types of variables in class python? - Các loại biến khác nhau trong lớp python là gì?

Lập trình hướng đối tượng

Các biến lớp và ví dụ trong Python

Đã sử dụng các biến khai báo trong một lớp. Có hai loại chính: các biến lớp, có cùng giá trị trên tất cả các phiên bản lớp (nghĩa là các biến tĩnh) và các biến thể hiện, có các giá trị khác nhau cho từng thể hiện đối tượng.


Cú pháp
class ClassName(object):
  class_variable = value #value shared across all class instances

  def __init__(instance_variable_value):
    self.instance_variable = instance_variable_value #value specific to instance. Instance variables are usually initialized in methods

#accessing instance variable
class_instance = ClassName()
class_instance.instance_variable

#accessing class variable
ClassName.class_variable
class_instance.class_variable
Notes
Notes

Trong Python, sử dụng dấu gạch dưới hàng đầu và dấu vết là quy ước đặt tên để chỉ ra một biến có nghĩa là riêng tư.


Thí dụ
class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))

Giới thiệu

Lập trình hướng đối tượng cho phép các biến được sử dụng ở cấp độ lớp hoặc cấp độ thể hiện. Các biến về cơ bản là các ký hiệu đứng cho một giá trị mà bạn sử dụng trong một chương trình.Variables are essentially symbols that stand in for a value you’re using in a program.

Ở cấp độ lớp, các biến được gọi là các biến lớp, trong khi các biến ở cấp độ được gọi là biến thể hiện.class variables, whereas variables at the instance level are called instance variables.

Khi chúng tôi mong đợi các biến sẽ nhất quán trong các trường hợp hoặc khi chúng tôi muốn khởi tạo một biến, chúng tôi có thể xác định biến đó ở cấp lớp. Khi chúng tôi dự đoán các biến sẽ thay đổi đáng kể qua các trường hợp, chúng tôi có thể xác định chúng ở cấp độ thể hiện.

Một trong những nguyên tắc phát triển phần mềm là nguyên tắc khô khan, viết tắt của don lặp lại chính mình. Nguyên tắc này hướng đến việc hạn chế sự lặp lại trong mã và lập trình hướng đối tượng tuân thủ nguyên tắc khô vì nó làm giảm sự dư thừa.DRY principle, which stands for don’t repeat yourself. This principle is geared towards limiting repetition within code, and object-oriented programming adheres to the DRY principle as it reduces redundancy.

Hướng dẫn này sẽ chứng minh việc sử dụng cả hai biến lớp và thể hiện trong lập trình hướng đối tượng trong Python.

Điều kiện tiên quyết

Bạn nên cài đặt Python 3 và môi trường lập trình được thiết lập trên máy tính hoặc máy chủ của bạn. Nếu bạn không có môi trường lập trình được thiết lập, bạn có thể tham khảo hướng dẫn cài đặt và thiết lập cho môi trường lập trình cục bộ hoặc cho môi trường lập trình trên máy chủ của bạn phù hợp với hệ điều hành của bạn (Ubuntu, Centos, Debian, v.v.)

Biến lớp

Các biến lớp được xác định trong xây dựng lớp. Bởi vì chúng thuộc sở hữu của chính lớp, các biến lớp được chia sẻ bởi tất cả các trường hợp của lớp. Do đó, chúng thường sẽ có cùng giá trị cho mọi trường hợp trừ khi bạn đang sử dụng biến lớp để khởi tạo một biến.

Biến lớp trong Python với ví dụ là gì?

Các biến lớp trong kế thừa Chúng tôi có thể sử dụng tên lớp hoặc lớp con để thay đổi giá trị của biến lớp của lớp cha trong lớp con. Thí dụ. Khóa học lớp: # Lớp biến khóa học = "Python" Lớp học sinh (khóa học): def __init __ (tự, tên): tự. To follow along with the example code in this tutorial, open a Python interactive shell on your local system by running the

class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
6 command. Then you can copy, paste, or edit the examples by adding them after the
class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
7 prompt.

Các biến của Python là gì?

class Shark:
    animal_type = "fish"

Biến Python là một tên biểu tượng là một tham chiếu hoặc con trỏ đến một đối tượng. Khi một đối tượng được gán cho một biến, bạn có thể tham khảo đối tượng bằng tên đó. Nhưng chính dữ liệu vẫn còn trong đối tượng.

Giới thiệu

shark.py

class Shark:
    animal_type = "fish"

new_shark = Shark()
print(new_shark.animal_type)

Lập trình hướng đối tượng cho phép các biến được sử dụng ở cấp độ lớp hoặc cấp độ thể hiện. Các biến về cơ bản là các ký hiệu đứng cho một giá trị mà bạn sử dụng trong một chương trình.

  1. python shark.py

Output

fish

Ở cấp độ lớp, các biến được gọi là các biến lớp, trong khi các biến ở cấp độ được gọi là biến thể hiện.

Khi chúng tôi mong đợi các biến sẽ nhất quán trong các trường hợp hoặc khi chúng tôi muốn khởi tạo một biến, chúng tôi có thể xác định biến đó ở cấp lớp. Khi chúng tôi dự đoán các biến sẽ thay đổi đáng kể qua các trường hợp, chúng tôi có thể xác định chúng ở cấp độ thể hiện.

shark.py

class Shark:
    animal_type = "fish"
    location = "ocean"
    followers = 5

new_shark = Shark()
print(new_shark.animal_type)
print(new_shark.location)
print(new_shark.followers)

Một trong những nguyên tắc phát triển phần mềm là nguyên tắc khô khan, viết tắt của don lặp lại chính mình. Nguyên tắc này hướng đến việc hạn chế sự lặp lại trong mã và lập trình hướng đối tượng tuân thủ nguyên tắc khô vì nó làm giảm sự dư thừa.

Output

fish ocean 5

Hướng dẫn này sẽ chứng minh việc sử dụng cả hai biến lớp và thể hiện trong lập trình hướng đối tượng trong Python.

Điều kiện tiên quyết

Bạn nên cài đặt Python 3 và môi trường lập trình được thiết lập trên máy tính hoặc máy chủ của bạn. Nếu bạn không có môi trường lập trình được thiết lập, bạn có thể tham khảo hướng dẫn cài đặt và thiết lập cho môi trường lập trình cục bộ hoặc cho môi trường lập trình trên máy chủ của bạn phù hợp với hệ điều hành của bạn (Ubuntu, Centos, Debian, v.v.)

Biến lớp

Được xác định bên ngoài tất cả các phương thức, các biến lớp, theo quy ước, thường được đặt ngay bên dưới tiêu đề lớp và trước phương thức cấu trúc và các phương thức khác.

Thông tin: Để làm theo cùng với mã ví dụ trong hướng dẫn này, hãy mở một vỏ tương tác Python trên hệ thống cục bộ của bạn bằng cách chạy lệnh

class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
6. Sau đó, bạn có thể sao chép, dán hoặc chỉnh sửa các ví dụ bằng cách thêm chúng sau lời nhắc
class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
7.

class Shark:
    def __init__(self, name, age):
        self.name = name
        self.age = age

Một biến lớp một mình trông giống như sau:

class Shark:
    def __init__(self, name, age):
        self.name = name
        self.age = age

new_shark = Shark("Sammy", 5)

Cũng như các biến lớp, chúng tôi có thể gọi tương tự để in các biến thể hiện:

shark.py

class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
0

Khi chúng tôi chạy chương trình ở trên với

class Shark:
    animal_type = "fish"
2, chúng tôi sẽ nhận được đầu ra sau:

class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
1

Đầu ra chúng tôi nhận được được tạo thành từ các giá trị của các biến mà chúng tôi đã khởi tạo cho thể hiện đối tượng của

class Shark:
    animal_type = "fish"
1.

Hãy để tạo ra một đối tượng khác của lớp

class Shark:
    animal_type = "fish"
0 được gọi là
class Shark:
    animal_type = "fish"

new_shark = Shark()
print(new_shark.animal_type)
1:

shark.py

class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
2
class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
3

Đối tượng

class Shark:
    animal_type = "fish"

new_shark = Shark()
print(new_shark.animal_type)
1, như đối tượng
class Shark:
    animal_type = "fish"
1 chuyển các tham số cụ thể cho trường hợp đó của lớp
class Shark:
    animal_type = "fish"
0 để gán các giá trị cho các biến thể hiện.

Các biến thể hiện, được sở hữu bởi các đối tượng của lớp, cho phép mỗi đối tượng hoặc thể hiện có các giá trị khác nhau được gán cho các biến đó.

Làm việc với các biến lớp và trường hợp cùng nhau

Các biến lớp và biến thể hiện thường sẽ được sử dụng cùng một lúc, vì vậy, hãy để xem xét một ví dụ về điều này bằng cách sử dụng lớp

class Shark:
    animal_type = "fish"
0 mà chúng tôi đã tạo. Các ý kiến ​​trong chương trình phác thảo từng bước của quy trình.

shark.py

class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
4

Khi chúng tôi chạy chương trình với

class Shark:
    animal_type = "fish"
2, chúng tôi sẽ nhận được đầu ra sau:

class Car(object):
  wheels = 4

    def __init__(self, make):
      self.make = make

newCar = Car("Honda")
print ("My new car is a {}".format(newCar.make))
print ("My car, like all cars, has {%d} wheels".format(Car.wheels))
5

Ở đây, chúng tôi đã sử dụng cả hai biến lớp và phiên bản trong hai đối tượng của lớp

class Shark:
    animal_type = "fish"
0,
class Shark:
    animal_type = "fish"

new_shark = Shark()
print(new_shark.animal_type)
8 và
class Shark:
    animal_type = "fish"

new_shark = Shark()
print(new_shark.animal_type)
1.

Sự kết luận

Trong lập trình hướng đối tượng, các biến ở cấp lớp được gọi là các biến lớp, trong khi các biến ở cấp đối tượng được gọi là biến thể hiện.

Sự khác biệt này cho phép chúng tôi sử dụng các biến lớp để khởi tạo các đối tượng có giá trị cụ thể được gán cho các biến và sử dụng các biến khác nhau cho mỗi đối tượng với các biến thể hiện.

Sử dụng các biến dành riêng cho lớp và thể hiện có thể đảm bảo rằng mã của chúng tôi tuân thủ nguyên tắc khô để giảm sự lặp lại trong mã.

Các loại biến trong một lớp là gì?

Có ba loại biến khác nhau mà một lớp có thể có trong Java là các biến cục bộ, biến thể hiện và biến lớp/tĩnh.local variables, instance variables, and class/static variables.

Có biến lớp trong Python không?

Các biến lớp được xác định trong xây dựng lớp. Bởi vì chúng thuộc sở hữu của chính lớp, các biến lớp được chia sẻ bởi tất cả các trường hợp của lớp. Do đó, chúng thường sẽ có cùng giá trị cho mọi trường hợp trừ khi bạn đang sử dụng biến lớp để khởi tạo một biến.. Because they are owned by the class itself, class variables are shared by all instances of the class. They therefore will generally have the same value for every instance unless you are using the class variable to initialize a variable.

Biến lớp trong Python với ví dụ là gì?

Các biến lớp trong kế thừa Chúng tôi có thể sử dụng tên lớp hoặc lớp con để thay đổi giá trị của biến lớp của lớp cha trong lớp con.Thí dụ.Khóa học lớp: # Lớp biến khóa học = "Python" Lớp học sinh (khóa học): def __init __ (tự, tên): tự.class Course: # class variable course = "Python" class Student(Course): def __init__(self, name): self.

Các biến của Python là gì?

Biến Python là một tên biểu tượng là một tham chiếu hoặc con trỏ đến một đối tượng.Khi một đối tượng được gán cho một biến, bạn có thể tham khảo đối tượng bằng tên đó.Nhưng chính dữ liệu vẫn còn trong đối tượng.a symbolic name that is a reference or pointer to an object. Once an object is assigned to a variable, you can refer to the object by that name. But the data itself is still contained within the object.