3 min. read

ברוכים הבאים

פייתון אחת השפות המדוברות כיום בתעשייה,
הדרך שלה לאקדמיה ולתעשייה הרשימה אנשים רבים בזכות הפשטות והמגוון הרחב שהיא מאפשרת -
Machine Learning, Data Science, Web APIS, Front-end וכדו’…

פייתון היא כלי עוצמתי, כלי תכנותי המאפשר לאנשים לשלב טכנלוגיה בחיי היום-יום שלהם או בעסק שלהם.
החל ממזכירה שצריכה לעבור על מלא קבצי אקסל,
או המדען שצריך לעבד ולנתח נתונים מהמחקרים שלו,
או אסטרונומית חובבת שרוצה למצוא גרמי שמיים בתמונות שהיא אספה.

ובכן גם כמה דוגמאות מהניסיון האישי שלי:

  • תכנות שרתים (Backend).
  • תכנות אתרים.
  • סקריפטים לאוטומצית תהליכים.
  • חקירת לוגים על מנת להבין בעיות בתוכנה.
  • בוטים לתוכנות שונות.

למה פייתון

  • פייתון היא שפה פשוטה מאוד להרצה, לא צריך לדעת להמיר קוד או לבצע דברים מסובכים .
  • פייתון היא שפה הדומה לאנגלית, ז”א העדיפו שהיא תהיה קריאה מאשר מסובכת.
  • פייתון היא השפה המעודפת על הרבה מתכנתים ומשומשת בצורה רחבה בתעשייה.
  • כמעט כל טכנולוגיה בתוכנה ניתן להשתמש דרך פייתון - מסדי נתונים, ממשקי תוכנה וכדו’
  • ניתן בעזרת פייתון לתכנת מגוון דברים - משחקים, תוכנות גראפיות, אגירת נתונים וכדו’…

למה לי ללמוד כאן?

  • הסברים מקיפים על פייתון בעברית
  • דוגמאות ופרקים ברמה גבוה הנותנת כלים לתעשייה, לאקדמיה ולפיתוח ביום יום.
  • דוגמאות מהידע המקצועי שלי שכולל הסברים על טרמינולוגיה נכונה.
  • תרגול רב בכל פרק על מנת להבין את הקוד לעומק.
  • צלילה עמוקה לנושאים תאורתיים.

מה נלמד בפרק הראשון

  • כיצד להתקין ולהשתמש בפייתון.
  • כיצד להתקין את הסביבת פיתוח
  • כתיבת קוד ראשון בפייתון.
  • מה זה אומר להריץ קוד.
  • מה זה חבילות PIP וכיצד להתקין אותם.
  • הצגה של דוגמאות קוד

כיצד להתקין את פייתון

אם אתם קוראים את המאמר הזה אני יכול להניח שיש לכם ידע בסיסי על מחשבים, איך לערוך מסמכים, איך לתפעל תכניות ממש בסיסיות כמו תיקיות, משחקים, וורד וכדו’

אנחנו צריכים להתקין את התוכנה שנותנת לנו להשתמש בקוד ולגרום לו להריץ קוד.
להריץ קוד זה בעצם להגיד למחשב מה לעשות והתוכנה של פייתון נותנת לנו להגיד למחשב מה לעשות בעזרת קוד פייתון.

הכנסו לללינק הבא:
https://www.python.org/downloads/

תבחרו בהורדה:

תבחרו את האפשרויות הבאות ומיקום:
בד”כ אפשר להשאיר את המיקום כפי שהוא, ואת האופציות יש לבחור כי זה הכי מומלץ.
במיוחד אם אתם מתקינים את זה פעם ראשונה.

שימוש בסיסי

את הקוד הראשון שלנו נכתוב בתוכנה במחשב או דרך אתר אינטרנט שמאפשר להריץ קטעי קוד פשוטים.
זה די נוח לבדוק קוד קצר.

דרך אתר

יש לא מעט אתרים שנותנים לכם להריץ קוד מבלי צורך להתקין שום דבר.
זה שימושי על מנת ללמוד קוד או לנסות קטעי קוד קטנים (נקראים snippets).
למשל אחד האתרים שניתן להשתמש בהם:
https://www.programiz.com/python-programming/online-compiler/

חלון פקודות

חלון הפקודות הוא חלון שחור שנותן לנו להריץ פקודות על המחשב.
על מנת לפתוח את חלון הפקודות החזיקו את המקש של ווינדוס ותלחצו את האות R.

לאחר מכן הקישו את המילה CMD ולחצו אישור:

אחרי ההתקנה תכתוב בחלון שנפתח את הפקודה python והקישו אנטר:

אם מופיע לכם משהו אחר כנראה זה לא הותקן עד הסוף וצריך לבצע רסטרט למחשב.
אם זה עדיין לא מופיע אחרי ריסטרט תנסו להתקין מחדש.

שלום עולם

