AzLearn

تمرين إعادة البناء

ملخص CSV سريع

اقرأ ملف CSV واعرض عدد الصفوف والقيم الفارغة لكل عمود.

python ~20 دقيقة متوسط
أعد بناء الكود Rebuild

هذا هو الكود. اكتبه بنفسك.

الكود المرجعي
import argparse
import csv
from pathlib import Path


def summarize(path: Path) -> None:
    with path.open(newline="", encoding="utf-8") as file:
        reader = csv.DictReader(file)
        if not reader.fieldnames:
            print("No columns found")
            return
        blanks = {name: 0 for name in reader.fieldnames}
        rows = 0
        for row in reader:
            rows += 1
            for name in reader.fieldnames:
                if not row.get(name, "").strip():
                    blanks[name] += 1

    print(f"Rows: {rows}")
    for name in reader.fieldnames:
        print(f"{name}: {blanks[name]} blank")


def main() -> None:
    parser = argparse.ArgumentParser(description="Summarize rows and blank values in a CSV file.")
    parser.add_argument("csv_file", type=Path)
    args = parser.parse_args()
    summarize(args.csv_file)


if __name__ == "__main__":
    main()
اكتب هنا