כתיבת קוד — שיעור 32
לינוקס מתקדם CLI
כל 2 משימות הקוד שנשמרו מהשיעור מופיעות כאן, עם דרישות, דוגמאות וקוד פתיחה. אפשר לכתוב פתרון בעורך המקומי וללחוץ על „בדיקת AI” לקבלת ציון, רמזים והערות.
T2 · בסיסי200 נק'~15 דק'algorithmic
grep — עם דגלי -v ו--i
ממש grep(lines, pattern, invert=False, ignore_case=False) המחזיר את השורות המכילות את התבנית (התאמת תת-מחרוזת). invert=True (כמו -v) הופך: מחזיר את שאינן מכילות. ignore_case=True (כמו -i) מתעלם מרישיות.
דוגמאות
grep(['apple','banana','grape'], 'ap') → ['apple', 'grape']
grep(['apple','banana'], 'an', invert=True) → ['apple']
הפתרון נשמר מקומית אוטומטית.
T3 · בינוני350 נק'~20 דק'algorithmic
awk — סכימת עמודה
ממש awk_sum(lines, col, sep=None) שסוכם את השדה ה-col (מ-1) בכל שורה (כמו awk '{s+=$col}'). sep הוא המפריד (ברירת מחדל: רווחים). דלג על שורות עם פחות מ-col שדות או ששדה היעד אינו מספר. החזר את הסכום.
דוגמאות
awk_sum(['a 10','b 20','c 30'], 2) → 60.0
awk_sum(['x,1','y,2'], 2, ',') → 3.0
הפתרון נשמר מקומית אוטומטית.