נכתוב את התוכנה הכי פשוטה שקיימת - תוכנה שמדפיסה למסך שלום עולם.
אנחנו עושים את זה דרך הפקודה print בתוך פייתון.
את הפקודה רושמים עם סוגריים והמילים hello world עם גרשיים כפי שכתוב כאן:

1
print("Hello World")

מה זה אומר להריץ קוד

בתכנות אנחנו משתמשים בטרמינולוגיה “הרצה” או “להריץ קוד” כדי לומר שקוד כרגע עובד והוא מופעל.
בעצם המחשב מקבל הרבה מאוד פקודות ממקומות שונים - מהמקלדת, ממערכת ההפעלה(ווינדוס), מהעכבר
את הפקודות האלו הוא מעבד ומבצע.
כל מקש שאתם לוחצים יש קוד ש”רץ”, הוא לוקח את התו של המקש שלחצתם ומבצע את הכתיבה שלו.
יש קוד אחר שרץ ומציג למסך את המקש שלחצתם.

הרצה בעזרת קובץ

  1. יוצרים קובץ טקסט
  2. משנים לו את השם והסיומת לpy.
  3. עורכים אותו.
  4. כותבים את הקוד שאנחנו רוצים.
  5. מריצים את הפקודה python עם הנתיב לקובץ.

על עורכי טקסט בסיסיים

בשביל לערוך את הקובץ אנחנו צריכים עורך טקסט.
בכל מחשב יכול להיות תוכנה אחרת אך הכי בסיסי זה notepad או בעברית “פנקס רשימות”.

שלבים 1 - 4

1
python code.py

לאחר מכן נכנסים לחלון הפקודות שוב ומריצים את הקובץ עם הנתיב.
על מנת להעתיק את הנתיב תחזיקו על המקלדת את מקש הSHIFT ולחצו כפתור ימני של העכבר.

עזרים שימושיים

קבצי קוד הם בסופו של דבר קובץ טקסט עם סיומת אחרת.
כדי לערוך קטעי קוד קצרים מעבד תמלילים יכול לעשות את העבודה - אך השימוש בו לקטעי קוד ארוכים או מפוצלים יהיה קשה יותר.
כמו כן נלמד בעתיד איך לפצל קוד על גבי כמה קבצים - נצטרך כלי יותר רציני לפיתוח קוד.

הכלים האלו נקראים - Integrated Development Environment או IDE בקיצור.
אלו סביבות פיתוח המעניקים לנו יכולות מגוונות וכלים כדי לכתוב ולתכנן קוד.
כמה מהיכולות:

  • הרצה מובנית של הקוד.
  • דיבוג
  • עריכה מתקדמת
  • תמיכה במגוון קבצים ושפות
  • השלמה אוטומטית

Visual Studio Code

זוהי התוכנה המועדפת עלי - כל כך מועדפת שאני רושם את המילים האלו בתוכנה הזו!
VS CODE מאפשר לערוך הרבה שפות ולא רק פייתון ולכן הוא מאוד שימושי.
יש בו הרבה גיוון - ניתן לערוך אותו לנוחיותכם ולמראה שאתם רוצים.

להורדה

להוריד את ההרחבה לפייתון:

כתיבת קוד

הדרך הכי פשוטה זה לפתוח תיקייה ויצור שם קובץ פייתון חדש:

או שמתוך תיקייה:

לאר מכן לפתוח קובץ ופשוט ליצור קובץ בשם מסוים עם הסיומת py.

להריץ קוד

בעזרת Terminal

פותחים את הterminal - שהוא הCMD.
ואז כותבים את פקודת הפייתון להרצה.

בעזרת F5

אם התקנתם את ההרחבה של פייתון לVSCODE בצורה טובה תוכלו ללחוץ F5 וזה ישלים לכם להרצת קובץ.
לחצו על הרצה והוא יריץ לכם את הקובץ הנבחר שלכם!

PyCharm

התוכנה המועדפת על הרבה מתכנתים זה PyCharm,
הסביבה הזו נוחה וקיימת גרסא חינמית.

להורדה

פרוייקט חדש

בחרו ליצור פרוייקט חדש:

בחרו מיקום לפרוייקט:

אם סימנתם את האופציה ליצור קובץ main.py תמחקו בינתיים את מה שיש בו.
לאחר מכן כתבו את קטע הקוד הפשוט עם פונקציית print():

פרוייקט

כאן נראה את הקבצים של הפרוייקט החדש שלנו, כל קבצי הקוד מופיעים כאן.

קוד

בחלון הזה נכתוב את כל הקוד.

תוצאה

כאן נראה את כל מה שמודפס מהקוד.

הרצה של הקוד

כפתור ההרצה מריץ את הקוד הנבחר, וכפתור הדיבוג - שנראה כמו חיפושית - הוא הכפתור שיריץ לנו את זה במצב "דיבאג". במצב זה נוכל להסתכל בזמן עצירה על הקוד שלנו. על מנת להוסיף נקודת עצירה הנקראת - Breakpoint - ניתן להשתמש ב Ctrl+F8.

