מדריך | מדריך פיתון
-
מדריך פיתון
תוכן עניינים
פרק 1: מבוא לפייתון
- מה זה python?
- התקנת פייתון
פרק 2: יסודות תכנות
- משתנים
- אופרטורים
- תנאים
- לולאות
פרק 3: פונקציות
- הגדרת פונקציות
- קריאת פונקציות
- העברת ארגומנטים
- החזרת ערכים
פרק 4: מבני נתונים
- רשימות
- מילונים
- מחרוזות
- קבצים
פרק 5: תכנות מונחה עצמים
- מחלקות
- אובייקטים
- ירושה
- פוליאפיזם
פרק 6: ספריות פייתון
- NumPy
- Pandas
- Matplotlib
- TensorFlow
פרק 7: פרויקטים מעשיים
- פיתוח משחק פשוט
- ניתוח נתונים
- למידת מכונה
פרק 8: טיפים מתקדמים
- דיבאג
- בדיקות יחידה
- ניהול גרסאות
- פריסת קוד
נספח א': מילון מונחים
נספח ב': מקורות נוספים
פרק 1: מדריך python
מה זה python?
אני מניח שאם חיפשתם מדריך פיתון אתם יודעים מה זה פיתון אז אין טעם להאריך.
התקנת python
שלבים:
הורדת קובץ ההתקנה:
היכנסו לאתר הרשמי של פייתון: https://www.python.org/downloads/.
בחרו את הגרסה המתאימה למערכת ההפעלה שלכם (32 סיביות או 64 סיביות).
לחצו על Download Python 3.x.x.
שמרו את קובץ ה-EXE במקום נוח.
הפעלת קובץ ההתקנה:אתרו את קובץ ה-EXE שהורדתם ולחצו עליו פעמיים.
בחלון ההתקנה, סמנו את התיבה Add Python 3.x to PATH.
לחצו על Install Now.
לאחר סיום ההתקנה, לחצו על Finish.
אימות התקנת פייתון:פתחו את חיפוש Windows.
הקלידו cmd ולחצו על Enter.
בחלון הפקודה, הקלידו python --version.
אם מופיעה גרסת פייתון, התקנת פייתון הושלמה בהצלחה.פרק 2: יסודות תכנות
משתנים
משתנה זהו שם שהמתכנת בוחר שמכיל בתוכו ערך למשל מספר טקסט או מספר
יש כמה סוגי משתנים בפיתון:- integer - מספר שלם למשל: 5 אבל 5.5 לא כי זה לא שלם
- string - מחרוזת הכוונה טקסט למשל: "Hello Python"
- float - מספר עשרוני למשל: 5.5
- boolean - יכול להיות רק נכון או לא נכון (True ו-False)
- array - מערך של נתונים למשל: 1,2,3,4,5
יש מעל עשרים סוגי משתנים אבל על אלו נדבר בעיקר במדריך זה
הגדרת משתנה מסוג integer (בקיצור int):
number = 53
הגדרת משתנה מסוג string (בקיצור str):
text = "Hello World" #:זה יכול להיראות גם ככה text = 'Hello World'
זה לא משנה עם זה גרשיים יחידות או כפולות.
הגדרת משנה מסוג float:
number = 5.57
הגדרת משתנה מסוג boolean (בקיצור bool):
x = True y = False
הגדרת משתנה מסוג array (בקיצור arr בעברית - מערך):
my_array = [1,2,3,4,5]
עכשיו איך בכלל מריצים קוד פיתון?
תפתחו את שורת המשימות (CMD).
תלחצו על מקשים WIN+R.
תכתבו בחלון הקטן שנפתח: "CMD".
תכתבו: "python".>>>python
עכשיו תוכלו לכתוב קוד פיתון ולהריץ אותו בעזרת לחיצה על כפתור הEnter.
>>>number = 5.57 >>>print(number) 5.57
הפונקציה ()print
הפונקציה print 'מדפיס' למסך את מה ששמים לו בתוך הסוגריים.יכולים לשים משתנה כמו שעשינו בדוגמא למעלה:
print(number)
יכולים לשים מחרוזת ככה:
print("Python") print('Python')
הפונקציה ()type
אם למשל יש לך משתנה ואתה לא בטוח מאיזה סוג הוא אז משתמשים בפונקציה type.>>>type(number) <class 'int'>
משימה:
תבדקו את כל סוגי המשתנים ותדפיסו אותם למסך.אופרטורים
מה זה אופרטור?
אופרטורים זה סימנים שמשתמשים בהם לקוד
הנה רשימה קטנה וחלקית מאד מהאופרטורים שקיימים אבל אלו השימושיים- חיבור (+)
- חיסור (-)
- כפל (*)
- חילוק (/)
- שארית (%)
- חלוקה שלם (//)
- חזקה (**)
- שווה (==)
- לא שווה (!=)
- גדול מ- (>)
- גדול או שווה ל- (>=)
- קטן מ- (<)
- קטן או שווה ל- (<=)
- השמה פשוטה (=)
- הוספת השמה (=+)
אל דאגה אני אסביר כל אופרטור בחלק שלו אבל אתם כבר מכירים את האופרטור הזה: "=" שהוא קובע משתנה
תנאים
מה זה תנאי?
if
תנאי זה בדיקה למשל אנחנו רוצים לבדוק האם המשתנה x שווה ל-7 איך עושים את זה?if x == 7: print("YES")
אנחנו רושמים את המילה "if" (אם) ואז אנחנו בודקים האם שני הערכים שווים (x, 7) על ידי שימוש באופרטור "==". שימו לב שיש פעמיים שווה כדי שקוד הפיתון לא יתבלבל ויחשוב שאנחנו עכשיו קובעים ש x יהיה שווה 7 אלא אנחנו רק בודקים אם זה שווה 7 ולכן צריך לכתוב פעמיים "==".
נסו לכתוב עם שווה אחד ותראו מה קורה.אזהרה!
בפייתון יש חשיבות להזחה כלומר לרווחים. שימו לב שמתחת ל-if יש רווח ואז מתחיל השורה הבאה זה מרמז על זה שהשורה הזאת היא תחת ה-if ברגע שזה יהיה באותו קן כמו הif סימן שזה מחוץ לתנאי אם למשל אני אכתוב ללא הזחה:if x == 7: print("YES")
אז יהיה שגיאה! כדי לכתוב עם הזחה או כותבים 4 פעמים רווח או שלוחצים על כפתור ה"Tab"
elif
הפקודה "elif" זה קיצור של: "else if" כלומר אם התנאי if לא התקיים אז תבדוק את תנאי אחרif x== 7: print("7") elif x == 8: print("8")
שימו לב שיכול להיות כמה elif אחד אחרי השני.
else
הפקודה else אומרת אם ה-if וכל ה-elif שהיו לא מתקיימים אז תעשה את...if x== 7: print("7") elif x == 8: print("8") else: print("Not 7 or 8")
לולאות
לולאות זה קטע קוד שרץ שוב ושוב לפי תנאי מסוים. יש לנו 2 סוגי לולאות עיקריים while, for.
while
לולאת while נכתבת ככה:
while, לאחר מכן רושמים תנאי כמו בif שכל עוד התנאי יתקיים הלולאה תרוץx = 0 while x < 7: print(x) x += 1
שימו לב שהשתמשנו באופרטור "=+" הוא עושה שהערך של x יהיה שווה כמו הערך הקודם בתוספת מה שכתבנו שבמקרה הזה זה 1.
מה תהיה התוצאה?התוצאה תהיה:
0 1 2 3 4 5 6
למה לא היה המספר 7?
כי ברגע ש-x יהיה שווה 7 אז הוא כבר לא קטן מ-7 ולכן הוא יפסיק את הריצה של הלולאה.
for
אם אתה מכיר שפות תכנות אחרות אז תדע שהלולאה for שונה לגמרי משפות אחרות כמו:
C, C#, C++, Java, JavaScript ועוד.
בפייתון אנחנו מריצים את הקוד שוב ושוב לפי מחרוזת (string) או מערך (array) או עוד כל מני סוגי משתניםfruits = "banana" for fruit in fruits: print(fruit)
התוצאה תהיה:
b a n a n a
למשל בדוגמא למעלה אנחנו יוצרים מחרוזת (string) ואנחנו בודקים באמצעות הפקודה: "in" כמה אותיות מכילה המחרוזת אז במקרה שלנו הקוד ירוץ 6 פעמים ובכל פעם ידפיס את האות אחרי זה של המחרוזת: "banana" בגלל ש-fruit יהיה שווה לאות שעומדים בה עכשיו.
אפשר לעשות את זה גם באמצעות מערך:
fruits = ["apple", "banana", "cherry"] for fruit in fruits: print(fruit)
אבל הפעם במקום להדפיס אות אחר אות הוא ידפיס איבר אחרי איבר במערך (איבר הוא כל קטע במערך שמופרד על ידי פסיקים)
apple banana cherry
נכון זה קשה לכתוב קוד פייתון דרך ה-CMD? לכן יש תוכנות כמו Visual Studio Code שנותנות לכתוב קוד פייתון כמו מסמך טקסט רגיל ואז אפשר לערוך ולשנות אותו אם אתם רוצים שאני יסביר איך להתקין את Visual Studio Code או את PyCharm אז תכתבו בתגובות
פרק 3: פונקציות
הגדרת פונקציה
פונקציה זה קטע קוד שנותנים לו שם וכל פעם שקוראים לפונקציה בעזרת אותו שם הקוד שבתוך הפונקציה רץ היתרון בזה שלא צריך לכתוב קטע קוד כמה פעמים אם רוצים שיקרה משהו אותו דבר
ככה כותבים פונקציה:def my_function(): #הקוד שיהיה בפונקציה
וקוראים לפונקציה כך:
my_function()
אפשר גם להעביר פרמטרים לפונקציה:
x = 5 y = 3 def my_function(x, y): return x + y
הפקודה return מחזירה ערך כך שהפונקציה תהיה שווה לערך שהוא מחזיר זה אומר ש-()my_function שווה 8
אז אפשר לכתוב ככה:function = my_function() print(function)
ואז הוא ידפיס את הערך של הפונקציה במקרה שלנו 8
|-מתישהו בקרוב אני יעלה את שאר הפרקים.
תכתבו לי בתגובות האם אהבתם ואם יש הערות תאמרו-| -
קודם כל שאפו!
ממליץ לך לדעת שזו עבודה קשה מדריך לתכנות, אז עצתי לתכנן את הזמן והעבודה של הכתיבה,
אני התחלתי לפני חצי שנה מדריך לג׳אווה, ומאז המלחמה רפו ידיי..
-
@אליר325000 תודה רבה!
-
@RoiChocron כתב במדריך | מדריך פיתון:
תכתבו לי בתגובות האם אהבתם ואם יש הערות תאמרו-
יפה מאד, אתה מסכם תוך כמה דקות מה שאצל אחרים יכול לקחת שעתיים (לדוגמא בCAMPUS IL)
אשמח אם תוכל לכתוב מדריך על איך מתקינים ועובדים עם ספריות, כי להרבה האנשים זה עיקר השימוש בפייתון
ואפרש את שיחתי: כהיום פייתון מלבד מה שהוא תכונה תיכנות מעולה, עם הספריות הרבות שלה משמשת גם להרבה אנשים (לדוגמא בפורום הזה) שהם לא מתכנתים ולא מעונייים ללמוד תכנות, כתוכנה כמעט לכל צורך שרוצים לעשות [בלי להתעסק בתכנות בכלל], דוגמא פשוטה:
מה שכתוב כאן האם יש אפשרות להפוך קבצים מרובים של DOC לקבצי DOCXאו כאן https://mitmachim.top/topic/62940/בירור-שמירת-סיפור-מהאינטרנט-לקובץ-pdf/41?_=1710095421205
וכדו'
או FFMPEG
ואם אפשר לשים דגש במיוחד איך להתקין אותם בנטפרי כי משום מה עושה בעיות, שולי מי שבמין בזה פותר אותם בדקה, אבל מי שלא מבין בזה נתקע רציני [ועל פי רוב אי אפשר לחפש מידע על זה ברשת, כי זה רק בנטפרי]תודה
-
@menajemmendel כתב במדריך | מדריך פיתון:
ואם אפשר לשים דגש במיוחד איך להתקין אותם בנטפרי
https://netfree.link/wiki/התקנת_תעודה_ב-pip
@RoiChocron כתב במדריך | מדריך פיתון:
הוספת השמה (+=)
התכוונת מסתמא ל
+=
שים לב שזה יצא לך הפוך
-
@האדם-החושב תודה נראה לי שתיקנתי את הכל
-
@menajemmendel כן שימוש בספריות יהיה בהמשך אבל הקטע עם נטפרי אני לא משתמש בזה (יש לי רימון) אבל אני אולי יחפש מדריכים בהמשך
-
@menajemmendel כתב במדריך | מדריך פיתון:
ואם אפשר לשים דגש במיוחד איך להתקין אותם בנטפרי כי משום מה עושה בעיות,
ממש לא, לפי מה שראיתי [אני לא מבין בזהף אלא כמו שכתבת: מתקין ספריות נחוצות...].
צריך בפעם הראשונה לייבא תעודת אבטחה, תגגל: נטפרי תעודת אבטחה פייתון" ותראה איך, ואח"כ הכל טוב.מה שבעייתי באמת, זה בפייתון שתוכנות מורידות לעצמן, ששם אין לי מושג איך מתקינים. [אני מדבר על תוכנות שיוצרות פייתון כספרייה ניידת].
-
@RoiChocron כתב במדריך | מדריך פיתון:
@י-פל מצטער כמו שאמרתי אין לי נטפרי אז אני לא יודע במה מדובר אבל אם יהיה צורך אולי נעשה גם מדריך על בעיות עם נטפרי ורימון וכו'
הנה, אולי תצליח לעזור כעת:
זו ההודעה שאני מקבל:fatal: unable to access 'https://github.com/oobabooga/text-generation-webui/': SSL certificate problem: unable to get local issuer certificate Command '"C:\Users\user\Downloads\text-generation-webui-main\installer_files\conda\condabin\conda.bat" activate "C:\Users\user\Downloads\text-generation-webui-main\installer_files\env" >nul && git pull --autostash' failed with exit status code '1'. Exiting now. Try running the start/update script again. Press any key to continue . . .
בניסיון לעדכן את המאגר הזה:
https://github.com/oobabooga/text-generation-webui?tab=readme-ov-file
[יש שם BAT שנקרא UPDATE].
זו גיאת אבטחה, אך הפייתון לא מותקן במחשב, אלא כולו בתת תיקייה. -
@צדיק-תמים אז כנראה צריך תעודה עבור ספריית requests:
https://netfree.link/wiki/התקנת_תעודה_בפייתון_-_ספריית_requests
-
@י-פל אתה צודק לגבי השיטה הראשונה (שלא עבדה לי, וכנראה שגם לא לך). אבל אם זה עובד על ווינדוס באופן כללי, זה אמור לעבוד גם על פייתון שבתוך המערכת הוירטואלית
תנסה את השיטה השנייה, ובמקום פייתון סתם תכניס את הנתיב של pyton.exe שנמצא בתוך המערכת הוירטואלית.
לאחר מכן תבצע את הפעולות הבאות שמופיעות בהדרכה.זה אמור להיות משהו כעין זה:
"c:\users\user\my_project\dir\python.exe" -c "import requests; print(requests.certs.where());"
במקום הדרך המקורית:
python -c "import requests; print(requests.certs.where());"
-
@NH-LOCAL
מישהו יכול להסביר למתחיל כמוני, איפה כותבים את הקודים הארוכים, נגיד לדוגמא, חיפשתי קוד איך אפשר עם פייתון להוסיף סימני חיתוך לתמונה, ומצאתי את זה
https://stackoverflow.com/questions/74573013/how-to-add-bleed-and-crop-marks-to-an-image-in-pythonimport cv2 image = cv2.imread("illustration1.jpg") #Window name in which image is displayed window_name = 'Image.jpg' #Using cv2.copyMakeBorder() method image = cv2.copyMakeBorder(borderoutput, 35, 35, 35, 35, cv2.BORDER_REFLECT_101, None, value = 0) #Displaying the image cv2.imwrite(window_name, image)
מה אני עושה אם הקוד הזה, אני לא יכול לכתוב אותו שלם בשורת הפקודה