
Variabel dan Tipe Data Dasar Python
Ketika belajar bahasa pemrograman apapun, ada dua konsep fundamental yang perlu Anda kuasai terlebih dahulu: variabel dan tipe data.
String adalah salah satu tipe data paling dasar dan sering digunakan dalam pemrograman Python. Kemampuan untuk memanipulasi dan bekerja dengan string sangat penting bagi programmer Python. Artikel ini akan membahas secara mendalam tentang string dan berbagai teknik manipulasi string yang akan sangat berguna dalam pengembangan aplikasi.
String di Python adalah rangkaian karakter yang diapit oleh tanda kutip. Python mendukung baik tanda kutip tunggal ('
) maupun tanda kutip ganda ("
). Ini memberikan fleksibilitas dalam penulisan string.
# Contoh string dengan kutip tunggal
nama = 'Budi Santoso'
# Contoh string dengan kutip ganda
pesan = "Halo, selamat datang di Python!"
print(nama)
print(pesan)
Budi Santoso
Halo, selamat datang di Python!
Untuk membuat string yang terdiri dari beberapa baris, Python menyediakan tanda kutip tiga ('''
atau """
):
# String multiline
deskripsi = """Python adalah bahasa pemrograman yang populer.
Bahasa ini mudah dipelajari dan memiliki sintaks yang sederhana.
Python dapat digunakan untuk berbagai keperluan."""
print(deskripsi)
Python adalah bahasa pemrograman yang populer.
Bahasa ini mudah dipelajari dan memiliki sintaks yang sederhana.
Python dapat digunakan untuk berbagai keperluan.
Terkadang kita perlu memasukkan karakter khusus dalam string, seperti tanda kutip, tab, atau baris baru. Untuk ini, Python menggunakan escape character dengan backslash (\
).
# Menggunakan escape character
print("Dia berkata, \"Python itu menyenangkan!\"")
print("Baris pertama\nBaris kedua")
print("Nama\tNilai\tKelas")
print("C:\\Users\\Documents")
Dia berkata, "Python itu menyenangkan!"
Baris pertama
Baris kedua
Nama Nilai Kelas
C:\Users\Documents
Berikut adalah beberapa escape character yang umum digunakan:
Escape Character | Deskripsi |
---|---|
\n |
Baris baru |
\t |
Tab |
\' |
Tanda kutip tunggal |
\" |
Tanda kutip ganda |
\\ |
Backslash |
\r |
Carriage return |
\b |
Backspace |
Jika Anda tidak ingin Python menafsirkan escape character, Anda bisa menggunakan raw string dengan menambahkan r
sebelum string.
# String biasa dengan escape character
print("C:\\Program Files\\Python")
# Raw string - escape character tidak diproses
print(r"C:\Program Files\Python")
C:\Program Files\Python
C:\Program Files\Python
String di Python adalah rangkaian karakter dengan urutan (sequence). Ini berarti kita dapat mengakses setiap karakter menggunakan indeksnya.
Python menggunakan indeks berbasis nol (zero-indexed), artinya karakter pertama memiliki indeks 0, karakter kedua indeks 1, dan seterusnya.
text = "Python"
# Mengakses karakter dengan indeks
print("Karakter pertama:", text[0])
print("Karakter kedua:", text[1])
print("Karakter terakhir:", text[5])
# Indeks negatif (menghitung dari belakang)
print("Karakter terakhir:", text[-1])
print("Karakter terakhir kedua:", text[-2])
Karakter pertama: P
Karakter kedua: y
Karakter terakhir: n
Karakter terakhir: n
Karakter terakhir kedua: o
Terdapat 2 istilah index:
Slicing memungkinkan Anda mengambil sebagian (substring) dari sebuah string.
text = "Python Programming"
# Slicing dengan format [start:end]
print(text[0:6]) # Karakter dari indeks 0 sampai 5
print(text[7:18]) # Karakter dari indeks 7 sampai 17
# Jika start dihilangkan, slicing dimulai dari awal string
print(text[:6]) # Sama dengan text[0:6]
# Jika end dihilangkan, slicing sampai akhir string
print(text[7:]) # Karakter dari indeks 7 sampai akhir
# Slicing dengan indeks negatif
print(text[-11:]) # 11 karakter terakhir
print(text[:-12]) # Semua karakter kecuali 12 karakter terakhir
# Slicing dengan langkah (step)
print(text[0:18:2]) # Setiap karakter kedua (langkah 2)
print(text[::-1]) # String terbalik
Python
Programming
Python
Programming
Programming
Python
Pto rgamn
gnimmargorP nohtyP
String di Python bersifat immutable (tidak dapat diubah). Ini berarti setelah string dibuat, Anda tidak dapat mengubah karakter individualnya.
nama = "Budi"
print("Nama awal:", nama)
# Mencoba mengubah karakter dalam string akan menghasilkan error
try:
nama[0] = "R" # Ini akan menyebabkan TypeError
except TypeError as e:
print("Error:", e)
# Cara yang benar untuk "mengubah" string adalah dengan membuat string baru
nama = "Rudi"
print("Nama baru:", nama)
Nama awal: Budi
Error: 'str' object does not support item assignment
Nama baru: Rudi
Anda dapat menggabungkan string menggunakan operator +
.
nama_depan = "Budi"
nama_belakang = "Santoso"
# Concatenation dengan operator +
nama_lengkap = nama_depan + " " + nama_belakang
print(nama_lengkap)
# Menggabungkan banyak string
alamat = "Jl. " + "Merdeka " + "No. " + "123"
print(alamat)
Budi Santoso
Jl. Merdeka No. 123
Operator *
digunakan untuk mengulang sebuah string.
# Mengulang string dengan operator *
garis = "-" * 20
print(garis)
pattern = "+-" * 10
print(pattern)
kata = "Python "
print(kata * 3)
--------------------
+-+-+-+-+-+-+-+-+-+-
Python Python Python
Untuk mendapatkan panjang (jumlah karakter) sebuah string, gunakan fungsi len()
.
text1 = "Hello"
text2 = "Python Programming"
text3 = "こんにちは" # 'Konnichiwa' dalam karakter Jepang
print("Panjang text1:", len(text1))
print("Panjang text2:", len(text2))
print("Panjang text3:", len(text3))
Panjang text1: 5
Panjang text2: 18
Panjang text3: 5
Anda dapat menggunakan operator in
dan not in
untuk memeriksa apakah suatu substring ada dalam string.
kalimat = "Python adalah bahasa pemrograman yang populer"
# Cek apakah substring ada dalam string
print("Python" in kalimat)
print("Java" in kalimat)
print("Java" not in kalimat)
# Aplikasi dalam kondisional
kata = "Python"
if kata in kalimat:
print(f"Kata '{kata}' ditemukan dalam kalimat")
else:
print(f"Kata '{kata}' tidak ditemukan dalam kalimat")
True
False
True
Kata 'Python' ditemukan dalam kalimat
Python memiliki banyak metode bawaan untuk memanipulasi string. Berikut beberapa metode yang sering digunakan:
text = "Python programming"
# Ubah ke huruf besar
print(text.upper())
# Ubah ke huruf kecil
print(text.lower())
# Kapitalisasi huruf pertama saja
print(text.capitalize())
# Kapitalisasi huruf pertama setiap kata
print(text.title())
# Swap case (tukar huruf besar/kecil)
mixed = "PyThOn PrOgRaMmInG"
print(mixed.swapcase())
PYTHON PROGRAMMING
python programming
Python programming
Python Programming
pYtHoN pRoGrAmMiNg
text = "Python adalah bahasa Python yang disukai oleh programmer Python"
# Hitung kemunculan substring
count = text.count("Python")
print(f"Kata 'Python' muncul {count} kali")
# Cari posisi pertama substring
position = text.find("Python")
print(f"'Python' pertama ditemukan pada indeks: {position}")
# Cari posisi substring berikutnya
position = text.find("Python", position + 1)
print(f"'Python' kedua ditemukan pada indeks: {position}")
# Jika tidak ditemukan, find() mengembalikan -1
position = text.find("Java")
print(f"'Java' ditemukan pada indeks: {position}")
# index() mirip dengan find(), tapi melempar ValueError jika tidak ditemukan
try:
position = text.index("Java")
except ValueError as e:
print(f"Error saat mencari 'Java': {e}")
# Ganti substring
new_text = text.replace("Python", "Java")
print(f"Setelah replace: {new_text}")
# Ganti dengan batasan jumlah
new_text = text.replace("Python", "Java", 2)
print(f"Setelah replace dengan batas 2: {new_text}")
Kata 'Python' muncul 3 kali
'Python' pertama ditemukan pada indeks: 0
'Python' kedua ditemukan pada indeks: 18
'Java' ditemukan pada indeks: -1
Error saat mencari 'Java': substring not found
Setelah replace: Java adalah bahasa Java yang disukai oleh programmer Java
Setelah replace dengan batas 2: Java adalah bahasa Java yang disukai oleh programmer Python
# String dengan spasi di awal dan akhir
text = " Python "
# Hapus spasi di awal dan akhir
print(f"'{text.strip()}'")
# Hapus spasi hanya di awal
print(f"'{text.lstrip()}'")
# Hapus spasi hanya di akhir
print(f"'{text.rstrip()}'")
# Strip karakter tertentu
text2 = "###Python###"
print(f"'{text2.strip('#')}'")
# Padding kiri dengan zfill (zero fill)
num = "42"
print(num.zfill(5)) # Tambahkan 0 di depan sampai panjang 5
# Padding kiri dengan ljust dan kanan dengan rjust
word = "Python"
print(word.ljust(10, '-')) # Padding kanan dengan '-' sampai panjang 10
print(word.rjust(10, '-')) # Padding kiri dengan '-' sampai panjang 10
# Tengahkan teks
print(word.center(20, '*'))
'Python'
'Python '
' Python'
'Python'
00042
Python----
----Python
*******Python*******
# Split - memecah string menjadi list
kalimat = "Python adalah bahasa pemrograman yang populer"
kata = kalimat.split()
print("Split berdasarkan spasi:", kata)
# Split dengan delimiter tertentu
csv = "apple,banana,orange,grape"
fruits = csv.split(",")
print("Split berdasarkan koma:", fruits)
# Split dengan batasan jumlah
result = kalimat.split(" ", 2)
print("Split dengan batas 2:", result)
# Splitlines - memecah string berdasarkan baris baru
text = "Baris 1\nBaris 2\nBaris 3"
lines = text.splitlines()
print("Splitlines:", lines)
# Join - menggabungkan elemen list menjadi string
kata = ["Python", "adalah", "bahasa", "pemrograman"]
kalimat = " ".join(kata)
print("Join dengan spasi:", kalimat)
fruits = ["apple", "banana", "orange"]
text = ", ".join(fruits)
print("Join dengan koma dan spasi:", text)
# Aplikasi praktis join dan split
# Format paths lintas platform
path_parts = ["Users", "username", "Documents", "file.txt"]
unix_path = "/".join(path_parts)
windows_path = "\\".join(path_parts)
print("Unix path:", unix_path)
print("Windows path:", windows_path)
Split berdasarkan spasi: ['Python', 'adalah', 'bahasa', 'pemrograman', 'yang', 'populer']
Split berdasarkan koma: ['apple', 'banana', 'orange', 'grape']
Split dengan batas 2: ['Python', 'adalah', 'bahasa pemrograman yang populer']
Splitlines: ['Baris 1', 'Baris 2', 'Baris 3']
Join dengan spasi: Python adalah bahasa pemrograman
Join dengan koma dan spasi: apple, banana, orange
Unix path: Users/username/Documents/file.txt
Windows path: Users\username\Documents\file.txt
# Metode untuk validasi konten string
print("'hello'.isalpha():", "hello".isalpha()) # Hanya huruf?
print("'hello123'.isalpha():", "hello123".isalpha())
print("'123'.isdigit():", "123".isdigit()) # Hanya angka?
print("'123.45'.isdigit():", "123.45".isdigit())
print("'hello123'.isalnum():", "hello123".isalnum()) # Huruf atau angka?
print("'hello-123'.isalnum():", "hello-123".isalnum())
print("'HELLO'.isupper():", "HELLO".isupper()) # Semua kapital?
print("'Hello'.isupper():", "Hello".isupper())
print("'hello'.islower():", "hello".islower()) # Semua lowercase?
print("'Hello'.islower():", "Hello".islower())
print("'Hello World'.istitle():", "Hello World".istitle()) # Format judul?
print("'Hello world'.istitle():", "Hello world".istitle())
print("' '.isspace():", " ".isspace()) # Hanya whitespace?
print("' a '.isspace():", " a ".isspace())
# Aplikasi praktis
def validasi_input(text):
if not text:
return "Input tidak boleh kosong"
elif text.isdigit():
return f"{text} adalah angka valid"
elif text.isalpha():
return f"{text} adalah teks valid (tanpa spasi)"
elif text.isalnum():
return f"{text} adalah alfanumerik valid (tanpa spasi)"
else:
return f"{text} berisi karakter khusus atau spasi"
inputs = ["Python", "123", "Python3", "Hello World", "", "#$%"]
for inp in inputs:
print(validasi_input(inp))
'hello'.isalpha(): True
'hello123'.isalpha(): False
'123'.isdigit(): True
'123.45'.isdigit(): False
'hello123'.isalnum(): True
'hello-123'.isalnum(): False
'HELLO'.isupper(): True
'Hello'.isupper(): False
'hello'.islower(): True
'Hello'.islower(): False
'Hello World'.istitle(): True
'Hello world'.istitle(): False
' '.isspace(): True
' a '.isspace(): False
Python adalah teks valid (tanpa spasi)
123 adalah angka valid
Python3 adalah alfanumerik valid (tanpa spasi)
Hello World berisi karakter khusus atau spasi
Input tidak boleh kosong
#$% berisi karakter khusus atau spasi
Python menyediakan beberapa cara untuk memformat string, membuat string dinamis yang berisi variabel dan ekspresi.
# Format dasar
nama = "Budi"
umur = 25
print("Nama: {}, Umur: {}".format(nama, umur))
# Format dengan indeks
print("Umur: {1}, Nama: {0}".format(nama, umur))
# Format dengan nama parameter
print("Nama: {nama}, Umur: {umur}".format(nama=nama, umur=umur))
# Format angka
harga = 1250000
print("Harga: Rp {:,}".format(harga)) # Format dengan pemisah ribuan
# Format presisi floating point
pi = 3.14159
print("Nilai pi dengan 2 desimal: {:.2f}".format(pi))
# Padding dan alignment
for i in range(1, 11):
print("Bilangan: {:2d}, Kuadrat: {:3d}, Kubik: {:4d}".format(i, i**2, i**3))
# Format width dengan alignment
print("{:<20}".format("Kiri")) # Left aligned
print("{:>20}".format("Kanan")) # Right aligned
print("{:^20}".format("Tengah")) # Center aligned
print("{:*^20}".format("Tengah")) # Center aligned with fill
Nama: Budi, Umur: 25
Umur: 25, Nama: Budi
Nama: Budi, Umur: 25
Harga: Rp 1,250,000
Nilai pi dengan 2 desimal: 3.14
Bilangan: 1, Kuadrat: 1, Kubik: 1
Bilangan: 2, Kuadrat: 4, Kubik: 8
Bilangan: 3, Kuadrat: 9, Kubik: 27
Bilangan: 4, Kuadrat: 16, Kubik: 64
Bilangan: 5, Kuadrat: 25, Kubik: 125
Bilangan: 6, Kuadrat: 36, Kubik: 216
Bilangan: 7, Kuadrat: 49, Kubik: 343
Bilangan: 8, Kuadrat: 64, Kubik: 512
Bilangan: 9, Kuadrat: 81, Kubik: 729
Bilangan: 10, Kuadrat: 100, Kubik: 1000
Kiri
Kanan
Tengah
*******Tengah********
Sejak Python 3.6, f-strings menyediakan cara yang lebih ringkas dan intuitif untuk memformat string.
nama = "Budi"
umur = 25
tinggi = 175.5
# Format dasar
print(f"Nama: {nama}, Umur: {umur}")
# Ekspresi dalam f-string
print(f"Nama: {nama}, Tahun lahir: {2023 - umur}")
# Format angka
harga = 1250000
print(f"Harga: Rp {harga:,}")
# Format presisi floating point
print(f"Tinggi: {tinggi:.1f} cm")
# Padding dan alignment
for i in range(1, 6):
print(f"Bilangan: {i:2d}, Kuadrat: {i**2:3d}, Kubik: {i**3:4d}")
# Representasi berbeda
angka = 42
print(f"Decimal: {angka:d}, Binary: {angka:b}, Octal: {angka:o}, Hex: {angka:x}")
# Format tanggal
from datetime import datetime
sekarang = datetime.now()
print(f"Tanggal sekarang: {sekarang:%d/%m/%Y}")
print(f"Waktu sekarang: {sekarang:%H:%M:%S}")
print(f"Tanggal dan waktu: {sekarang:%d/%m/%Y %H:%M}")
# Nested f-strings
level = 2
print(f"Level: {level}, Status: {'{'+'#'*level+'}'}")
Nama: Budi, Umur: 25
Nama: Budi, Tahun lahir: 1998
Harga: Rp 1,250,000
Tinggi: 175.5 cm
Bilangan: 1, Kuadrat: 1, Kubik: 1
Bilangan: 2, Kuadrat: 4, Kubik: 8
Bilangan: 3, Kuadrat: 9, Kubik: 27
Bilangan: 4, Kuadrat: 16, Kubik: 64
Bilangan: 5, Kuadrat: 25, Kubik: 125
Decimal: 42, Binary: 101010, Octal: 52, Hex: 2a
Tanggal sekarang: 07/04/2025
Waktu sekarang: 09:50:08
Tanggal dan waktu: 07/04/2025 09:50
Level: 2, Status: {##}
Ini adalah cara lama untuk memformat string di Python, tetapi masih banyak digunakan dalam kode lama.
nama = "Budi"
umur = 25
tinggi = 175.5
# Format dasar
print("Nama: %s, Umur: %d" % (nama, umur))
# Format angka
print("Tinggi: %.1f cm" % tinggi)
# Multiple formatting
print("Nama: %s, Umur: %d, Tinggi: %.1f cm" % (nama, umur, tinggi))
# Padding
print("Bilangan: %2d, Kuadrat: %3d" % (5, 25))
Nama: Budi, Umur: 25
Tinggi: 175.5 cm
Nama: Budi, Umur: 25, Tinggi: 175.5 cm
Bilangan: 5, Kuadrat: 25
Mari kita lihat beberapa contoh aplikasi praktis dari manipulasi string:
def verifikasi_password(password):
"""
Memverifikasi kekuatan password berdasarkan kriteria:
- Minimal 8 karakter
- Mengandung huruf besar
- Mengandung huruf kecil
- Mengandung angka
- Mengandung karakter khusus
"""
errors = []
if len(password) < 8:
errors.append("Password harus memiliki minimal 8 karakter")
if not any(c.isupper() for c in password):
errors.append("Password harus mengandung minimal 1 huruf besar")
if not any(c.islower() for c in password):
errors.append("Password harus mengandung minimal 1 huruf kecil")
if not any(c.isdigit() for c in password):
errors.append("Password harus mengandung minimal 1 angka")
special_chars = "!@#$%^&*()_+-=[]{}|;:'\",.<>/?"
if not any(c in special_chars for c in password):
errors.append("Password harus mengandung minimal 1 karakter khusus")
if not errors:
return "Password memenuhi semua kriteria keamanan", True
else:
return "\n".join(errors), False
# Test dengan beberapa password
passwords = [
"password",
"Password",
"Password1",
"Password1!",
"Pas1!"
]
for password in passwords:
result, is_valid = verifikasi_password(password)
status = "Valid" if is_valid else "Invalid"
print(f"Password: {password} ({status})")
print(result)
print()
Password: password (Invalid)
Password harus mengandung minimal 1 huruf besar
Password harus mengandung minimal 1 angka
Password harus mengandung minimal 1 karakter khusus
Password: Password (Invalid)
Password harus mengandung minimal 1 angka
Password harus mengandung minimal 1 karakter khusus
Password: Password1 (Invalid)
Password harus mengandung minimal 1 karakter khusus
Password: Password1! (Valid)
Password memenuhi semua kriteria keamanan
Password: Pas1! (Invalid)
Password harus memiliki minimal 8 karakter
def ekstrak_email(text):
"""Ekstrak alamat email dari teks"""
words = text.split()
emails = []
for word in words:
# Hapus tanda baca di awal dan akhir kata
word = word.strip(",.:;!?()[]{}\"'")
# Cek apakah kata mengandung @ dan titik
if "@" in word and "." in word.split("@")[1]:
emails.append(word)
return emails
def ekstrak_nomor_telepon(text):
"""Ekstrak nomor telepon dari teks (format: +62xxx atau 08xxx)"""
words = text.split()
phones = []
for word in words:
# Hapus tanda baca di awal dan akhir kata
word = word.strip(",.:;!?()[]{}\"'")
# Cek format nomor telepon Indonesia
if (word.startswith("+62") or word.startswith("08")) and word[1:].isdigit():
phones.append(word)
return phones
# Contoh teks
text = """
Hubungi kami di [email protected] atau [email protected] untuk informasi lebih lanjut.
Nomor telepon yang bisa dihubungi: +6281234567890 atau 081987654321.
Email marketing kami adalah [email protected].
"""
# Ekstrak data
emails = ekstrak_email(text)
phones = ekstrak_nomor_telepon(text)
print("Email yang ditemukan:")
for email in emails:
print(f"- {email}")
print("\nNomor telepon yang ditemukan:")
for phone in phones:
print(f"- {phone}")
Email yang ditemukan:
- [email protected]
- [email protected]
- [email protected].
Nomor telepon yang ditemukan:
- +6281234567890
- 081987654321.
def analisis_teks(text):
"""Analisis dasar sebuah teks"""
# Pembersihan teks
text = text.lower()
# Hitung statistik dasar
jumlah_karakter = len(text)
jumlah_kata = len(text.split())
# Hitung jumlah kalimat (perkiraan)
kalimat = text.split(".")
jumlah_kalimat = len([k for k in kalimat if k.strip()])
# Frekuensi kata
kata_kata = text.split()
kata_bersih = []
for kata in kata_kata:
# Bersihkan tanda baca
kata = kata.strip(",.!?;:'\"()[]{}").lower()
if kata:
kata_bersih.append(kata)
frekuensi_kata = {}
for kata in kata_bersih:
if kata in frekuensi_kata:
frekuensi_kata[kata] += 1
else:
frekuensi_kata[kata] = 1
# Sortir frekuensi kata
kata_terurut = sorted(frekuensi_kata.items(), key=lambda x: x[1], reverse=True)
# Hasil analisis
hasil = {
"jumlah_karakter": jumlah_karakter,
"jumlah_kata": jumlah_kata,
"jumlah_kalimat": jumlah_kalimat,
"kata_terbanyak": kata_terurut[:5] if kata_terurut else []
}
return hasil
# Contoh teks
sample_text = """
Python adalah bahasa pemrograman yang populer. Python didesain untuk menjadi mudah dibaca dan ditulis.
Python dapat digunakan untuk berbagai aplikasi seperti web development, data analysis, machine learning, dan banyak lagi.
Python memiliki sintaks yang sederhana dan mudah dipelajari. Python adalah bahasa pemrograman yang sangat fleksibel.
"""
# Analisis teks
hasil = analisis_teks(sample_text)
# Tampilkan hasil
print("Hasil Analisis Teks:")
print(f"Jumlah Karakter: {hasil['jumlah_karakter']}")
print(f"Jumlah Kata: {hasil['jumlah_kata']}")
print(f"Jumlah Kalimat: {hasil['jumlah_kalimat']}")
print("\nKata yang Paling Sering Muncul:")
for kata, jumlah in hasil['kata_terbanyak']:
print(f"- '{kata}': {jumlah} kali")
Hasil Analisis Teks:
Jumlah Karakter: 365
Jumlah Kata: 54
Jumlah Kalimat: 5
Kata yang Paling Sering Muncul:
- 'python': 5 kali
- 'adalah': 2 kali
- 'bahasa': 2 kali
- 'pemrograman': 2 kali
- 'yang': 2 kali
Beberapa tips untuk memperhatikan performa saat bekerja dengan string di Python:
Untuk menggabungkan banyak string, lebih efisien menggunakan join()
daripada operator +
.
# Kurang efisien
result = ""
for i in range(1000):
result += str(i)
# Lebih efisien
result = "".join(str(i) for i in range(1000))
Python menyimpan string yang sama dalam satu lokasi memori untuk menghemat memori. Ini terjadi otomatis untuk string sederhana.
Slicing membuat salinan baru, jadi hindari melakukan slicing berulang kali pada string yang besar.
Untuk operasi I/O biner atau manipulasi data besar, pertimbangkan menggunakan tipe bytes
daripada str
.
Saat bekerja dengan karakter internasional atau membaca file, Anda mungkin menghadapi masalah encoding.
# String dengan karakter UTF-8
text = "Python 是一种流行的编程语言"
print(text)
# Mengonversi string ke bytes
encoded = text.encode('utf-8')
print(encoded)
# Mengonversi bytes kembali ke string
decoded = encoded.decode('utf-8')
print(decoded)
# Membuka file dengan encoding yang tepat
try:
# Simulasi membaca file
with open("nonexistent_file.txt", "r", encoding="utf-8") as f:
content = f.read()
except FileNotFoundError:
print("Untuk membuka file dengan encoding tertentu:")
print('with open("file.txt", "r", encoding="utf-8") as f:')
print(' content = f.read()')
Python 是一种流行的编程语言
b'Python \xe6\x98\xaf\xe4\xb8\x80\xe7\xa7\x8d\xe6\xb5\x81\xe8\xa1\x8c\xe7\x9a\x84\xe7\xbc\x96\xe7\xa8\x8b\xe8\xaf\xad\xe8\xa8\x80'
Python 是一种流行的编程语言
Untuk membuka file dengan encoding tertentu:
with open("file.txt", "r", encoding="utf-8") as f:
content = f.read()
# Menangani string panjang dengan line continuation
long_text = (
"Ini adalah contoh string yang sangat panjang. "
"Python memungkinkan kita memecah string menjadi beberapa baris "
"dengan menggunakan tanda kurung dan concatenation otomatis. "
"Ini membuat kode lebih mudah dibaca."
)
print(long_text)
Ini adalah contoh string yang sangat panjang. Python memungkinkan kita memecah string menjadi beberapa baris dengan menggunakan tanda kurung dan concatenation otomatis. Ini membuat kode lebih mudah dibaca.
String adalah salah satu tipe data fundamental dalam Python yang memiliki banyak fitur dan metode untuk manipulasi. Pemahaman yang baik tentang operasi string akan sangat membantu Anda dalam sebagian besar tugas pemrograman, mulai dari pemrosesan teks sederhana hingga analisis data kompleks.
Beberapa poin penting yang perlu diingat:
Penguasaan atas manipulasi string adalah keterampilan penting bagi programmer Python, karena sebagian besar aplikasi perlu bekerja dengan data tekstual dalam berbagai bentuk.
Dengan menguasai teknik-teknik yang dibahas dalam artikel ini, Anda akan memiliki fondasi yang kuat untuk menangani beragam tugas pemrosesan teks dalam Python.
Ketika belajar bahasa pemrograman apapun, ada dua konsep fundamental yang perlu Anda kuasai terlebih dahulu: variabel dan tipe data.
Jika Anda baru memulai perjalanan programming, “Hello World” adalah program pertama yang wajib Anda buat.
Pernahkah Anda mengalami situasi ini: Anda bekerja pada beberapa proyek Python yang membutuhkan versi package yang berbeda?
Panduan Instalasi Python di Windows, macOS, dan Linux Python telah menjadi salah satu bahasa pemrograman terpopuler di dunia dengan pertumbuhan yang luar biasa dalam beberapa tahun terakhir.