cari
Rumahpembangunan bahagian belakangTutorial PythonPerbezaan pembolehubah kelas b/w dan pembolehubah contoh Python

Difference b/w class variable and instance variable Python

Pembolehubah Kelas dan Pembolehubah Instance dalam Python

Dalam Python, terdapat dua jenis pembolehubah: pembolehubah kelas dan pembolehubah instance. Memahami perbezaan antara kedua-dua jenis pembolehubah ini adalah penting untuk menulis kod yang cekap dan teratur. Ini berbeza sedikit daripada bahasa lain.

Pembolehubah Kelas

Pembolehubah kelas, juga dikenali sebagai pembolehubah statik, ialah pembolehubah yang dikongsi oleh semua kejadian kelas. Ia ditakrifkan di luar mana-mana kaedah atau pembina dan dikaitkan dengan kelas itu sendiri, bukan dengan sebarang contoh tertentu.

Untuk mengisytiharkan pembolehubah kelas, anda hanya menetapkan nilai padanya di dalam definisi kelas, menggunakan operator =. Berikut ialah contoh:

class MyClass:
    class_variable = "This is a class variable"

print(MyClass.class_variable)  # Output: This is a class variable

obj1 = MyClass()
obj2 = MyClass()
print(obj1.class_variable)      # Output: This is a class variable
print(obj2.class_variable)      # Output: This is a class variable

Perhatikan bahawa pembolehubah kelas dikongsi oleh semua kejadian kelas. Jika anda mengubah suai nilai pembolehubah kelas dalam satu kejadian, ia akan mempengaruhi semua kejadian lain juga.

Pembolehubah Instance

Pembolehubah tika, sebaliknya, adalah pembolehubah yang unik untuk setiap tika kelas. Mereka dicipta apabila tika kelas dibuat dan mereka dikaitkan dengan tika khusus itu.

Untuk mengisytiharkan pembolehubah contoh, anda perlu mentakrifkannya di dalam kaedah atau pembina kelas. Berikut ialah contoh:

class MyClass:
    def __init__(self, instance_variable):
        self.instance_variable = instance_variable

obj1 = MyClass("obj1 instance variable")
print(obj1.instance_variable)  # Output: obj1 instance variable


obj2 = MyClass("obj2 instance variable")
print(obj2.instance_variable)  # Output: obj2 instance variable

Dalam contoh ini, instance_variable ialah pembolehubah contoh kelas MyClass. Ia dimulakan dalam kaedah __init__ (pembina) dan boleh diakses menggunakan kata kunci kendiri.

Perhatikan bahawa setiap tika kelas mempunyai salinan pembolehubah contoh sendiri. Mengubah suai nilai pembolehubah tika dalam satu kejadian tidak akan menjejaskan nilai dalam keadaan lain.

Perbezaan dan Kegunaan

Perbezaan utama antara pembolehubah kelas dan pembolehubah tika ialah pembolehubah kelas dikongsi oleh semua tika kelas, manakala pembolehubah tika adalah unik untuk setiap tika.

Pembolehubah kelas berguna apabila anda ingin berkongsi data antara semua kejadian kelas. Sebagai contoh, anda mungkin menggunakan pembolehubah kelas untuk menjejaki bilangan tika yang dibuat atau untuk menyimpan nilai malar yang digunakan oleh semua tika.

Pembolehubah tika, sebaliknya, berguna apabila anda ingin menyimpan data yang khusus untuk setiap tika. Contohnya, anda mungkin menggunakan pembolehubah tika untuk menyimpan nama seseorang atau umur seseorang.


Saya harap artikel ini membantu anda memahami pembolehubah kelas dan pembolehubah contoh dalam Python. Beritahu saya jika anda mempunyai sebarang soalan lanjut!

Atas ialah kandungan terperinci Perbezaan pembolehubah kelas b/w dan pembolehubah contoh Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Apakah beberapa operasi biasa yang boleh dilakukan pada tatasusunan python?Apakah beberapa operasi biasa yang boleh dilakukan pada tatasusunan python?Apr 26, 2025 am 12:22 AM

