Dalam tutorial ini, kita akan membahas bagaimana kita dapat mengonversi string biner menjadi bilangan bulat dengan Python. Tetapi sebelum kita membagi jauh ke dalam metode konversi yang berbeda, mari kita rekap singkat string dan bilangan bulat
Apa itu string?
String dalam Python didefinisikan sebagai array byte yang mewakili karakter Unicode. Jika Anda memiliki pengalaman dalam bahasa pemrograman lain, Anda mungkin memahami string sebagai larik karakter. Namun, ini tidak sepenuhnya benar di python, karena python tidak memiliki tipe data char atau karakter. Satu karakter hanyalah sebuah string dengan panjang 1 untuk python. Namun, jika Anda tidak terbiasa dengan beberapa bahasa pemrograman lain dan sulit memahami pernyataan di atas, maka Anda dapat melewati bagian itu karena tidak diperlukan untuk memahami artikel lebih lanjut.
Apa itu bilangan bulat?
Bilangan bulat atau int hanyalah tipe data lain dalam python yang digunakan untuk menyimpan bilangan bulat. Tipe data ini, bagaimanapun, tidak dapat mengakomodasi desimal atau pecahan. Sekarang mari kita lihat cara-cara di mana kita dapat mencapai pertobatan yang diperlukan
Bagaimana Cara Mengonversi String Biner menjadi Integer dengan Python?
Karakter dan angka dikodekan dalam memori sebagai bilangan biner. Jadi, jika kita memiliki string yang berisi bilangan biner, kita harus dapat mengubahnya menjadi bilangan yang sesuai. Inilah yang akan kita capai di bagian ini. Ada dua cara utama di mana kita dapat melakukan konversi, mari kita telusuri keduanya satu per satu
1] Menggunakan modul bitstring
Python dikenal dengan beragam modul dan komunitas sumber terbukanya yang besar. Dari kumpulan pustaka sumber terbuka ini, modul yang akan kita gunakan hari ini adalah modul bitstring. Modul ini membuat pembuatan, manipulasi, dan analisis data biner sesederhana mungkin. Kelas yang akan kita gunakan hari ini untuk mencapai tugas kita adalah kelas BitArray. Kelas ini hadir di dalam modul bitstring dan memiliki properti yang disebut int. Properti ini berisi representasi bilangan bulat komplemen dua yang ditandatangani dari bitstring. Sebelum kita dapat mengakses properti ini, kita diharuskan membuat objek dari kelas BitArray. Konstruktor kelas ini mengharuskan kita untuk menentukan penginisialisasi, yang memberi tahu kelas tentang jenis data yang akan kita sediakan. Dalam hal ini karena kita berurusan dengan string biner, maka penginisialisasi yang akan kita gunakan adalah bin. Setelah menginisialisasi objek kita, kita akan mengakses properti int dari objek untuk mendapatkan bilangan bulat yang diperlukan
Sebagai contoh
from bitstring import BitArray # initialize a binary string bString = "10101" # conversion value = BitArray[bin=bString].int # display the converted value print[value]
Keluaran
21
_
Harap dicatat bahwa Anda harus menginstal modul bitstring ke dalam sistem Anda menggunakan perintah pip
2] Menggunakan int
Pendekatan ini cukup sederhana dan tidak memerlukan pemasangan paket apa pun. Dalam hal ini, kami menggunakan fungsi bawaan yang disebut int. Fungsi ini mengambil string yang ingin kita ubah sebagai argumen pertama dan basis angka sebagai argumen kedua. Karena di sini kita berurusan dengan bilangan biner, maka basisnya adalah 2. Metode ini kemudian mengembalikan nilai integer dari string biner
Sebagai contoh
# initialize a binary string bString = "10101" # conversion value = int[bString, 2] # display the converted value print[value]
Keluaran
21
Kesimpulan
Konversi adalah tugas yang sangat penting dan keterampilan yang harus dimiliki setiap orang dengan kuat. Python, untuk penyelamatan kami, memberi kami sejumlah besar metode dan pustaka yang membuat tugas ini sangat mudah dan nyaman. Pada artikel ini, pertama-tama kita memiliki pengantar singkat tentang nilai biner, string, dan bilangan bulat. Setelah ini, kami belajar tentang 2 cara berbeda di mana kami dapat mengubah string biner menjadi bilangan bulat
Konversi ASCII ke biner dan biner ke ascii dilakukan oleh modul binascii bawaan. Ini memiliki penggunaan yang sangat mudah dengan fungsi yang mengambil data input dan melakukan konversi. Program di bawah ini menunjukkan penggunaan modul binascii dan fungsinya bernama b2a_uu dan a2b_uu. uu adalah singkatan dari "UNIX-to-UNIX encoding" yang menangani konversi data dari string ke nilai biner dan ascii seperti yang dipersyaratkan oleh program
import binascii text = "Simply Easy Learning" # Converting binary to ascii data_b2a = binascii.b2a_uu[text] print "**Binary to Ascii** \n" print data_b2a # Converting back from ascii to binary data_a2b = binascii.a2b_uu[data_b2a] print "**Ascii to Binary** \n" print data_a2b_
Ketika kami menjalankan program di atas, kami mendapatkan output berikut -
**Binary to Ascii** 44VEM&QY[$5AWD@3&5AFYI;F **Ascii to Binary** Simply Easy Learning