Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Menyesuaikan Perwakilan Rentetan Contoh Kelas Python Saya?

Bagaimanakah Saya Boleh Menyesuaikan Perwakilan Rentetan Contoh Kelas Python Saya?

Susan Sarandon
Lepaskan: 2024-12-27 01:16:11
asal
992 orang telah melayarinya

How Can I Customize the String Representation of My Python Class Instances?

Perwakilan Rentetan Tersuai untuk Contoh Kelas

Apabila mencetak tika kelas, output lalai selalunya hanya menyediakan nama kelas dan alamat objek . Untuk menyesuaikan output ini dan memaparkan atribut khusus, seseorang boleh mentakrifkan perwakilan rentetan kelas.

Menggunakan str dan repr Kaedah

Python menyediakan dua kaedah khas, str dan __repr__, yang mengawal perwakilan rentetan objek. Dengan mengatasi kaedah ini dalam kelas, seseorang boleh menentukan cara kejadian kelas akan muncul apabila dicetak.

str Kaedah

str mentakrifkan perwakilan rentetan yang akan dipaparkan apabila fungsi cetakan digunakan. Ia harus mengembalikan perwakilan rentetan objek. Contohnya:

class Test:
    def __str__(self):
        return "member of Test"
Salin selepas log masuk

repr Kaedah

Kaedah

repr mentakrifkan perwakilan rentetan yang akan dipaparkan apabila fungsi repr() digunakan atau objek diperiksa dalam gesaan interaktif. Ia harus mengembalikan perwakilan rentetan yang boleh digunakan untuk mencipta semula objek. Contohnya:

class Test:
    def __repr__(self):
        return "Test()"
Salin selepas log masuk

Contoh

Pertimbangkan contoh berikut:

class Test:
    def __init__(self):
        self.a = 'foo'

    def __str__(self):
        return str(self.a)

    def __repr__(self):
        return "Test()"
Salin selepas log masuk
Apabila mencetak contoh kelas ini, output berikut akan dipaparkan:

>>> print(Test())
foo

>>> repr(Test())
Test()
Salin selepas log masuk
Dengan mentakrifkan kedua-dua Kaedah

str dan repr, anda mempunyai kawalan sepenuhnya ke atas perwakilan rentetan kejadian kelas anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyesuaikan Perwakilan Rentetan Contoh Kelas Python Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan