آموزش دستورات جادویی در IPython
آموزش دستورات جادویی در IPython
در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش دستورات جادویی در IPython خواهیم پرداخت.
پیشنهاد ویژه : پکیج آموزش پایتون مختص بازار کار
دستورات جادویی یا عملکردهای جادویی یکی از پیشرفتهای مهمی است که IPython در مقایسه با پوسته استاندارد پایتون ارائه می دهد. این دستورات جادویی برای حل مشکلات رایج در تجزیه و تحلیل داده ها با استفاده از پایتون است. در واقع ، آنها رفتار IPython را کنترل می کنند.
دستورات جادویی به عنوان توابع راحت عمل می کنند که نحو پایتون طبیعی ترین آن نیست. آنها برای تعبیه نحو پایتون نامعتبر در جریان کار مفید هستند.
انواع دستورات جادویی
دو نوع دستور جادویی وجود دارد –
- Line magics
- Cell magics
Line Magics
آنها مشابه تماس های خط فرمان هستند. آنها با٪ شخصیت شروع می شوند. بقیه خط استدلال آن است که بدون پرانتز یا نقل قول منتقل می شود. جادوهای خط را می توان به عنوان بیان و مقدار بازگشتی آنها را به متغیر اختصاص داد.
Cell magics
آنها پیشوند٪ دارند. برخلاف توابع جادویی خط، آنها می توانند در چندین خط زیر تماس خود عمل کنند. آنها در واقع می توانند تغییرات ورودی خودسرانه ای را اعمال کنند که حتی نیازی به کد پایتون معتبر نیست. آنها کل بلوک را به صورت یک رشته دریافت می کنند.
برای دانستن بیشتر در مورد عملکردهای جادویی، جادوهای داخلی و دوره های اولیه آنها، از دستور Magic استفاده کنید. اطلاعات یک عملکرد خاص جادویی توسط٪ عملکرد جادویی بدست می آید؟ فرمان دادن حال اجازه دهید برخی از دستورات جادویی داخلی و خط داخلی را توصیف کنیم.
Line Magics توکار
1 |
%autocall [mode] |
این عملکرد جادویی باعث می شود عملکردی بدون نیاز به استفاده از پرانتز به طور خودکار فراخوانی شود. این سه پارامتر حالت ممکن را می گیرد: 0 (خاموش) ، 1 (هوشمند) به طور پیش فرض یا 2 (همیشه روشن).
automagic%
توابع جادویی بدون نیاز به تایپ٪ اولیه در صورت تنظیم 1 ، قابل فراخوانی هستند. بدون استدلال ، روشن / خاموش روشن می شود. برای غیرفعال کردن ، روی 0 تنظیم کنید.
مثال زیر نشان می دهد که یک تابع جادویی٪ pwd (نمایش دایرکتوری موجود) بدون هدایت٪ وقتی٪ automagic روی 1 تنظیم می شود
cd%
این خط جادویی فهرست فعلی را تغییر می دهد. این دستور به طور خودکار لیست داخلی فهرست هایی را که در طول جلسه IPython خود بازدید می کنید ، در متغیر _dh نگهداری می کند. برای دیدن راحت تاریخچه دایرکتوری می توانید “<cd – <tab” را نیز انجام دهید.
کاربردهای cd٪
از دستور cd٪ می توان به روش های زیر استفاده کرد –
- <cd <dir٪ – فهرست کار فعلی را به <dir> تغییر می دهد
- …cd٪ – دایرکتوری فعلی را به دایرکتوری اصلی تغییر می دهد
- cd٪ – تغییر در فهرست آخرین بازدید شده.
dhist٪
این دستور Magic تمام دایرکتوری هایی را که در جلسه فعلی بازدید کرده اید چاپ می کند. هر بار که از دستور٪ cd استفاده می شود ، این لیست در متغیر _dh به روز می شود.
edit٪
این دستور جادویی ویرایشگر متن پیش فرض سیستم عامل فعلی (Notepad برای ویندوز) را برای ویرایش یک اسکریپت پایتون فرا می خواند. با بسته شدن ویرایشگر ، اسکریپت اجرا می شود.
env٪
این دستور جادویی تمام متغیرهای محیط را لیست می کند. همچنین مقدار یک متغیر خاص را می خواند یا مقدار متغیر محیط را تنظیم می کند.
استفاده
از دستور cd٪ می توان به روش های زیر استفاده کرد –
- env٪ – لیست تمام متغیرهای محیط است
- env var٪ – مقدار var را بدست می آورد
- env var val٪ – مقدار را برای var تنظیم می کند
gui [GUINAME]٪
این دستور بدون استدلال استفاده می شود ، یکپارچه سازی حلقه رویداد IPython GUI را فعال یا غیرفعال می کند. با استفاده از استدلال GUINAME ، این جادو جایگزین جعبه ابزارهای پیش فرض GUI با یک مورد مشخص شده می شود.
- gui wx٪
یکپارچه سازی حلقه رویداد wxPython را فعال کنید
- gui qt4 | qt٪
یکپارچه سازی حلقه رویداد PyQt4 را فعال کنید
- gui qt5٪
یکپارچه سازی حلقه رویداد PyQt5 را فعال کنید
- gui gtk٪
PyGTK یکپارچه سازی حلقه رویداد را فعال کنید
- ٪gui gtk3
یکپارچه سازی حلقه رویداد Gtk3 را فعال کنید
- gui tk٪
یکپارچه سازی حلقه رویداد Tk را فعال کنید
- gui osx٪
یکپارچه سازی حلقه رویداد کاکائو را فعال کنید
- gui٪
تمام ادغام حلقه رویداد را غیرفعال کنید
lsmagic٪
تمام عملکردهای جادویی موجود را نمایش می دهد
matplotlib٪
این تابع پشتیبانی تعاملی matplotlib را در طی جلسه IPython فعال می کند. با این حال ، کتابخانه matplotlib را وارد نمی کند. جعبه ابزار پیش فرض GUI matplotlib TkAgg است. اما شما می توانید به صراحت باطن گرافیکی متفاوتی را درخواست کنید. همانطور که نشان داده شده می توانید لیستی از باطن های موجود را مشاهده کنید –
1 2 3 |
In [4]: %matplotlib --list Available matplotlib backends: ['osx', 'qt4', 'qt5', 'gtk3', 'notebook', 'wx', 'qt', 'nbagg','gtk', 'tk', 'inline'] |
جلسه IPython که در اینجا نشان داده شده است با استفاده از جعبه ابزار qt موج سینوسی را ترسیم می کند –
در حالی که از نوت بوک Jupyter استفاده می کنید ،٪ matplotlib inline directive خروجی طرح را فقط در مرورگر نمایش می دهد.
notebook%
این تابع تاریخچه فعلی IPython را به یک پرونده نوت بوک IPython با پسوند ipynb تبدیل می کند. سلول های ورودی در مثال قبلی به عنوان sine.ipynb ذخیره می شوند
1 |
%notebook sine.ipynb |
pinfo٪
این تابع شبیه به درون نگری شی است؟ برای به دست آوردن اطلاعات در مورد یک شی، از دستور زیر استفاده کنید –
1 |
%pinfo object |
precision٪
این تابع جادویی نتیجه نقطه شناور را به ارقام مشخص شده پس از اعشار محدود می کند.
pwd٪
این تابع جادویی دایرکتوری موجود را برمی گرداند.
pylab٪
این تابع جلسه IPython فعلی را با کتابخانه های matplotlib و numpy پر می کند.
recall%
این تابع وقتی بدون پارامتر اجرا شود ، دستور قبلی را اجرا می کند.
توجه داشته باشید که در٪ فراخوانی n ، شماره مقابل آن عدد سلول ورودی است. از این رو دستور در سلول n به یاد می آید. با استفاده از فرمانی مانند٪ recall 1-4 می توانید دستورات مربوط به بخش سلول ها را فراخوانی کنید. سلول ورودی فعلی با سلول فراخوانی شده جمع شده و نشانگر چشمک می زند تا زمانی که کلید enter فشار داده شود.
run%
این دستور از داخل پوسته IPython یک اسکریپت پایتون را اجرا می کند.
time٪
این دستور زمان مورد نیاز محیط IPython برای اجرای عبارت Python را نشان می دهد.
timeit٪
این تابع همچنین زمان مورد نیاز محیط IPython برای اجرای عبارت Python را نشان می دهد. اجرای زمان یک عبارت یا عبارت Python از ماژول timeit استفاده می کند. همانطور که در اینجا توضیح داده شده می توان از این عملکرد به عنوان یک خط و جادوی سلول استفاده کرد –
در حالت خط می توانید یک خط را زمان بندی کنید.
در حالت سلول ، عبارت در خط اول به عنوان کد راه اندازی استفاده می شود و بدن سلول زمان بندی می شود. بدنه سلول به هر متغیر ایجاد شده در کد راه اندازی دسترسی دارد.
who%
این خط جادویی تمام متغیرهای تعاملی را با کمترین قالب بندی چاپ می کند. اگر هر آرگومان ارائه شود ، فقط متغیرهایی که نوع آنها با یکی از این موارد مطابقت دارد چاپ می شوند.
لیست جلسات قبل آموزش برنامه نویسی ژوپیتر
- آموزش برنامه نویسی ژوپیتر
- آموزش مقدمه برنامه نویسی ژوپیتر
- آموزش نصب IPython
- آموزش شروع کار با IPython
- اجرا و ویرایش اسکریپت پایتون در IPython
- آموزش تاریخچه دستورات در IPython
- آموزش دستورات سیستم در IPython
- آموزش گزینه های خط فرمان در IPython
- آموزش بررسی دقیق اشیا در IPython
- آموزش ذخیره سازی ورودی و خروجی در IPython
- آموزش تنظیم IPython به عنوان پیش فرض Python Environment
- آموزش وارد کردن کد پایتون شل در IPython
- آموزش embed کردن IPython
- آموزش دستورات جادویی در IPython
- بررسی اجمالی برنامه نویسی ژوپیتر
- مقدمه نوت بوک ژوپیتر
- آموزش کار با ژوپیتر آنلاین
- آموزش نصب و شروع به کار با نوت بوک ژوپیتر
- آموزش داشبورد در نوت بوک ژوپیتر
- آموزش رابط کاربری در نوت بوک ژوپیتر
- آموزش انواع سلول ها در نوت بوک ژوپیتر
- آموزش ویرایش در نوت بوک ژوپیتر
- آموزش سلول های Markdown در نوت بوک ژوپیتر
- آموزش توابع جادویی سلول در نوت بوک ژوپیتر
- آموزش رسم نمودار در نوت بوک ژوپیتر
- آموزش تبدیل نوت بوک ها در ژوپیتر
- آموزش IPyWidgets در نوت بوک ژوپیتر
- آموزش ژوپیتر QtConsole
- آموزش ویرایش چند خطی در ژوپیتر QtConsole
- آموزش گرافیک درون خطی در Jupyter QtConsole
- آموزش ذخیره در HTML در ژوپیتر QtConsole
- آموزش کنسول در ژوپیتر QtConsole
- آموزش اتصال به نوت بوک ژوپیتر
- آموزش استفاده از github و nbviewer در برنامه نویسی ژوپیتر
- بررسی اجمالی JupyterLab
- آموزش نصب و شروع به کار JupyterLab
- آموزش رابط در JupyterLab
دیدگاه شما