توی مراسم PyCon US 2022 مدیر عامل آناکوندا، پیتر وانگ به صورت خیلی یکهویی و سورپرایزی از پروژه ای رونمایی کرد به نام پای اسکریپت (pyscript) که این اجازه رو به شما میده که توی صفحات وب از پایتون به جای جاوا اسکریپت استفاده کنید.
پای اسکریپت در واقع یک فریم ورک جاوا اسکریپت هست که این اجازه رو به کاربر ها میده که با ترکیب پایتون(و حتی بقیه زبان های برنامه نویسی) و اچتیامال(HTML) نرم افزار های پایتونی را توی مرورگر ها اجرا کنن. درواقع با این فریم ورک جاوااسکریپ شما میتونید حتی از کتابخونه های پایتون مثل matplotlib توی صفحه های وب خودتون استفاده کنید که در ادامه به نوع کد نویسی و استفاده از کتابخونه ها میپردازیم.
پای اسکریپت ساخته شده بر روی pyodide که افراد در حوزه های مختلفی میتونن از اون استفاده کنند مثل دیتا ساینتیست ها (data scientist) که میتونن دیتا ها رو به راحتی و همونطور که توی پایتون به نمایش میذاشتن این بار توی صفحه های وب به نمایش بزارن.
نحوه استفاده کردن از پای اسکریپت بسیار بسیار سادس و فقط لازمه که شما HTML و پایتون رو یاد داشته باشید. اگه طراحی وب سایت و HTML و CSS چیزی نمیدونید پیشنهاد میکنم دوره طراحی سایت مارو از دست ندید.
<html> <head> <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" /> <script defer src="https://pyscript.net/alpha/pyscript.js"> </head> <body> <py-script> print('Curly Bracket') </py-script> </body> </html>
کد بالا یک نمونه ساده از پای اسکریپت هست که متن Curly Bracket رو توی خروجی نشون میده. البته تنها همونطور که گفتیم تنها کاربرد پای اسکریپت برای استفاده های ساده و پرینت کردن نیست بلکه میشه از کتابخونه هایی مثل matplotlib هم استفاده کرد.
<html> <head> <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" /> <script defer src="https://pyscript.net/alpha/pyscript.js"> <py-env> - numpy - matplotlib </py-env> </head> <body> <h1>Let's plot random numbers</h1> <div id="plot"></div> <py-script output="plot"> import matplotlib.pyplot as plt import numpy as np x = np.random.randn(1000) y = np.random.randn(1000) fig, ax = plt.subplots() ax.scatter(x, y) fig </py-script> </body> </html>
نتیجه کد بالا میشه عکس زیر که به همین سادگی با استفاده از کتابخونه matplotlib و numpy یک نمودار رو توی صفحه وب نشون دادیم.
همچنین میتوان از فایل های پایتونی که از قبل داشتین یا توی یک فایل دیگه هم هستن به صورت زیر استفاده کنید.
<py-script src="/our_script.py"> </py-script>
به نظر خودم پای اسکریپت میتونه در اینده جایگاه خیلی خوبی بین برنامه نویس ها پیدا بکنه و خیلی هارو سمت خودش بیاره ولی در حال حاضر مشکلات زیادی داره (که طبیعی هم هست به خاطر اینکه پروژه اول های کار هست) و سرعت بالایی هم نداره و یکم اجرا کردن کد ها مخصوصا وقتی از کتابخونه هایی مثل matplotlib استفاده میکنید کند بودن رو قشنگ حس میکنید و وقتی بخواین کد های سنگینی رو اجرا بکنید حتما بیشتر طول میکشه که امیدوارم در اینده این مشکلات رفع بشه.
نویسنده و تهیه کننده: ایلیا فرامرزی
اینستاگرام: curlybracket_ir
تلگرام: @curlybracket
منابع: