Python menyediakan mekanisme mudah untuk menukar rentetan perenambelasan kepada nilai integer yang sepadan. Rentetan heks biasanya diwakili oleh satu siri digit dan awalan '0x' untuk menandakan sifat perenambelasannya. Mari kita terokai penyelesaian dan implikasi masing-masing.
Tanpa Awalan '0x'
Jika tiada awalan '0x', penukaran memerlukan spesifikasi eksplisit bagi asas. Langkah ini penting kerana Python tidak boleh membuat kesimpulan asas semata-mata daripada kandungan rentetan. Pertimbangkan contoh berikut:
x = int("deadbeef", 16)
Di sini, asas ditetapkan secara eksplisit kepada 16 (heksadesimal), menghasilkan nilai integer yang betul iaitu 3735928559.
Dengan '0x' Awalan
Terutamanya, jika rentetan perenambelasan mengandungi awalan '0x', Python memaparkan tingkah laku pintar. Dalam kes ini, asas tidak perlu dinyatakan secara eksplisit. Python secara automatik mengesan kehadiran awalan dan mentafsir rentetan sebagai perenambelasan. Contohnya:
print(int("0xdeadbeef", 0))
Dalam senario ini, hujah asas 0 mencetuskan tingkah laku meneka awalan. Rentetan heks ditukar dengan betul kepada nilai integer 3735928559. Adalah penting untuk ambil perhatian bahawa penetapan asas masih diperlukan untuk menggunakan gelagat ini. Jika anda meninggalkan parameter asas, Python akan lalai kepada asas-10, yang membawa kepada penukaran yang salah.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Rentetan Heksadesimal kepada Integer dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!