مهاجرت به پایتون

فني, دکترانه, علمی Add comments

در فکرت مهاجرت جدیدی هستم…. مهاجرت به پایتون Python. برنامه نوشتن درش بسیار شبیه MATLAB است و در عوض خیلی سریع تر. امروز اولین برنامه پایتون ام را نوشتم. خیلی ساده و زیبا…

بر خلاف MATLAB ، Python مجانی است ولی مانند آن یک هسته ساده مرکزی دارد و بسته های نرم افزاری متعدد رویش نصب می شود. چند بسته جالب دارد که عملا آن را از نظر محاسباتی، جبرخطی و عددی شبیه MATLAB می کند. مثل NumPy و SciPy و Matplotlib. در کنار این ها OpenCV نیز نسخه Python دارد و این یعنی هر چیزی که در MATLAB و C ازش استفاده می کنم اینجا هم هست.

اگر بخواهید پایتون را با مجموعه ای کامل از بسته های نرم افزاری محاسباتی دیگر یکجا بگیرید ، بهتر است مجموعه ی Enthought Python را یکجا نصب کنید. با داشتن این دیگر لازم نیست تک تک آن بسته های بالا را بگیرد. البته به جز OpenCV

OpenCV: کتابخانه ای است از توابع پایه بینایی رایانه ای که به صورت متن باز از طرف شرکت اینتل ارائه شده است.

برای مقایسه سرعت ایندو ازنوشته یکی از گروه های بحث و گفتگویMATLAB نقل می کنم. سرعت محاسبه تبدیل Wavelet (موجک) چهار بعدی در پایتون 3 ثانیه و در متلب 27 ثانیه.

پ.ن: اما مهم تر از همه این ها خلاص شدن از سردردهای تمام نشدی سر و کله زدن با C است! مگرنه MATLAB تا به حال به کسی بدی نکرده((:

Balatarin

6 Responses to “مهاجرت به پایتون”

  1. سولوژن Says:

    من هم به مهاجرت به Python فکر کرده‌ام. البته هنوز هیچ بررسی‌ی مفصل‌ای نکرده‌ام. اما من در مورد سرعت Python زیاد هم خوب نشنیده‌ام. ممکن است در بعضی کارها از MatLab سریع‌تر باشد، اما آیا همیشه هم این‌طوری است؟
    در واقع نکته‌ی اصلی این است که گویا Python خیلی کندتر از C است و این یعنی بد!

  2. سولوژن Says:

    رفتم و کدشان را دیدم. کد Matlabاش بد نوشته نشده بود. یعنی از bottleneckای چون حلقه استفاده نکرده بود (گرچه در عوض recursive بود به نظرم که مطمئن نیستم در این زمینه Matlab خیلی سریع کار کند).
    نکته‌ی بامزه این بود که یک شخص‌ای از MathWorks گفته بود که هر دوی برنامه‌ها را اجرا کرده و تفاوت‌شان آن‌چنان نبوده. یعنی یکی در حدود سه ثانیه بوده و یکی در حدود دو ثانیه.

    با این همه مهاجرت از Matlab ایده‌ی خوبی است. کم‌ترین دلیل‌اش هم این‌که Matlab پولی است! ما در دپارتمان‌مان مشکل داریم با این موضوع (بعضی وقت‌ها تعداد مجوزها کم می‌آید) و از طرف دیگر استادم هم غرغر می‌کند که فلان چیز گران است و بهمان! حالا البته پولی هم خرج نمی‌کند، اما …!

  3. رامین Says:

    به سولو: من اصولا خیلی نگران سرعت نیستم. یعنی اگر مثل بعضی کارهای متلب به طور نمایی سرعت کاهش پیدا نکند خیلی برایم مهم نیست. سرعت مساله ای است که بعد از یک سال با آمدن کامپیوتر های بهتر حل می شود اما اگر یک سال زمان تلف شود سر نوشتن برنامه ای با C ، آن زمان قابل بازگشت نیست. یکی دیگر از ویژگی های مثبت پایتون مدیریت اتوماتیک حافظه اش است در حالی که در سی این یکی از بلایای طبیعی حساب می شود.

    همیشه می شود کدی نوشته شده را برای سرعت بیشتر به C تبدیل کرد اما مهم نوشته شدن اش است.

  4. سولوژن Says:

    به رامین (لابد دیگر!): من سوپرسریع بودن برای‌ام مهم نیست، اما کند نبودن هم خوب است. اما حالا که تو می‌گویی سرعت برای‌ات مهم نیست، چرا می‌گویی می‌خواهی بروی سراغ پایتن؟

  5. Ramin Says:

    برای من مهاجرت بیشتر از C است به پایتون نه از MATLAB

  6. سولوژن Says:

    آها! (: مهاجرت کن پس! شاید من هم مهاجرت کردم.

Leave a Reply

WP Theme & Icons.FoxTheme and Localized by Behrang Yarahmadi
Entries RSS Comments RSS