Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menukar Integer kepada Perduaan dengan Sifar Utama dalam Python?

Bagaimana untuk Menukar Integer kepada Perduaan dengan Sifar Utama dalam Python?

Barbara Streisand
Barbara Streisandasal
2024-10-23 06:42:02926semak imbas

How to Convert Integer to Binary with Leading Zeros in Python?

Menukar Integer kepada Binari dalam Python dengan Sifar Utama

Menukar integer kepada perwakilan binarinya dalam Python adalah mudah menggunakan fungsi bin() . Walau bagaimanapun, jika anda memerlukan sifar pendahuluan untuk mengikat rentetan binari, anda mungkin menghadapi masalah. Begini cara untuk mengatasi cabaran ini:

Untuk mewakili integer sebagai rentetan binari dengan sifar pendahuluan, Python menawarkan beberapa pilihan:

str.format Kaedah:

Kaedah pilihan adalah menggunakan kaedah format() dengan rentetan pemformatan. Sintaks adalah seperti berikut:

<code class="python">'{0:08b}'.format(integer)</code>

Dalam rentetan ini, pemegang tempat "{}" merujuk kepada pembolehubah pada kedudukan argumen 0 (integer). Bahagian ":08b" menyatakan bahawa nombor itu hendaklah:

  • 0 berlapik di sebelah kiri
  • jumlah 8 digit (termasuk mana-mana sifar pendahuluan)
  • diwakili dalam perduaan

Contoh:

<code class="python">>>> '{0:08b}'.format(6)
'00000110'</code>

f-Strings (Python 3.6 ):

Jika anda menggunakan Python 3.6 atau lebih baru, anda boleh menggunakan f-strings, yang menawarkan sintaks yang lebih ringkas dan moden:

<code class="python">f'{integer:08b}'</code>

Contoh:

<code class="python">>>> f'{6:08b}'
'00000110'</code>

Penjelasan:

  • Kurung kerinting ({}) memasukkan pembolehubah ke dalam rentetan.
  • Pembolehubah integer berada pada kedudukan 0 ({0}) .
  • ":08b" menentukan pilihan pemformatan seperti sebelumnya.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Integer kepada Perduaan dengan Sifar Utama dalam 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