Python נמצא בשימוש נרחב לניתוח נתונים, למידת מכונה, גירוד אינטרנט ועוד הרבה יותר. אבל האם ידעת שאתה יכול גם להריץ קוד Python ב-HTML כדי לבנות יישומי אינטרנט?

PyScript מאפשר זאת, ומאפשר לך להריץ קוד Python בדפדפן. למד כיצד להוסיף הדמיות matplotlib לדף אינטרנט בעזרת מספר דוגמאות PyScript-HTML.

מה זה PyScript?

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

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

הגדר HTML Boilerplate

לפני השימוש ב- PyScript, עליך להגדיר דברים. צור קובץ HTML חדש והגדר את ה-boilerplate HTML. רוב IDEs מודרניים לספק את הפונקציונליות ליצור לוחות דוודים באופן אוטומטי. אתה רק צריך להקליד דוק אוֹ html והקש אנטר. אתה יכול גם להשתמש בתבנית הבאה כדי להתחיל:

instagram viewer
<!DOCTYPE html>
<html>
<רֹאשׁ>
<מטא תווים ="utf-8">
<מטא http-equiv="X-UA-תואם" תוכן="IE=קצה">
<כותרת></title>
<מטא שם="תיאור" תוכן="">
<מטא שם="נקודת מבט" תוכן="רוחב=רוחב התקן, קנה מידה התחלתי=1">
</head>
<גוּף>

</body>
</html>

הוסף PyScript ל-HTML: "שלום, עולם!" שימוש ב- PyScript

אתה יכול להשתמש ב- PyScript בקובץ ה-HTML שלך על ידי הורדתו או קישור ה-CDN שלו בראש ה-HTML שלך. הוסף את הדברים הבאים ב- קטע של קובץ ה-HTML שלך:

<קישור rel="גיליון סגנונות" href="https://pyscript.net/alpha/pyscript.css" />
<script defer src="https://pyscript.net/alpha/pyscript.js"></script>

זה כל מה שאתה צריך לעשות כדי להגדיר PyScript.

כדי לוודא אם PyScript השתלב בהצלחה, הוסף את שורת הקוד הבאה ב- סָעִיף:

<גוּף>
<py-script>הדפס("שלום עולם!")</py-script>
</body>

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

טען את ספריית Matplotlib

אתה צריך להשתמש ב תגים לייבוא ​​מודולי Python. טען את matplotlib מודול ב- קטע של קובץ ה-HTML שלך באמצעות הקטע הבא:

<py-env>
- matplotlib
</py-env>

הצג עלילת קו בדפדפן באמצעות PyScript

ליצור עם תְעוּדַת זֶהוּת. אתה תצטרך את תְעוּדַת זֶהוּת להשתמש בו עם תְפוּקָה תכונה של תָג.

<div id="matplotlib-lineplot"></div>

אתה צריך לכתוב את קוד Python ב- תָג. הקצה את האמור לעיל תְעוּדַת זֶהוּת אל ה תְפוּקָה תכונה של תָג.

<פלט py-script="matplotlib-lineplot">
# קוד פייתון
</py-script>

כעת אתה מוכן לכתוב את קוד Python כדי ליצור עלילת קו:

<גוּף>
<div id="matplotlib-lineplot"></div>
<פלט py-script="matplotlib-lineplot">
# קוד פייתון

# מייבא את ספריית matplotlib
יְבוּא matplotlib.pyplot כפי ש plt
fig, ax = plt.subplots()
# ציר x
x = ["פִּיתוֹן", "C++", "JavaScript", "גולנג"]
# ציר y
y = [10, 5, 9, 7]
plt.plot (x, y, marker='o', סגנון שורה='-', צבע='ב')
# מתן שם לתווית x
plt.xlabel('שפה')
# מתן שם לתווית ה-y
plt.ylabel('ציון')
# מתן שם לכותרת העלילה
plt.title('שפה מול ציון')
תאנה
</py-script>
</body>

תקבל את הדמות הבאה לאחר פתיחת קובץ ה-HTML בדפדפן האינטרנט:

הצג עלילת סרגל בדפדפן באמצעות PyScript

אתה יכול ליצור עלילת סרגל בדפדפן באמצעות קטע הקוד הבא של Python:

<גוּף>
<div id="matplotlib-bar"></div>
<פלט py-script="matplotlib-bar">
# קוד פייתון

# מייבא את ספריית matplotlib
יְבוּא matplotlib.pyplot כפי ש plt
fig, ax = plt.subplots()
# ציר x
x = ["פִּיתוֹן", "C++", "JavaScript", "גולנג"]
# ציר y
y = [10, 5, 9, 7]
plt.בָּר(איקס, y)
# מתן שם לתווית x
plt.xlabel('שפה')
# מתן שם לתווית ה-y
plt.ylabel('ציון')
# מתן שם לכותרת העלילה
plt.title('שפה מול ציון')
תאנה
</py-script>
</body>

קוד זה מייצר את הפלט הבא:

איזה עתיד מחזיק PyScript?

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

אחת הסיבות העיקריות לפיתוח PyScript הייתה לעזור למדעני נתונים להמחיש נתונים באינטרנט. אם אתה מדען נתונים, אתה יכול למנף את הכוח של PyScript על ידי שילובו עם ספריות מדעי נתונים כמו Pandas ו- NumPy.