دستور exist در متلب(جلسه پنجاه و چهار)

دستور exist در متلب

در این جلسه از آموزش متلب می‌خواهیم کمی در مورد exist توضیح دهیم.

اجرای دستور exist در متلب

از خود help متلب کمک می‌گیریم.

exist در متلب
exist در متلب

در اینجا برای ما به خوبی توضیح داده است.

استفاده از help متلب
استفاده از help متلب

در توضیح خود exist نوشته شده است check existence of variable, script, function, folder, or class

یعنی بررسی می‌کند که آیا یک متغیر، script، تابع، ‌folder یا کلاسی وجود دارد؟ با exist می‌توان وجود آنها را بررسی کرد ببینیم چنین چیزهایی داریم یا خیر.

درصورتیکه قصد سفارش پروژه متلب را دارید با کارشناسان ما در ارتباط باشید.

Syntax آن هم گفته به چه صورت است.

جواب‌هایی که به ما می‌دهد ۰ تا ۸ است. اگر ۰ باشد، یعنی وجود ندارد. نوشته است که name dos not exist or cannot be found for other reasons. یعنی وجود ندارد یا پیدا نمی‌شود. که یک مثالی هم در اینجا برای ما زده است.

که البته مثال‌های اصلی آن در پایین (قسمت Examples) وجود دارد.

اگر جواب ۱ را به ما بدهد، یعنی اینکه متغیر با این اسم وجود دارد.

پس اگر جواب صفر باشد وجود ندارد و اگر ۱ باشد، وجود دارد.

اگر جواب ۲ باشد، می‌گوید آن چیزی که وارد کردید، یک file است و به صورت یک file ِ  .m .nlx  یا .m.lapp است.

اگر جواب ۳ را به ما بدهد، فایل dll یا فایل‌های دیگری است مثلا در اینجا نوشته است MEX. چنین فایل‌هایی هستند.

اگر جواب ۴ را  به ما بدهد، یعنی فایل Simulink با این اسم وجود دارد.

اگر جواب ۵ باشد، یعنی اینکه یک تابع built in در متلب است.

اگر جواب ۶ باشد، به انگلیسی نوشته است که یک p.file هست. یعنی P.code در مسیر متلب است.

اگر جواب ۷ باشد، می‌گوید آن یک folder است.

اگر جواب ۸ باشد، یعنی یک چیزی از جنس class است.

که در اینجا بحث‌های object oriented programming به میان می‌آید که شی‌ءگرایی است که در دوره‌های پیشرفته متلب اگر در این سایت قرار دادم، حتما به شما درس می‌دهد. شیءگرایی مبحث بسیار شیرینی است و برای برخی افراد سخت است که مفاهیمی است که باید یاد بگیرید و اگر یاد بگیرید، بسیار شیرین‌تر است که شاید بعد از آموزش مقدماتی متلب یک دوره شیءگرایی در زبان JavaScript هم ارائه دهم که خیلی دوره‌ی جذابی خواهد شد.

پس اگر این اعداد را در جواب دریافت کنیم، به معانی هستند که در بالا بیان کردیم.

در تصویر زیر مثال‌هایی را نشان داده است.

مثال هایی از شی گرایی
مثال هایی از شی گرایی
searchType در help
searchType در help

نوشته‌های جدول در تصویر فوق به چه معناست؟

اگر syntax  را مشاهده کنید، searchType را بزنید یا ؟؟؟ [۱۰:۳۰] آن را بزنید، در اینجا به ما می‌گوید built in است، class است، متغیر است، از چه جنسی است؟ اگر searchType کنید، جنس آن را به ما می‌دهد.

حال به خود برنامه متلب می‌رویم. a را برابر ۲ تعریف می‌کنیم.

دو برابر کردن a
دو برابر کردن a

حال می‌گوییم exist(‘a’) یعنی آیا a وجود دارد؟

تایپ کردن exist('a')
تایپ کردن exist(‘a’)

مشاهده می‌کنید که جواب ۱ را به ما داده است. یعنی بله، وجود دارد. زیرا در بالا مشاهده می‌کنید که a وجود دارد.

ماتریس a وجود دارد
ماتریس a وجود دارد

در تصویر فوق مشاهده می‌کنید که نام فایل ما DFIG است. الان می‌گوییم که exist (‘DFIG’) یعنی آیا ‘DFIG’ وجود دارد؟ به نظر شما چه جوابی به ما می‌دهد؟

تایپ دستورexist ('DFIG')
تایپ دستورexist (‘DFIG’)

جواب ۴ را می‌دهد. ۴ را اگر در آن اعداد که در یکی از تصاویر فوق نشان دادیم، یک فایل Simulink بود یعنی DFIG ما در اینجا یک فایل Simulink است که اگر روی آن کلیک کنیم و وارد آن شویم، در تصویر زیر یک شبیه‌سازی هم داریم که فایلمان شبیه‌سازی است.

DFIG یک فایل Simulink است
DFIG یک فایل Simulink است

حال اگر بگوییم exist (‘ini’)  در تصویر زیر مشاهده می‌کنید که جواب ۲ را به ما می‌دهد.

تایپ exist ('ini') و مشاهده عدد 2 در جواب
تایپ exist (‘ini’) و مشاهده عدد 2 در جواب

این ini که در اینجا گفتیم، اگر وارد آن شویم و نشان دهیم، کدهایی است که برای Simulink هم نوشته بودیم.

variable شدن DFIG
variable شدن DFIG

ini وجود دارد ولی یک فایل است. یک فایل است که کدهای خود را هم در آن وارد کردیم.

حال اگر بگوییم که DFIG وجود دارد و بعد از آن بپرسیم از جنس variable است، در نسخه‌های قبلی به صورت زیر می‌توانستیم نشان دهیم.

variable شدن DFIG
exist ini در متلب

ولی ظاهرا در این نسخه به صورت فوق امکان‌پذیر نیست.

بنابراین به صورت زیر می‌نویسیم:

نمایش پاسخ صفر
نمایش پاسخ صفر

و مشاهده می‌کنید که جواب ۰ را به ما داده است یعنی می‌گوید که وجود ندارد.

در نسخه‌ی جدید متلب که ۲۰۱۸ است، باید به صورت فوق بنویسیم و دیگر لازم نیست داخل پرانتز بنویسیم.

برای مثال اگر بنویسیم exist ini جواب ۲ را به ما می‌دهد.

نوشتن exist ini بدون پرانتز
نوشتن exist ini بدون پرانتز

مشاهده می‌کنید که نیاز به قرار دادن پرانتز و «’» نیست و به سادگی می‌توانید بنویسید.

تا جلسه‌ی آینده که راجع به varargin می‌خواهیم صحبت کنیم، شما را به خدای مهربان می‌سپارم.