כיצד לעבוד עם הקונסולה האינטרקטיבית של Python

הקדמה

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

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

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

דרישות מקדימות

עליך להפעיל Python 3 ולהגדיר סביבת פיתוח במחשב או בשרת שלך. אם אין לך סביבת פיתוח מוגדרת, תוכל להפנות למדריכי ההתקנה וההגדרה ל סביבת פיתוח מקומית או ל סביבת פיתוח בשרת שלך המתאימה למערכת ההפעלה שלך (Ubuntu, CentOS, Debian, וכו ').

נכנסים למסוף אינטרקטיבי

המסוף האינטרקטיבי של Python נגיש מכל מחשב מקומי או שרת עם Python מותקן.

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

  1. python3

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

  1. python

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

  1. cd environments
  2. . my_env/bin/activate

ולאחר מכן להקליד את הפקודה python:

  1. python

במקרה זה, גרסת Python הברירת מחדל היא Python 3.8.10, שמוצגת בפלט לאחר שנכנס את הפקודה, יחד עם הודעת זכויות היוצרים הרלוונטית וכמה פקודות שניתן להקליד למידע נוסף:

Output
Python 3.8.10 (default, Jun 2 2021, 10:49:15) [GCC 9.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>>

הפרומט הראשי לפקודה הבאה הוא שלוש שלטי גריטאיים (>>>):

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

הערה:החל מינואר 2020, Python 2 הופסק ולא יעשו יותר שדרוגים. למידע נוסף, ראו [שדרוג Python 2] (https://www.python.org/doc/sunset-python-2/)

  1. python2.7
Output
Python 2.7.18 (default, Mar 8 2021, 13:02:45) [GCC 9.3.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>

כאן, קיבלנו את הפלט שימוש Python 2.7.18 ייעשה. אם זהו הגרסה המוגדרת כברירת מחדל של Python 2 שלנו, נוכל גם להיכנס למסוף אינטרקטיבי זה עם הפקודה python2.

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

  1. python3
Output
Python 3.8.10 (default, Jun 2 2021, 10:49:15) [GCC 9.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>>

יכולנו גם לקרוא למסוף אינטרקטיבי למעלה עם הפקודה python3.8.

בעזרת מסוף הפעולות של Python פועל, נוכל לעבוד עם הסביבת מעטפת של Python.

עבודה עם מסוף הפעולות האינטרקטיבי של Python

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

נוכל, לדוגמה, להקצות ערכים ל משתנים:

  1. birth_year = 1868

לאחר שהקצנו את הערך השלם של 1868 למשתנה birth_year, נלחץ חזרה ונקבל שורה חדשה עם שלוש התווים הגדולים כתחילית:

  1. birth_year = 1868

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

>>> birth_year = 1868
>>> death_year = 1921
>>> age_at_death = death_year - birth_year
>>> print(age_at_death)
53
>>> 

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

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

>>> 203 / 20
10.15
>>> 

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

שורות מרובות

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

כדי לצאת מהשורות המשך אלו, תצטרך ללחוץ על ENTER פעמיים.

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

>>> sammy = 'Sammy'
>>> shark = 'Shark'
>>> if len(sammy) > len(shark):
...     print('Sammy codes in Java.')
... else:
...     print('Sammy codes in Python.')
... 
Sammy codes in Python.
>>> 

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

>>> if len(sammy) > len(shark):
... print('Sammy codes in Java.')
  File "<stdin>", line 2
    print('Sammy codes in Java.')
        ^
IndentationError: expected an indented block
>>> 

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

ייבוא מודולים

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

>>> import matplotlib
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'matplotlib'

במקרה שלמעלה, המודול matplotlib לא היה זמין בתוך סביבת התכנות הנוכחית.

כדי להתקין אותו, נצטרך לצאת מהמפענח האינטראקטיבי ולהתקין עם pip כרגיל:

  1. pip install matplotlib
Output
Collecting matplotlib Downloading matplotlib-3.4.3-cp38-cp38-manylinux1_x86_64.whl (10.3 MB) ... Installing collected packages: numpy, python-dateutil, kiwisolver, pillow, pyparsing, cycler, matplotlib Successfully installed cycler-0.10.0 kiwisolver-1.3.1 matplotlib-3.4.3 numpy-1.21.2 pillow-8.3.1 pyparsing-2.4.7 python-dateutil-2.8.2

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

  1. python
  1. import matplotlib

בנקודה זו לא תקבל הודעת שגיאה ותוכל להשתמש במודול שהותקן או בתוך מסמך.

עזיבת מפענח הפייתון האינטראקטיבי

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

הקיצור המקלדת CTRL + D במערכות המבוססות על *nix או CTRL + Z ואז מקש ה-CTRL במערכות Windows יפסיק את הקונסול ויחזיר אותך לסביבת הטרמינל המקורית שלך:

...
>>> age_at_death = death_year - birth_year
>>> print(age_at_death)
53
>>> 
sammy@ubuntu:~/environments$ 

באופן אלטרנטיבי, פונקציית הפייתון quit() תסיים את הקונסול האינטראקטיבית וגם תחזיר אותך לסביבת הטרמינל המקורית שבה היית לפני כן:

>>> octopus = 'Ollie'
>>> quit()
sammy@PythonUbuntu:~/environments$ 

כאשר אתה משתמש בפונקציה quit(), היא תופיע בקובץ ההיסטוריה שלך, אך הקיצור המקלדת CTRL + D לא יתווסף להיסטוריה:

File: /home/sammy/.python_history
...
age_at_death = death_year - birth_year
print(age_at_death)
octopus = 'Ollie'
quit()

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

גישה להיסטוריה

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

  1. nano ~/.python_history

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

File: /home/sammy/.python_history
import pygame
quit()
if 10 > 5:
    print("hello, world")
else:
    print("nope")
sammy = 'Sammy'
shark = 'Shark'
...

כאשר אתה מסיים את העבודה עם הקובץ שלך, תוכל ללחוץ על CTRL + X כדי לצאת מננו.

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

מסקנה

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

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

Source:
https://www.digitalocean.com/community/tutorials/how-to-work-with-the-python-interactive-console