
בדרך כלל, כשאנחנו חושבים על המונח ספרייה עולה לנו בראש תמונה של חדר או ארון שבו מרוכזים ספרים, אבל כשכזה קשור לשפת פייתון – הספרייה היא אוסף של קטעי קוד, פונקציות או מחלקות שניתן להשתמש בהן בפרוייקטים שלנו. למעשה, יש הרבה מן המשותף בין ספריית פייתון לספריית ספרים – בשני המקרים אנחנו יכולים להגיע לספר הדרוש לנו ולהוציא ממנו את החומר שיסייע לנו להשלים את העבודה. ספריות פייתון – מה זה ואיך זה משרת אותנו?
מה זה ספריות פייתון?
רגע לפני שנצלול לספריות פייתון, אולי כדאי להגדיר את השפה: פייתון היא שפת תכנות עילית, מרובת שימושים, פופולרית ונפוצה מאוד שנכתבה בשפת C אך עטופה בתחביר פשוט ודואגת בעצמה להרבה מהדברים שגורמים לתכנות להיות "מסובך"
בין יתרונותיה של השפה:
- אחת משפות התכנות הפופולריות ביותר, המשמשת למגוון עצום של פרויקטים
- שפה קלה יחסית ללימוד ויישום ולכן מתאימה גם למתחילים
- קהילת מתכנתים ענקית – המון מידע ברשת
- ביקוש גבוה ושכר גבוה בהתאם
- קוד פתוח ואוסף עצום של ספריות
- פיתוח קוד מהיר מאוד יחסית – ניתן להשיג הרבה יותר בפחות זמן – משתלם!
מודל זה מאפשר פיתוח של תוכנה בשיתוף פעולה בין מתכנתים כשקוד המקור נגיש ופתוח, ובדיוק לכאן נכנסות הספריות! אז מה זה ספריות פייתון? פייתון מאפשרת לנו שימוש בספריות, כלומר קבצים המכילים קטעי קוד מוכנים, למגוון רחב של משימות וסוגים של פרויקטים, חלקם קודים שכיחים יחסית שנעשה בהם שימוש רחב בעולם וחלקת למשימות מאוד מסוימות.
באילו מקרים אנחנו נרצה להשתמש בספריות פייתון?
אנו נשתמש בקודים מוכנים מתוך ספריות פייתון משתי סיבות עיקריות: כדי לקצר לנו את זמן העבודה כשאנחנו זקוקים לקודים שכיחים שכן כתיבת קוד עשויה לקחת לא מעט זמן, וכמובן במקרה בו שכחנו כיצד כותבים את הקוד הרצוי לנו – פשוט נוכל לשלוף אותו אל תוך מסך העבודה שלנו.
אילו ספריות פייתון הן הפופולריות ביותר?
- Random – ספריה לייצור ערכים/מספרים אקראיים בין 0.0 ל-1.0
- Requests – ספריה לשימוש בבקשות http מול שרתים. בקשות ה-http מחזירה תגובה עם הנתונים הדרושים (תוכן, קידוד, סטטוס וכו').
- Tkinter – ספריה לעיצוב של ממשק משתמש גרפי (GUI)
- Flask – ספריה לבניית אפליקציות http כמו אתרי אינטרנט או ,API עם יתרון של שרת פיתוח מובנה
- Sqlite3 – ספריה לכתיבת שאילתות ותקשורת מול מסדי נתונים – יצירת מסד נתונים, הגדרת טבלאות, הוספה ושינוי של שורות, הפעלת שאילתות וניהול קובץ מסד נתונים
- TensorFlow – ספרייה אשר פותחה על ידי גוגל והיא משמשת לחישובים ברמה גבוהה, בין היתר לפרויקטים בתחום המתמטיקה והפיזיקה.
- Matpolotlib – ספרייה האחראית לשרטוט של נתונים מספריים – תרשימי עוגה, היסטוגרמות, תרשימי פיזור, גרפים וכו'.
- Pandas – ספרייה חשובה מאוד עבור אנשי נתונים, המספקת מבני נתונים גמישים ברמה גבוהה וכלי ניתוח – מיון, הוספת אינדקס, המרת נתונים, הדמיות וכו'.
- NumPy – ספרייה נפוצה מאוד, המתמקדת בחישוב מדעי ומתמטי, עם פונקציות לחישוב קל כשמדובר במטריצות גדולות ובנתונים רבים
- Scikit-learn – ספריית פייתון פופולרית ללמידה עם נתונים מורכבים – רגרסיה לינארית, סיווג, אשכולות וכו'. חלק מן הספריות הפופולריות כבר כלולות בספרייה זו, כדוגמת Matpolotlib, NumPy ו-SciPy. אפליקציית המוזיקה Spotify יודעת להמליץ לנו על שירים באמצעות שימוש בכלים אותם מציעה הספרייה.
- SciPy – ספריית קוד פתוח המשמשת לחישובים מדעיים ברמה גבוהה, אך נמצאת גם בשימוש נרחב על ידי מהנדסים ומפתחי אפליקציות. מציעה דרך קלה לחישובים מורכבים.
- Pillow – ספרייה שמציעה אפשרויות מתקדמות לצפייה, עריכה ומניפולציות שונות על תמונות.
- Scarpy – ספריית קוד פתוח המשמשת לחילוץ של נתונים מאתרים. הספרייה מספקת סריקת אינטרנט מהירה וגרידת מסך ברמה גבוהה, גם לצורך של כריית נתונים ובדיקה אוטומטית שלהם.
- PyBrain – ספריית קוד פתוח שנבנה עבור מתחילים בתחום של למידת מכונה. הספרייה מספקת אלגוריתמים מהירים וקלים לשימוש.
קהילת מתכנתים גדולה זה יתרון
יתרון עצום בחשיבותו בשפת הפייתון הוא הקהילתיות. הספריות בפייתון מתעדכנות ומתוחזקות כל הזמן על ידי מתכנתים ברחבי העולם, במטרה להפוך את עבודת התכנות ליעילה, קלה ונוחה יותר, וישנן ספריות נפוצות מאוד שמתעדכנות ממש ברמה השבועית.