Python - Pengekalan Jenis

Hai di sana, penyihir Python masa depan! Hari ini, kita akan melakukan perjalanan yang menarik ke dunia pengekalan jenis dalam Python. Jangan khawatir jika anda belum pernah mendengar tentang istilah ini sebelumnya – pada akhir tutorial ini, anda akan melakukan pengekalan jenis seperti profesional!

Python - Type Casting

Apa itu Pengekalan Jenis?

Sebelum kita kembali, mari kita mula dengan analogi yang simple. Bayangkan anda memiliki rak Lego. Ada yang bulat, ada yang persegi, dan ada yang wujud seperti bintang. Pengekalan jenis adalah seperti menggunakan kayu penyihir untuk mengubah satu bentuk ke bentuk lain. Dalam Python, kita melakukan hal yang sama, tetapi dengan jenis data bukannya bentuk Lego!

Pengekalan Tidak Terangkaui Python

Python adalah kue yang pintar. Kadang-kadang, ia secara automatik mengubah jenis data satu ke jenis data lain tanpa anda meminta. Ini dipanggil pengekalan tidak terangkaui.

Mari lihat contoh:

x = 5    # Ini adalah integer
y = 2.0  # Ini adalah rakit
z = x + y

print(z)
print(type(z))

Jika anda menjalankan kod ini, anda akan lihat:

7.0
<class 'float'>

Wah! Python secara automatik mengubah integer x kita ke rakit ketika kita menambahkannya ke y. Itu seperti Python memakai topi berpikir dan berkata, "Hmmm, saya tidak bisa menambah integer dan rakit secara langsung, jadi saya akan mengubah integer menjadi rakit terlebih dahulu!"

Pengekalan Terangkaui Python

Bagaimana jika kita ingin menjadi bos dan memberitahu Python jenis yang kita inginkan secara eksplisit? Itu tempat pengekalan terangkaui masuk. Itu seperti menggunakan kayu penyihir kita dengan sengaja untuk mengubah data kita.

Python menyediakan beberapa fungsi bawaan untuk tujuan ini. Mari lihat yang paling umum:

Fungsi int() Python

Fungsi int() mengubah nilai menjadi integer. Mari lihat ini dalam aksi:

a = int(3.14)
b = int("42")
c = int(True)

print(a, type(a))
print(b, type(b))
print(c, type(c))

Output:

3 <class 'int'>
42 <class 'int'>
1 <class 'int'>

Seperti yang dapat dilihat, int() dapat mengubah rakit, string (jika mereka mewakili integer yang valid), dan bahkan boolean menjadi integer. Itu seperti penyihir bentuk, tetapi untuk angka!

Fungsi float() Python

Fungsi float() adalah orang yang kita cari untuk mengubah nilai menjadi angka pecahan:

x = float(5)
y = float("3.14")
z = float("inf")

print(x, type(x))
print(y, type(y))
print(z, type(z))

Output:

5.0 <class 'float'>
3.14 <class 'float'>
inf <class 'float'>

Lihatlah itu! Kita telah mengubah integer, string, dan bahkan konsep tak terbatas menjadi rakit. Itu seperti mengubah rakitan Lego yang solid menjadi air – mereka sekarang dapat mengalir dan memiliki titik desimal!

Fungsi str() Python

Terakhir tapi tidak sedikit, kita memiliki fungsi str(). Fungsi ini seperti penulis cerita – ia dapat mengubah hampir semua menjadi string:

a = str(42)
b = str(3.14)
c = str(True)
d = str([1, 2, 3])

print(a, type(a))
print(b, type(b))
print(c, type(c))
print(d, type(d))

Output:

42 <class 'str'>
3.14 <class 'str'>
True <class 'str'>
[1, 2, 3] <class 'str'>

Keren! Kita telah mengubah angka, boolean, dan bahkan daftar menjadi string. Itu seperti fungsi str() adalah pelukis master, menggambar gambar dari apa pun yang kita berikan!

Konversi jenis Urutan

Sekarang, mari kita berbicara tentang mengubah antara jenis urutan yang berbeda. Python memiliki beberapa jenis urutan bawaan seperti daftar, tuple, dan set. Kita dapat mengubah antara jenis ini menggunakan fungsi masing-masing:

# Mengubah daftar ke tuple
my_list = [1, 2, 3, 4, 5]
my_tuple = tuple(my_list)
print(my_tuple, type(my_tuple))

# Mengubah tuple ke set
my_set = set(my_tuple)
print(my_set, type(my_set))

# Mengubah set kembali ke daftar
back_to_list = list(my_set)
print(back_to_list, type(back_to_list))

Output:

(1, 2, 3, 4, 5) <class 'tuple'>
{1, 2, 3, 4, 5} <class 'set'>
[1, 2, 3, 4, 5] <class 'list'>

Itu seperti kita bermain rakitan kursi musik dengan data kita, memindahkannya dari satu jenis ke jenis lain!

Fungsi Konversi Jenis Data

Mari rangkum semua fungsi pengekalan jenis yang kita pelajari dalam tabel yang praktis:

Fungsi Deskripsi Contoh
int() Mengubah ke integer int("42") → 42
float() Mengubah ke rakit float("3.14") → 3.14
str() Mengubah ke string str(42) → "42"
bool() Mengubah ke boolean bool(1) → True
list() Mengubah ke daftar list((1, 2, 3)) → [1, 2, 3]
tuple() Mengubah ke tuple tuple([1, 2, 3]) → (1, 2, 3)
set() Mengubah ke set set([1, 2, 2, 3]) → {1, 2, 3}

Ingat, fungsi ini adalah seperti pisau rakit Swiss Anda dalam Python – mereka sangat serba guna dan dapat membantu Anda keluar dari banyak situasi yang sulit!

Dan itu semua, orang! Kita telah melakukan perjalanan melalui negeri pengekalan jenis Python, dari konversi tidak terangkaui ke transformasi eksplisit. Kita telah melihat bagaimana Python dapat secara automatik mengubah jenis untuk kita, dan bagaimana kita dapat mengambil alih dan mengubah jenis kita sendiri.

Ingat, pengekalan jenis adalah alat yang kuat dalam rakit Python Anda. Ini memungkinkan Anda untuk membentuk data Anda agar sesuai dengan kebutuhan Anda, hanya seperti penyulptur membentuk klai menjadi patung yang indah. Dengan latihan, Anda akan melakukan pengekalan jenis seperti profesional pada saat yang lalu!

Jadi, pergi lah, pemrogram Python muda, dan ekalkanlah! Dan selalu ingat – di dunia Python, setiap jenis memiliki tempatnya, tetapi dengan kekuatan pengekalan, tidak ada jenis yang tetap di atas batu. Selamat coding!

Credits: Image by storyset