Tujuannya adalah untuk membuat daftar dari paragraf pengguna dan iterasi sehingga saya dapat menghitung berapa banyak kata yang mengandung huruf khusus "j, x, q, z".
Contoh input:
Di sebuah lubang di tanah, hiduplah seorang hobbit. Bukan lubang yang kotor, kotor, basah, penuh dengan ujung-ujung cacing dan bau oozy, belum juga lubang kering, telanjang, berpasir yang tidak ada apa-apa untuk diduduki atau dimakan; itu adalah lubang hobbit, dan itu berarti kenyamanan.
Contoh output: 1 kata dengan karakter langka
Saya telah memulai kode tempat saya memecah paragraf pengguna ke dalam daftar, tetapi saya mengalami kesulitan untuk mengulangi daftar dan menemukan setiap contoh dari surat-surat khusus.
Inilah yang saya miliki sejauh ini:
def rareChar(words):
rareWords = 0
rareChars = ['j', 'x', 'q', 'z']
for astring in words:
wds = words.split()
for char in wds:
if char in rareChars:
rareWords = rareWords + 1
return rareWords
def CoolPara(words):
print(rareChar(words), 'word(s) with a rare character')
# DO NOT CHANGE CODE BELOW
print(CoolPara(input("Enter: ")))
Jika saya menjalankan dengan input contoh, saya mendapatkan output '0 kata (s) dengan karakter langka'. Bagaimana saya bisa memperbaikinya sehingga saya bisa mendapatkan hasil yang diharapkan. Setiap bantuan akan sangat dihargai karena saya masih relatif baru dalam pengkodean
Juga catatan singkat: Saya hanya diperbolehkan menggunakan metode / fungsi split () dan Len ()
sumber
.index
harus melakukan pekerjaanfor astring in words:
?Jawaban:
Mungkin ini bisa menjadi kesempatan untuk memperkenalkan Anda ke beberapa fitur python:
Jawaban ini menggunakan:
str
dicool_para
fungsi karena kode di bawah# DO NOT CHANGE CODE BELOW
komentar mencetak hasil dari pemanggilan fungsi.sumber
rare_chars()
menjadifind_rare_words()
.Idealnya Anda ingin menggunakan pemahaman daftar.
Ini memberi Anda:
sumber
Input: Halo ini adalah kalimat tentang kebun binatang
Output: 1 kata dengan karakter yang langka
sumber
Kode berikut adalah hasil edit Anda yang menghasilkan jawaban yang tepat
1
Menjawab:
sumber
Kode ini akan bekerja untuk Anda. Hapus tanda komentar kata-kata dan berikan pernyataan string kata-kata yang saya gunakan untuk menguji kode.
Metode para tidak diperlukan.
sumber
Solusi yang diberikan oleh Barb bekerja untuk satu huruf:
Tapi itu tidak bekerja dengan karakter mulitple seperti yang diminta oleh poster aslinya. Untuk mis. Ini tidak mengembalikan hasil yang benar:
Ini adalah versi yang sedikit lebih baik dari solusi Barb:
sumber