تمرين إعادة البناء
عداد تكرار الكلمات
احسب أكثر الكلمات تكراراً في ملف نصي مع تنظيف بسيط للترقيم.
python
~20 دقيقة
متوسط
أعد بناء الكود
Rebuild
هذا هو الكود. اكتبه بنفسك.
الكود المرجعي
import argparse
import re
from collections import Counter
from pathlib import Path
WORD_RE = re.compile(r"[A-Za-z0-9_']+")
def count_words(text: str) -> Counter[str]:
words = (match.group(0).lower() for match in WORD_RE.finditer(text))
return Counter(words)
def main() -> None:
parser = argparse.ArgumentParser(description="Show the most common words in a text file.")
parser.add_argument("text_file", type=Path)
parser.add_argument("--limit", type=int, default=20)
args = parser.parse_args()
text = args.text_file.read_text(encoding="utf-8", errors="replace")
for word, count in count_words(text).most_common(args.limit):
print(f"{word}: {count}")
if __name__ == "__main__":
main()اكتب هنا