Pengendali tilde (~), yang diwarisi daripada C, ialah operator unary yang menyongsangkan bit operannya. Dalam Python, peranan utamanya melibatkan operasi bitwise pada integer.
Untuk integer, operator ~ secara berkesan mengubahnya menjadi pelengkap negatifnya. Ini dicapai dengan menyongsangkan setiap bit perwakilan pelengkap dua-dua dan mentafsirkan hasilnya sebagai integer bertanda. Oleh itu, ~x bersamaan dengan (-x) - 1.
Sebagai contoh, integer 5 dalam perwakilan binari ialah 0101. Menggunakan operator ~ akan menghasilkan 1010, yang apabila ditafsirkan sebagai integer yang ditandatangani mewakili -6.
Melebihi integer, operator ~ mempunyai aplikasi lain yang ketara:
Melengkapkan Booleans: Operator ~ boleh menafikan nilai boolean, menukar True kepada False dan begitu juga sebaliknya.
Manipulasi Bitwise: Bersama-sama dengan operator bitwise lain (cth., &, ^) , ia membolehkan operasi rumit pada data binari.
Kitaran Pengindeksan: Pengendali ~ boleh digunakan dengan jujukan untuk melakukan pengindeksan kitaran, membenarkan indeks negatif melilit ke hujung jujukan yang bertentangan.
Python menyokong pembebanan operator untuk kelas tersuai. Jika masuk akal untuk mentakrifkan operasi pelengkap untuk kelas, ia boleh dicapai dengan melaksanakan kaedah terbalikkan.
Sebagai contoh, dalam kod berikut, kelas Foo mentakrifkan terbalikkan kaedah yang mengembalikan songsangan kejadiannya:
class Foo: def __invert__(self): print('invert')
Menggunakan operator ~ kepada contoh Foo dengan itu akan mencetak 'terbalikkan'.
Atas ialah kandungan terperinci Apakah Kegunaan dan Aplikasi Operator Tilde (~) Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!