PythonArraysSupportVariousoperations: 1) SlicingExtractsSubsets, 2) Menambah/ExtendingAddSelements, 3) InsertingPlaceSelementSatSatSatSpecifics, 4) RemovingDeleteselements, 5) Sorting/ReversingChangesOrder,

Dalam jenis aplikasi yang biasa digunakan oleh numpy?Dalam jenis aplikasi yang biasa digunakan oleh numpy?Apr 26, 2025 am 12:13 AM

NumpyarraysareessentialforapplicationRequiringeficientnumericalcomputationsanddatamanipulation.theyarecrucialindaSascience, machinelearning, fizik, kejuruteraan, danfinanceduetotheirabilitytOHandlelarge-Scaledataefisien.Forexample, infinancialanal

Bilakah anda memilih untuk menggunakan array di atas senarai di Python?Bilakah anda memilih untuk menggunakan array di atas senarai di Python?Apr 26, 2025 am 12:12 AM

UseanArray.arrayoveralistinpythonwhendealingwithhomogeneousdata, criticalcode prestasi, orinterfacingwithccode.1) homogeneousdata: arrayssavemememorywithtypedelements.2)

Adakah semua operasi senarai disokong oleh tatasusunan, dan sebaliknya? Mengapa atau mengapa tidak?Adakah semua operasi senarai disokong oleh tatasusunan, dan sebaliknya? Mengapa atau mengapa tidak?Apr 26, 2025 am 12:05 AM

Tidak, notalllistoperationsaresuportedByArrays, andviceversa.1) arraysdonotsupportdynamicoperationslikeappendorinsertwithoutresizing, whyimpactsperformance.2) listsdonotguaranteeconstantTimeComplexityFordirectacesscesscesscesscesscesscesscesscesscesessd.

Bagaimana anda mengakses elemen dalam senarai python?Bagaimana anda mengakses elemen dalam senarai python?Apr 26, 2025 am 12:03 AM

ToaccesselementsinaPythonlist,useindexing,negativeindexing,slicing,oriteration.1)Indexingstartsat0.2)Negativeindexingaccessesfromtheend.3)Slicingextractsportions.4)Iterationusesforloopsorenumerate.AlwayschecklistlengthtoavoidIndexError.

Bagaimana tatasusunan digunakan dalam pengkomputeran saintifik dengan python?Bagaimana tatasusunan digunakan dalam pengkomputeran saintifik dengan python?Apr 25, 2025 am 12:28 AM

Arraysinpython, terutamanya yang, arecrucialinscientificificputingputingfortheirefficiencyandversatility.1) mereka yang digunakan untuk

Bagaimana anda mengendalikan versi python yang berbeza pada sistem yang sama?Bagaimana anda mengendalikan versi python yang berbeza pada sistem yang sama?Apr 25, 2025 am 12:24 AM

Anda boleh menguruskan versi python yang berbeza dengan menggunakan Pyenv, Venv dan Anaconda. 1) Gunakan pyenv untuk menguruskan pelbagai versi python: Pasang pyenv, tetapkan versi global dan tempatan. 2) Gunakan VENV untuk mewujudkan persekitaran maya untuk mengasingkan kebergantungan projek. 3) Gunakan Anaconda untuk menguruskan versi python dalam projek sains data anda. 4) Simpan sistem python untuk tugas peringkat sistem. Melalui alat dan strategi ini, anda dapat menguruskan versi Python yang berbeza untuk memastikan projek yang lancar.

Apakah beberapa kelebihan menggunakan array numpy melalui array python standard?Apakah beberapa kelebihan menggunakan array numpy melalui array python standard?Apr 25, 2025 am 12:21 AM

Numpyarrayshaveseveraladvantagesoverstanderardpythonarrays: 1) thearemuchfasterduetoc-assedimplementation, 2) thearemorememory-efficient, antyedlargedataSets, and3) theyofferoptimized, vectorizedfuncionsformathhematicalicalicalicialisation

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini