Pengiris Huruf di Python

Hello, aspiring Python programmers! Today, we're going to embark on an exciting journey through the world of string slicing in Python.

Python - Slicing Strings

Versi Bahasa Melayu:

Selamat pagi, pemrogram Python yang berhasrat! Hari ini, kita akan melakukan perjalanan yang menarik melalui dunia pengiris huruf di Python.

As your friendly neighborhood computer science teacher, I'm here to guide you through this fascinating topic step by step. So, grab your favorite beverage, get comfortable, and let's dive in!

Versi Bahasa Melayu:

Sebagai guru sains komputer yang mesra di kampung halaman anda, saya di sini untuk membimbing anda melalui topik yang menarik ini langkah demi langkah. Jadi, ambil minuman kesukaan anda,Pastikan anda selesa, dan mari kita melompatlah!

Penakalan Huruf di Python

Before we can slice and dice our strings, we need to understand how Python indexes them. Think of a string as a sequence of characters, each with its own unique address or index.

Versi Bahasa Melayu:

Sebelum kita dapat mengiris dan memotong rentetan kita, kita perlu untuk memahami bagaimana Python menakalankan mereka. Pertiaskan rentetan sebagai urutan karakter, dengan masing-masing memiliki alamat atau indeks yang unik.

Let's start with a simple example:

Versi Bahasa Melayu:

Mari kita mula dengan contoh yang sederhana:

greeting = "Hello, World!"

In this string, each character has a position, starting from 0. Yes, you heard that right - in Python, we start counting from 0, not 1. It's like a weird programming tradition, but you'll get used to it!

Versi Bahasa Melayu:

Dalam rentetan ini, setiap karakter memiliki posisi, dimulai dari 0. Betul, anda dengar baik - di Python, kita mula mengira dari 0, bukan 1. Ia seperti tradisi pemrograman yang aneh, tetapi anda akan terbiasa dengannya!

Here's how the indexing looks:

Versi Bahasa Melayu:

Berikut adalah seperti apa penakalan tersebut:

H  e  l  l  o  ,     W  o  r  l  d  !
0  1  2  3  4  5  6  7  8  9 10 11 12

To access a specific character, we use square brackets [] after the string name, with the index inside:

Versi Bahasa Melayu:

Untuk mengakses karakter khusus, kita menggunakan kurungan persegi [] setelah nama rentetan, dengan indeks di dalamnya:

print(greeting[0])  # Output: H
print(greeting[7])  # Output: W

Penakalan Huruf Negatif dan Positif di Python

Now, here's where it gets interesting. Python allows us to use both positive and negative indexes. Positive indexes work as we've just seen, starting from 0 at the beginning of the string. Negative indexes, on the other hand, start from -1 at the end of the string and move backwards.

Versi Bahasa Melayu:

Sekarang, inilah tempat yang menarik. Python membenarkan kita untuk menggunakan indeks positif dan negatif. Indeks positif bekerja seperti yang kita lihat tadi, dimulai dari 0 di permulaan rentetan. Indeks negatif, di sisi lain, dimulai dari -1 di penghujung rentetan dan bergerak ke belakang.

H  e  l  l  o  ,     W  o  r  l  d  !
0  1  2  3  4  5  6  7  8  9 10 11 12
-13-12-11-10 -9 -8 -7 -6 -5 -4 -3 -2 -1

Let's try it out:

Versi Bahasa Melayu:

Mari kita cubanya:

print(greeting[-1])   # Output: !
print(greeting[-6])   # Output: W

Pengiris Huruf di Python

Now that we've mastered indexing, let's move on to slicing. Slicing allows us to extract a portion of the string. The basic syntax for slicing is:

Versi Bahasa Melayu:

Sekarang kita telah kesusilaan penakalan, mari kita pindah ke pengiris. Pengiris membenarkan kita untuk mengekstrak sebahagian rentetan. Sintaks dasar untuk pengiris adalah:

string[start:end]

This will give us a substring starting from the start index up to, but not including, the end index. It's like slicing a loaf of bread - you decide where to start and where to stop!

Versi Bahasa Melayu:

Ini akan memberikan kita subrentetan yang bermula dari indeks start hingga, tetapi tidak termasuk, indeks end. Ia seperti mengiris atas roti - anda yang memutuskan di mana untuk mula dan di mana untuk berhenti!

Let's see some examples:

Versi Bahasa Melayu:

Mari kita lihat beberapa contoh:

print(greeting[0:5])   # Output: Hello
print(greeting[7:12])  # Output: World

Here's a pro tip: if you omit the start index, Python assumes you want to start from the beginning. If you omit the end index, it assumes you want to go all the way to the end:

Versi Bahasa Melayu:

Ini adalah tips pro: jika anda abaikan indeks start, Python menganggap anda mahu mula dari permulaan. Jika anda abaikan indeks end, ia menganggap anda mahu pergi keseluruhannya:

print(greeting[:5])    # Output: Hello
print(greeting[7:])    # Output: World!

Pengiris Huruf dengan Penakalan Negatif di Python

Remember those negative indexes we talked about earlier? We can use them in slicing too! This is particularly useful when you want to slice from the end of the string:

Versi Bahasa Melayu:

Ingat indeks negatif yang kita bincangkan tadi? Kita juga boleh menggunakannya dalam pengiris! Ini adalah sangat berguna apabila anda mahu mengiris dari penghujung rentetan:

print(greeting[-6:-1])  # Output: World
print(greeting[-6:])    # Output: World!

Nilai Default bagi Indeks dengan Pengiris Huruf

Python's slicing feature is quite forgiving. If you don't specify a start or end index, it uses some sensible defaults:

Versi Bahasa Melayu:

Fungsi pengiris di Python adalah sangat penyabar. Jika anda tidak menetapkan indeks mula atau akhir, ia menggunakan beberapa nilai default yang masuk akal:

  • If start is omitted, it defaults to the beginning of the string (index 0)
  • If end is omitted, it defaults to the end of the string

Versi Bahasa Melayu:

  • Jika start diabaikan, ia default ke permulaan rentetan (indeks 0)
  • Jika end diabaikan, ia default ke penghujung rentetan

Here's a table summarizing these defaults:

Versi Bahasa Melayu:

Berikut adalah jadual yang ringkaskan nilai default ini:

Slice Syntax Meaning
string[:] The entire string
string[:end] From the start to end-1
string[start:] From start to the end
string[start:end] From start to end-1

Let's see these in action:

Versi Bahasa Melayu:

Mari kita lihat ini dalam tindakan:

print(greeting[:])      # Output: Hello, World!
print(greeting[:5])     # Output: Hello
print(greeting[7:])     # Output: World!
print(greeting[2:10])   # Output: llo, Wor

Jenis Kembali bagi Pengiris Huruf

Here's an important point to remember: when you slice a string, you get back another string. This means you can perform further string operations on the result of a slice.

Versi Bahasa Melayu:

Ini adalah titik penting untuk diingat: apabila anda mengiris rentetan, anda mendapat kembali rentetan lain. Ini berarti anda boleh melakukan operasi rentetan lebih jauh pada hasil pengiris.

sliced = greeting[7:]
print(type(sliced))  # Output: <class 'str'>
print(sliced.upper())  # Output: WORLD!

Before we wrap up, let's talk about one more cool feature of string slicing: the step value. You can add a third number to your slice, which determines the step or stride:

Versi Bahasa Melayu:

Sebelum kita tutup, mari kita bercakap tentang satu lagi fitur yang kool bagi pengiris rentetan: nilai langkah. Anda boleh menambahkan nombor ketiga ke atas pengiris anda, yang menentukan langkah atau langkah:

string[start:end:step]

For example:

Versi Bahasa Melayu:

Sebagai contoh:

print(greeting[::2])    # Output: Hlo ol!
print(greeting[::-1])   # Output: !dlroW ,olleH

The first example takes every second character, while the second one reverses the string entirely!

And there you have it, folks! You've just become a Python string slicing ninja. Remember, practice makes perfect, so don't hesitate to experiment with these concepts. Try slicing your name, your favorite quote, or even this tutorial text!

Versi Bahasa Melayu:

Dan itu lah, rakyat! Anda baru menjadi ninja pengiris rentetan Python. Ingat, latihan membuat keramat, jadi jangan segan untuk mencuba konsep ini. Cuba untuk mengiris nama anda, petikan kesukaan anda, atau bahkan teks tutorial ini!

String slicing is like wielding a magical sword in the world of Python. It allows you to carve out exactly the pieces of text you need, making your code more efficient and elegant. So go forth and slice those strings with confidence!

Versi Bahasa Melayu:

Pengiris rentetan adalah seperti membawa pedang penyihir di atas dunia Python. Ia membenarkan anda untuk mengiris tepat-pasti bagi rakuan teks yang anda perlukan, membuat kod anda lebih efisien dan elegan. Jadi, mari kita melangkah daniris rakuan-rakuan itu dengan keyakinan!

Happy coding, and until next time, may your code be bug-free and your strings perfectly sliced!

Versi Bahasa Melayu:

Selamat coding, dan hingga masa berikutnya, hendaklah kod anda bebas dari pepijat dan rakuan anda dipotong sempurna!

Credits: Image by storyset