ככה זה נראה:

PIP

PIP זוהי תוכנה שמגיעה עם פייתון העוזרת לנו להתקין חבילות שעוזרות לתכנת בפייתון.

חבילות בפייתון עוזרות לנו לבצע פעולות שונות בקוד שאם לא היינו משתמשים בהן, היינו צריכים ליצור אותם לבד - שזה לוקח הרבה מאמץ וזמן.

מעיין “אל תמציא מחדש את הגלגל”.

דוגמא לחבילת פייתון

נניח שאנחנו כותבים קוד עבור מעבד טקסט ואנחנו רוצים שכותרות יתחילו תמיד באותיות גדולות בכל מילה ארוכה.
ניתן -
א- לכתוב את הקוד לבד.
ב- לראות אם הגלגל כבר הומצא!

לכן שלב ב’ יהיה לנו יותר פשוט,
התקינו את החבילה הבאה ע”י כתיבה של הפקודה הזו בחלון הפקודות:

1
pip install camelcase

כעת ננסה להשתמש בה בתוך הקוד שלנו,
העתיקו את הקוד והדפיסו אותו בתוך הקובץ, כפי שלמדתם ותנסו להריץ אותו.

1
2
3
4
5
import camelcase

c = camelcase.CamelCase()
txt = "this is small text"
print(c.hump(txt))

קיימים חבילות רבות בפייתון שמבצעות פעולות שונות.
אנחנו נדבר על חבילות והשימוש שלהן בהרחבה יותר כעת תנסו לזכור שקיים דבר כזה PIP.
העקרון הוא - אל תנסו להמציא את הגלגל מחדש אם הוא כבר הומצא.
שימו לב לשימוש בimport זה עוד יחזור בהמשך!
לעת עתה לא צריך להתעמק בקוד למעלה, בבוא הזמן נלמד את הכל.

תכנית להרצה

נראה דוגמא לקוד בפחות מ50 שורות למשחק סנייק המפורסם!

תתקינו בעזרת pip את החבילה הבאה:
מריצים את זה בחלון הפקודות.

1
pip install freegames

תעתיקו את הקוד הבא והריצו אותו כפי שלמדתם:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
"""Snake, classic arcade game."""

from turtle import *
from random import randrange
from freegames import square, vector

food = vector(0, 0)
snake = [vector(10, 0)]
aim = vector(0, -10)

def change(x, y):
"Change snake direction."
aim.x = x
aim.y = y

def inside(head):
"Return True if head inside boundaries."
return -200 < head.x < 190 and -200 < head.y < 190

def move():
"Move snake forward one segment."
head = snake[-1].copy()
head.move(aim)

if not inside(head) or head in snake:
square(head.x, head.y, 9, 'red')
update()
return

snake.append(head)

if head == food:
print('Snake:', len(snake))
food.x = randrange(-15, 15) * 10
food.y = randrange(-15, 15) * 10
else:
snake.pop(0)

clear()

for body in snake:
square(body.x, body.y, 9, 'black')

square(food.x, food.y, 9, 'green')
update()
ontimer(move, 100)

setup(420, 420, 370, 0)
hideturtle()
tracer(False)
listen()
onkey(lambda: change(10, 0), 'Right')
onkey(lambda: change(-10, 0), 'Left')
onkey(lambda: change(0, 10), 'Up')
onkey(lambda: change(0, -10), 'Down')
move()
done()

תריצו והחלו לשחק!

ניתן למצוא עוד משחקים באתר:
Grantjenks

פשוט תעתיקו את הקוד ותריצו אותו!

להמשיך ללמוד

על משתנים בפרק השני

פייתון 2 - משתנים

תכנים מאתרים אחרים

אני לא האדם הראשון שכותב על פייתון, כבר קיימים עשרות מדריכים וספרים על תכנות,
הנה כמה מקומות אחרים שניתן ללמוד מהם פייתון:

קורס שעובד עם Jupyter notebooks:
קורס מוכן בעברית

אתר פופולרי להרבה מדריכים - כתוב בצורה מאוד פשטנית ובאנגלית.
w3schools

קורס מובנה חינמי בעברית:
CampusIL

ערוץ ישראלי בעברית - למי שאוהב ללמוד מסרטונים.
Metallicode

איך כדאי לי להמשיך?

המשיכו לפרק השני -

פייתון 2 - משתנים

אם אתם רואים שקשה לכם או שלא נוח לכם ללמוד דרך חומרים כתובים נסו את המדריכים שנתתי למעלה,
למידה אפקטיבית תקל עליכם במסע שלכם ללמידת תכנות ופייתון בפרט לכן הטיפ היחידי שאני יכול להמליץ עליו:

פשוט נסו, אם לא עובד תנסו משהו אחר.

מחכים לכם עשרות פוסטים שיביאו אתכם לרמה מקצועית גבוה :)
תודה על הקריאה ולמידה מהנה!


אהבתם? מוזמנים להביע תמיכה כאן: כוס קפה