14. Bekerja dengan teks — Solusi pekerjaan rumah
File solusi .py ada di
exercises/14/homework/solutions/.
Soal 1 — Inisial
Soal. Cetak inisial seperti K.R. dari
nama depan dan belakang.
Cara berpikir. Huruf pertama sebuah nama adalah
name[0] (indeks nol, karena Python berbasis 0). Gabungkan
dengan f-string dan titik.
Solusi yang dikerjakan.
first = "Keiko"
last = "Raharja"
print(f"{first[0]}.{last[0]}.")Output:
K.R.
Kesalahan umum.
- Menggunakan
first[1]alih-alihfirst[0]. Indeks1adalah karakter kedua. Karakter pertama selalu berada di indeks0. - Menggunakan
first[0:1](slice) alih-alihfirst[0](satu karakter). Keduanya menghasilkan hasil yang sama, tapifirst[0]lebih sederhana.
Soal 2 — Mengandung
Soal. Cetak yes atau no
untuk apakah sebuah kalimat mengandung python.
Cara berpikir. Operator in
mengembalikan True ketika substring ditemukan, yang
langsung berpasangan dengan if.
Solusi yang dikerjakan.
sentence = "i am learning python this year"
if "python" in sentence:
print("yes")
else:
print("no")Kesalahan umum.
- Menggunakan
.find()dan memeriksa!= -1. Itu bekerja, tapiinlebih jelas ketika kamu hanya perlu tahu apakah kata itu ada.
Soal 3 — Sensor
Soal. Ganti setiap spasi dengan tanda hubung.
Solusi yang dikerjakan.
message = "meet me at noon"
dashed = message.replace(" ", "-")
print(dashed) # meet-me-at-noon.replace() Python hanya mengembalikan string baru, bukan
nilai hitungan kedua. Tidak perlu langkah ekstra untuk menyimpan hanya
stringnya.
Kesalahan umum.
- Mengharapkan
.replace()mengubahmessagesecara langsung. Method string di Python tidak pernah mengubah yang asli; mereka selalu mengembalikan string baru. Simpan hasilnya di variable untuk menggunakannya.
Tantangan — Panjang kata terakhir
Soal. Cetak tiga karakter terakhir dengan slice
negatif, dan panjangnya dengan len().
Solusi yang dikerjakan.
word = "programming"
print(word[-3:]) # ing
print(len(word)) # 11Karena -3 menghitung dari akhir, word[-3:]
memberikan tiga huruf terakhir dari kata apapun — tidak perlu
menghitung.
Kesalahan umum.
- Menulis
word[-3]alih-alihword[-3:]. Indeks tunggal mengembalikan satu karakter; slice dengan:mengembalikan substring dengan panjang yang ditentukan. word[len(word) - 3:]juga bekerja, tapiword[-3:]lebih pendek dan lebih jelas: "tiga dari akhir".
Selesai?
Kamu sekarang bisa memotong, mencari, dan mengganti teks. Bab terakhir Bagian 3 — Mendapatkan input — memungkinkan pengguna mengetikkan nilai, yang datang sebagai string untuk dipotong dan diperiksa.