• آیا زبان برنامه نویسی پایتون در حال مرگ است؟ مروری کوتاه بر زبان پایتون

    اوت 27, 2012 در 03:18 ب.ظ

    پایتون را خوب یاد بگیرید

    • پایتون

    سلام به همه!

    سینتکس قابل خواندن توسط انسان، یادگیری آسان، زبان سطح بالا، زبان برنامه نویسی شی گرا (OOP)، قدرتمند، حالت تعاملی، تعداد زیادی کتابخانه. بسیاری از مزایای دیگر... و همه در یک زبان است.
    ابتدا بیایید به احتمالات بپردازیم و دریابیم که پایتون چه کاری می تواند انجام دهد؟

    چرا به پایتون شما نیاز دارم؟

    بسیاری از برنامه نویسان مبتدی سوالات مشابهی می پرسند. مثل خرید یک گوشی است، بگو چرا باید این گوشی را بخرم و این را نخرم؟
    کیفیت نرم افزار
    برای بسیاری، از جمله من، مزایای اصلی نحو خواندنی است. زبان های زیادی نمی توانند به آن ببالند. خواندن کد پایتون آسان تر است، به این معنی که استفاده مجدد و نگهداری از آن بسیار آسان تر از کد در سایر زبان های اسکریپت است. پایتون حاوی مکانیسم‌های استفاده مجدد از کدهای پیشرفته مانند OOP است.
    حمایت از کتابخانه ها
    پایتون با حجم زیادی از قابلیت های ساخته شده و قابل حمل که به عنوان کتابخانه استاندارد شناخته می شود ارائه می شود. این کتابخانه ویژگی های زیادی را در اختیار شما قرار می دهد که در برنامه های کاربردی مورد تقاضا هستند، از جستجوی متن بر اساس الگو گرفته تا توابع شبکه. پایتون را می توان با کتابخانه های خود و کتابخانه های ایجاد شده توسط توسعه دهندگان دیگر گسترش داد.
    قابلیت حمل برنامه
    اکثر برنامه های پایتون بدون تغییر در تمام پلتفرم های اصلی اجرا می شوند. انتقال کد از لینوکس به ویندوز به سادگی کپی کردن فایل های برنامه از یک دستگاه به دستگاه دیگر است. پایتون همچنین گزینه های زیادی برای ایجاد رابط های گرافیکی قابل حمل در اختیار شما قرار می دهد.
    سرعت توسعه
    پایتون در مقایسه با زبان‌های کامپایل یا قوی تایپ شده مانند C، C++ یا جاوا، بهره‌وری توسعه‌دهنده را تا حد زیادی بهبود می‌بخشد. کد پایتون معمولاً یک سوم یا حتی یک پنجم کدهای C++ یا جاوا معادل آن است که به معنای ورودی کمتر صفحه کلید، زمان اشکال زدایی کمتر و تلاش کمتر برای نگهداری است. علاوه بر این، برنامه‌های پایتون بلافاصله اجرا می‌شوند و مراحل کامپایل طولانی و پیوند مورد نیاز در برخی از زبان‌های برنامه‌نویسی دیگر را دور می‌زنند و بهره‌وری برنامه‌نویس را بیشتر می‌کنند.

    پایتون کجا استفاده می شود؟

    • گوگل از پایتون در موتور جستجوی خود استفاده می کند و هزینه کار خالق پایتون - Guido van Rossum را می پردازد.
    • شرکت هایی مانند اینتل، سیسکو، هیولت پاکارد، سیگیت، کوالکام و آی بی ام از پایتون برای تست سخت افزار استفاده می کنند.
    • سرویس اشتراک ویدیو یوتیوب به شدت در پایتون پیاده سازی شده است
    • NSA از پایتون برای رمزگذاری و تجزیه و تحلیل اطلاعاتی استفاده می کند
    • JPMorgan Chase، UBS، Getco و Citadel از پایتون برای پیش‌بینی بازار مالی استفاده می‌کنند
    • نرم افزار محبوب اشتراک گذاری فایل نظیر به نظیر BitTorrent به زبان پایتون نوشته شده است.
    • فریمورک وب محبوب App Engine گوگل از پایتون به عنوان زبان برنامه نویسی برنامه خود استفاده می کند.
    • ناسا، لوس آلاموس، JPL و Fermilab از پایتون برای محاسبات علمی استفاده می کنند.
    و شرکت های دیگر نیز از این زبان استفاده می کنند.

    ادبیات

    بنابراین با زبان برنامه نویسی پایتون بهتر آشنا شدیم. به طور جداگانه می توان گفت که از مزایای پایتون نیز این است که ادبیات بسیار با کیفیتی دارد. هر زبانی نمی تواند این را به رخ بکشد. به عنوان مثال، زبان برنامه نویسی جاوا اسکریپت نمی تواند کاربران را با ادبیات زیاد خوشحال کند، اگرچه زبان واقعاً خوب است.

    در اینجا منابعی وجود دارد که به شما کمک می کند تا پایتون را بهتر بشناسید و شاید به Guido van Rossum آینده تبدیل شوید.
    * برخی از منابع ممکن است به زبان انگلیسی باشند. تعجب نکنید، اکنون بسیاری از ادبیات عالی به زبان انگلیسی نوشته شده است. و برای خود برنامه نویسی باید حداقل دانش اولیه زبان انگلیسی را بدانید.

    اکیداً توصیه می کنم ابتدا کتاب را بخوانید - مارک لوتز. آموزش نسخه چهارم پایتون این کتاب به روسی ترجمه شده است، بنابراین اگر به طور ناگهانی انگلیسی نمی دانید نباید بترسید. اما این نسخه چهارم است.

    برای کسانی که انگلیسی می دانند، می توانند اسناد را در وب سایت رسمی پایتون مطالعه کنند. همه چیز در آنجا کاملاً واضح توضیح داده شده است.

    و اگر اطلاعات بیشتری را در مورد ویدیو می پذیرید، می توانم دروسی را از Google که توسط نیک پارلانته، دانش آموزی از استنفورد تدریس می شود، راهنمایی کنم. شش سخنرانی ویدیویی در یوتیوب. اما یک قطره قطران در بشکه عسل وجود دارد ... او به انگلیسی با زیرنویس انگلیسی رهبری می کند. اما امیدوارم این چند نفر متوقف شود.

    اگر کتاب خوانده ام اما نمی دانم چگونه دانش را به کار ببرم چه باید بکنم؟

    وحشت نکنید!
    به شما توصیه می کنم کتاب مارک لوتز را بخوانید. برنامه نویسی پایتون (ویرایش چهارم). قبلاً "یادگیری" بود، اما در اینجا "برنامه نویسی". در "یادگیری" - دانش پایتون را به دست می آورید، در "برنامه نویسی" - مارک به شما می آموزد که چگونه آنها را در برنامه های آینده خود به کار ببرید. کتاب بسیار کمک کننده است. و من فکر می کنم یکی برای شما کافی است.

    من تمرین می خواهم!

    به آسانی.
    در بالا، من در مورد سخنرانی های ویدیویی نیک پارلانته در یوتیوب نوشتم، اما آنها نیز برخی از آنها را دارند

    برنامه نویسی در پایتون

    بخش 1. ویژگی های زبان و نحو اساسی

    سری مطالب:

    آیا ارزش یادگیری پایتون را دارد؟

    پایتون یکی از محبوب ترین زبان های برنامه نویسی مدرن است. این برای حل انواع مشکلات مناسب است و ویژگی های مشابه سایر زبان های برنامه نویسی را ارائه می دهد: پویایی، پشتیبانی از OOP و کراس پلتفرم. توسعه پایتون توسط Guido Van Rossum در اواسط دهه 1990 آغاز شد، بنابراین تا کنون توانسته است از شر بیماری های استاندارد "کودکی" خلاص شود، به طور قابل توجهی بهترین جنبه های زبان را توسعه دهد و بسیاری از برنامه نویسان را که از پایتون برای پیاده سازی خود استفاده می کنند جذب کند. پروژه ها.

    بسیاری از برنامه نویسان احساس می کنند که لازم است فقط زبان های برنامه نویسی "کلاسیک" مانند جاوا یا C++ را یاد بگیرند، زیرا به هر حال سایر زبان ها توانایی های مشابهی را ارائه نمی دهند. با این حال، اخیراً این باور وجود داشته است که برای یک برنامه نویس مطلوب است که بیش از یک زبان بداند، زیرا این امر افق دید او را گسترده تر می کند و به او اجازه می دهد وظایف را خلاقانه تر حل کند و رقابت خود را در بازار کار افزایش دهد.

    یادگیری کامل دو زبان مانند جاوا و سی پلاس پلاس بسیار دشوار است و زمان زیادی را می طلبد. علاوه بر این، بسیاری از جنبه های این زبان ها با یکدیگر در تضاد هستند. در عین حال، پایتون برای نقش زبان دوم ایده‌آل است، زیرا به دلیل دانش موجود در OOP بلافاصله جذب می‌شود، و این واقعیت که قابلیت‌های آن در تضاد نیست، بلکه مکمل تجربه به دست آمده در حین کار با برنامه‌نویسی دیگر است. زبان

    اگر یک برنامه نویس به تازگی در زمینه توسعه نرم افزار شروع کرده است، پایتون یک زبان برنامه نویسی "مقدمه ای" ایده آل خواهد بود. به دلیل مختصر بودن، به شما امکان می دهد تا به سرعت بر نحو زبان تسلط پیدا کنید و عدم وجود "میراث" به شکل بدیهیاتی که در طول سال ها شکل گرفته است به شما کمک می کند تا به سرعت به OOP تسلط پیدا کنید. به دلیل این عوامل، منحنی یادگیری پایتون نسبتاً کوتاه خواهد بود و برنامه نویس می تواند از مطالعات موردی به پروژه های تجاری حرکت کند.

    بنابراین، چه خواننده این مقاله یک برنامه نویس باتجربه یا مبتدی در زمینه توسعه نرم افزار باشد، پاسخ به سوالی که عنوان این بخش است باید یک بله قاطع باشد.

    این سری از مقالات برای کمک به شما در غلبه بر منحنی یادگیری با ارائه مداوم اطلاعات از ابتدایی ترین اصول زبان تا قابلیت های پیشرفته آن از نظر ادغام با سایر فناوری ها طراحی شده است. در مقاله اول در مورد ویژگی ها و سینتکس اصلی پایتون صحبت خواهیم کرد. در آینده به جنبه های پیچیده تر کار با این زبان محبوب، به ویژه برنامه نویسی شی گرا در پایتون خواهیم پرداخت.

    معماری پایتون

    هر زبان، چه برای برنامه نویسی و چه برای ارتباط، حداقل از دو بخش تشکیل شده است - واژگان و نحو. زبان پایتون نیز به همین ترتیب سازماندهی شده است، و یک نحو برای تولید عباراتی که برنامه‌های اجرایی را تشکیل می‌دهند، و یک فرهنگ لغت، مجموعه‌ای از عملکردها در قالب یک کتابخانه استاندارد و افزونه‌ها ارائه می‌کند.

    همانطور که قبلا ذکر شد، سینتکس پایتون کاملا مختصر است، به خصوص زمانی که با جاوا یا C++ مقایسه شود. از یک طرف، این خوب است، زیرا هر چه نحو ساده تر باشد، یادگیری آن آسان تر است و اشتباهات کمتری می توانید در فرآیند استفاده از آن مرتکب شوید. با این حال، چنین زبان هایی دارای یک اشکال هستند - می توان از آنها برای انتقال ساده ترین اطلاعات استفاده کرد و نمی توانند ساختارهای پیچیده را بیان کنند.

    این در مورد پایتون صدق نمی کند، زیرا یک زبان ساده اما ساده است. واقعیت این است که پایتون زبانی است با سطح انتزاع بالاتر، مثلاً بالاتر از جاوا و C ++، و به شما امکان می دهد همان مقدار اطلاعات را در مقدار کمتری از کد منبع انتقال دهید.

    همچنین، پایتون یک زبان همه منظوره است، بنابراین می توان آن را در تقریباً در هر زمینه ای از توسعه نرم افزار (مستقل، سرویس گیرنده-سرور، برنامه های کاربردی وب) و در هر زمینه موضوعی استفاده کرد. علاوه بر این، پایتون به راحتی با کامپوننت های موجود ادغام می شود، که امکان تعبیه پایتون را در برنامه های از قبل نوشته شده امکان پذیر می کند.

    بخش دیگری از موفقیت پایتون ماژول های توسعه دهنده آن است، هم استاندارد و هم خاص. افزونه‌های استاندارد پایتون برای حل مشکلاتی که در هر پروژه توسعه نرم‌افزاری، پردازش رشته و متن، تعامل با سیستم‌عامل، پشتیبانی از برنامه‌های کاربردی وب به وجود می‌آیند، به خوبی طراحی شده و قابلیت‌های اثبات شده‌ای دارند. این ماژول ها همچنین به زبان پایتون نوشته شده اند، بنابراین آنها مهمترین ویژگی آن را دارند - cross-platform، که به شما امکان می دهد بدون دردسر و سریع پروژه ها را از یک سیستم عامل به سیستم عامل دیگر منتقل کنید.

    اگر عملکرد لازم در کتابخانه استاندارد پایتون نبود، می توانید ماژول افزونه خود را برای استفاده مکرر بعدی ایجاد کنید. در اینجا شایان ذکر است که ماژول های افزونه برای پایتون را می توان نه تنها در خود پایتون، بلکه با استفاده از سایر زبان های برنامه نویسی ایجاد کرد. در این مورد، اجرای کارآمدتر وظایف با منابع فشرده، مانند محاسبات علمی پیچیده، ممکن می شود، اما اگر زبان ماژول افزونه مانند پایتون، خود کراس پلتفرم نباشد، مزیت کراس پلتفرم از بین می رود.

    زمان اجرا پایتون

    همانطور که می دانید، همه زبان های برنامه نویسی کراس پلتفرم بر اساس یک مدل ساخته شده اند: این یک کد منبع واقعا قابل حمل و یک محیط زمان اجرا است که قابل حمل نیست و برای هر پلتفرم خاصی خاص نیست. این زمان اجرا معمولاً شامل یک مفسر است که کد منبع و ابزارهای مختلف مورد نیاز برای نگهداری برنامه را اجرا می کند - اشکال زدا، اسمبلر معکوس و غیره.

    محیط اجرای Java علاوه بر این شامل یک کامپایلر است زیرا کد منبع باید به کد بایت برای ماشین مجازی جاوا کامپایل شود. زمان اجرا پایتون فقط شامل یک مفسر است که آن هم یک کامپایلر است، اما کد منبع پایتون را مستقیماً به کد بومی پلتفرم هدف کامپایل می‌کند.

    در حال حاضر سه اجرای معروف در زمان اجرا برای پایتون وجود دارد: CPython، Jython و Python.NET. همانطور که از نامش پیداست، محیط اول در C، محیط دوم در جاوا و آخرین محیط در دات نت پیاده سازی شده است.

    زمان اجرای CPython معمولاً به سادگی Python نامیده می شود و وقتی مردم در مورد Python صحبت می کنند، اغلب به این پیاده سازی اشاره می شود. این پیاده‌سازی شامل یک مفسر و ماژول‌های پسوندی است که به زبان C نوشته شده‌اند و می‌توانند روی هر پلتفرمی که یک کامپایلر استاندارد C برای آن در دسترس است استفاده شود. علاوه بر این، نسخه‌های کامپایل‌شده زمان اجرا برای سیستم‌های عامل مختلف، از جمله نسخه‌های مختلف OC Windows وجود دارد. و توزیع های مختلف لینوکس. در این مقاله و مقاله های بعدی، CPython در نظر گرفته خواهد شد، مگر اینکه به طور جداگانه مشخص شده باشد.

    زمان اجرا Jython یک پیاده سازی پایتون برای کار با ماشین مجازی جاوا (JVM) است. هر نسخه از JVM پشتیبانی می شود، از نسخه 1.2.2 شروع می شود (نسخه فعلی جاوا 1.6 است). Jython به یک ماشین جاوا نصب شده (محیط زمان اجرا جاوا) و مقداری دانش از زبان برنامه نویسی جاوا نیاز دارد. شما نیازی به دانستن نحوه نوشتن کد منبع جاوا ندارید، اما باید با فایل‌های JAR و اپلت‌های جاوا و همچنین مستندات با فرمت JavaDOC آشنا باشید.

    اینکه کدام نسخه از محیط را انتخاب کنید تنها به ترجیحات برنامه نویس بستگی دارد، به طور کلی، توصیه می شود هر دو CPython و Jython را روی رایانه نگه دارید، زیرا آنها با یکدیگر تضاد ندارند، بلکه مکمل یکدیگر هستند. محیط CPython سریعتر است زیرا هیچ لایه میانی به شکل JVM وجود ندارد. علاوه بر این، نسخه های به روز شده پایتون ابتدا به عنوان یک محیط CPython منتشر می شود. با این حال، Jython می تواند از هر کلاس جاوا به عنوان یک ماژول افزونه استفاده کند و بر روی هر پلتفرمی که برای آن پیاده سازی JVM وجود دارد اجرا شود.

    هر دو زمان اجرا تحت مجوز سازگار با GPL معروف منتشر می شوند، بنابراین می توان از آنها برای توسعه نرم افزار تجاری و رایگان استفاده کرد. اکثر ماژول های افزونه پایتون نیز تحت مجوز GPL منتشر می شوند و می توانند آزادانه در هر پروژه ای مورد استفاده قرار گیرند، اما افزونه های تجاری یا افزونه هایی با مجوزهای دقیق تر وجود دارند. بنابراین، هنگام استفاده از پایتون در یک پروژه تجاری، باید از محدودیت‌هایی که در مجوزهای افزونه افزونه وجود دارد، آگاه باشید.

    شروع کار با پایتون

    قبل از اینکه بتوانید استفاده از پایتون را شروع کنید، باید محیط زمان اجرا آن را نصب کنید - در این مقاله CPython و بر این اساس، مفسر پایتون است. روش‌های نصب مختلفی وجود دارد: کاربران پیشرفته می‌توانند پایتون را از کد منبع عمومی آن کامپایل کنند، همچنین می‌توانید فایل‌های اجرایی آماده برای یک سیستم عامل خاص را از وب‌سایت www.python.org دانلود کنید، و در نهایت، بسیاری از توزیع‌های لینوکس با مفسر پایتون قبلاً نصب شده است. این مقاله از نسخه ویندوز Python 2.x استفاده می کند، اما نمونه های ارائه شده را می توان بر روی هر نسخه از Python اجرا کرد.

    پس از اینکه نصب کننده فایل های اجرایی پایتون را در دایرکتوری مشخص شده استقرار داد، باید مقادیر متغیرهای سیستم زیر را بررسی کنید:

    • مسیر. این متغیر باید شامل مسیر دایرکتوری که پایتون در آن نصب شده باشد باشد تا سیستم عامل بتواند آن را پیدا کند.
    • PYTHONHOME. این متغیر فقط باید حاوی مسیر دایرکتوری باشد که پایتون در آن نصب شده است. این دایرکتوری همچنین باید حاوی یک زیر شاخه lib باشد که برای ماژول های استاندارد پایتون جستجو می شود.
    • PYTHONPATH. متغیری با فهرستی از دایرکتوری‌های حاوی ماژول‌های افزونه که به پایتون متصل می‌شوند (عناصر فهرست باید با جداکننده سیستم از هم جدا شوند).
    • PYTHONSTARTUP . یک متغیر اختیاری که مسیر یک اسکریپت پایتون را تعریف می کند که باید هر بار که یک جلسه مفسر تعاملی پایتون شروع می شود اجرا شود.

    خط فرمان برای کار با مفسر ساختار زیر را دارد.

    PYTHONHOME\python (گزینه ها) [ -c command | فایل اسکریپت | - ] (استدلال)

    حالت تعاملی پایتون

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

    مقدار عبارت ارزیابی شده در یک متغیر خاص به نام Single Underscore (_) ذخیره می شود تا بتوان از آن در عبارات بعدی استفاده کرد. می توانید یک جلسه تعاملی را با فشار دادن Ctrl-Z در ویندوز یا Ctrl-D در لینوکس پایان دهید.

    گزینه ها مقادیر رشته ای اختیاری هستند که می توانند رفتار مفسر را در طول یک جلسه تغییر دهند. اهمیت آنها در این مقاله و مقالات بعدی مورد بحث قرار خواهد گرفت. گزینه ها توسط یک فرمان منفرد که مفسر باید اجرا کند یا مسیر فایلی که حاوی یک اسکریپت برای اجرا است دنبال می شود. شایان ذکر است که یک دستور می تواند از چندین عبارت تشکیل شده باشد که با نقطه ویرگول از هم جدا شده اند و باید در علامت نقل قول قرار داده شود تا سیستم عامل بتواند به درستی آن را به مفسر ارسال کند. آرگومان ها آن دسته از پارامترهایی هستند که برای پردازش بیشتر به اسکریپت اجرایی ارسال می شوند. آنها به عنوان رشته به برنامه منتقل می شوند و با فاصله از هم جدا می شوند.

    برای تأیید اینکه پایتون به درستی نصب شده و کار می کند، می توانید دستورات زیر را اجرا کنید:

    c:\>python-v
    c:\> python –c “import time; print time.asctime()”

    گزینه -v نسخه پیاده سازی پایتون مورد استفاده را نشان می دهد و از آن خارج می شود، در حالی که فرمان دوم مقدار زمان سیستم را روی صفحه نمایش می دهد.

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

    اصول دستور زبان پایتون

    اسکریپت های کد منبع پایتون از به اصطلاح تشکیل شده است رشته های منطقی، که هر کدام به نوبه خود از رشته های فیزیکی. نماد # برای نشان دادن نظرات استفاده می شود. نظرات و خطوط خالی توسط مترجم نادیده گرفته می شود.

    موارد زیر جنبه بسیار مهمی است که ممکن است برای برنامه نویسانی که پایتون را به عنوان زبان برنامه نویسی دوم می آموزند عجیب به نظر برسد. نکته این است که هیچ نمادی در پایتون وجود ندارد که وظیفه جدا کردن عبارات از یکدیگر در کد منبع را داشته باشد، مثلاً یک نقطه ویرگول (;) در C++ یا جاوا. نقطه ویرگول به شما امکان می دهد دستورالعمل های متعدد را در صورتی که در یک خط فیزیکی قرار دارند از هم جدا کنید. همچنین هیچ ساختاری مانند براکت های فرفری () وجود ندارد که به شما امکان می دهد گروهی از دستورالعمل ها را در یک بلوک واحد ترکیب کنید.

    رشته های فیزیکی توسط خود کاراکتر انتهای خط از هم جدا می شوند، اما اگر عبارت برای یک رشته بیش از حد طولانی باشد، آنگاه دو رشته فیزیکی را می توان در یک رشته منطقی ترکیب کرد. برای انجام این کار، باید یک کاراکتر بک اسلش (\) را در انتهای خط اول وارد کنید و سپس خط بعدی توسط مفسر به عنوان ادامه خط اول تفسیر می شود، اما برای سایر کاراکترها غیر ممکن است. در خط اول بعد از کاراکتر \ ظاهر می شود، به عنوان مثال، یک نظر با #. تورفتگی برای برجسته کردن بلوک های کد استفاده می شود. خطوط منطقی با اندازه تورفتگی یکسان یک بلوک را تشکیل می دهند و وقتی یک خط منطقی با تورفتگی کوچکتر ظاهر می شود، بلوک به پایان می رسد. به همین دلیل است که خط اول در اسکریپت پایتون نباید تورفتگی داشته باشد. تسلط بر این قوانین ساده به شما کمک می کند تا از بسیاری از اشتباهات مرتبط با یادگیری یک زبان جدید جلوگیری کنید.

    هیچ تفاوت اساسی دیگری با سایر زبان های برنامه نویسی در دستور زبان پایتون وجود ندارد. مجموعه استانداردی از عملگرها و کلمات کلیدی وجود دارد که اکثر آنها از قبل برای برنامه نویسان آشنا هستند، اما موارد اختصاصی پایتون در این مقاله و مقالات بعدی مورد بررسی قرار خواهند گرفت. قوانین استاندارد برای تنظیم شناسه های متغیرها، متدها و کلاس ها نیز استفاده می شود - نام باید با یک زیرخط یا یک کاراکتر لاتین شروع شود و نمی تواند حاوی @، $، ٪ باشد. همچنین، تنها یک کاراکتر خط زیر نمی‌تواند به عنوان شناسه استفاده شود (به پاورقی برای حالت تعاملی مراجعه کنید).

    انواع داده های مورد استفاده در پایتون

    انواع داده های مورد استفاده در پایتون نیز مانند سایر زبان ها هستند - انواع داده های عدد صحیح و واقعی. علاوه بر این، یک نوع داده پیچیده پشتیبانی می شود - با یک بخش واقعی و خیالی (نمونه ای از چنین عددی 1.5J یا 2j است که در آن J جذر -1 است). پایتون از رشته هایی پشتیبانی می کند که می توانند در گیومه های تک، دوتایی یا سه گانه محصور شوند، در حالی که رشته ها، مانند جاوا، اشیای تغییرناپذیر هستند، به عنوان مثال. پس از ایجاد نمی تواند ارزش آنها را تغییر دهد.

    همچنین یک نوع داده منطقی bool در پایتون با دو گزینه مقدار True و False وجود دارد. با این حال، نسخه‌های قدیمی‌تر پایتون این نوع داده را نداشتند، و علاوه بر این، هر نوع داده‌ای را می‌توان به مقدار بولی True یا False فرستاد. تمام اعداد غیر صفر و رشته ها یا مجموعه های داده غیر خالی به عنوان True و مقادیر خالی و صفر به عنوان False در نظر گرفته شدند. این ویژگی در نسخه های جدید پایتون حفظ شده است، اما برای افزایش خوانایی کدها، پیشنهاد می شود از نوع bool برای متغیرهای بولی استفاده شود. در عین حال، اگر نیاز به حفظ سازگاری با پیاده‌سازی‌های قدیمی‌تر پایتون دارید، باید از 1 (True) یا 0 (False) به عنوان متغیرهای بولی استفاده کنید.

    قابلیت کار با مجموعه داده ها

    پایتون سه نوع مجموعه را برای ذخیره مجموعه داده ها تعریف می کند:

    • چندتایی؛
    • فهرست (فهرست)؛
    • فرهنگ لغت.

    تاپل یک توالی مرتب شده غیرقابل تغییر از داده ها است. می تواند حاوی عناصری از انواع مختلف باشد، مانند تاپل های دیگر. یک تاپل در پرانتز تعریف می شود و عناصر آن با کاما از هم جدا می شوند. تابع داخلی خاص ()tuple به شما اجازه می دهد تا از یک توالی داده شده تاپل ایجاد کنید.

    لیست یک توالی مرتب شده قابل تغییر از عناصر است. عناصر لیست نیز با کاما از هم جدا می شوند، اما قبلاً در پرانتز قرار گرفته اند. تابع list() برای ایجاد لیست استفاده می شود.

    دیکشنری یک جدول هش است که یک عنصر را همراه با شناسه کلید آن ذخیره می کند. دسترسی بعدی به عناصر نیز توسط کلید انجام می شود، بنابراین واحد ذخیره سازی در یک فرهنگ لغت یک جفت شی کلید و یک شی مقدار مرتبط است. فرهنگ لغت یک مجموعه قابل تغییر است اما مرتب نیست، بنابراین ترتیب عناصر در فرهنگ لغت می تواند در طول زمان تغییر کند. فرهنگ لغت در پرانتزهای مجعد مشخص شده است، کلید با یک دونقطه از مقدار جدا می شود و خود جفت های کلید/مقدار با کاما از هم جدا می شوند. تابع dict() برای ایجاد دیکشنری در دسترس است.

    لیست 1 نمونه هایی از مجموعه های مختلف موجود در پایتون را نشان می دهد.

    فهرست 1. انواع مجموعه موجود در پایتون
    ('w','o','r','l','d') # تاپیک از پنج عنصر (2.62،) # چند تایی از یک عنصر ["test", "me"] # لیست دو عنصر # لیست خالی ( 5:'a', 6:'b', 7:'c' ) # فرهنگ لغت 3 عنصری با کلیدهای int

    تعریف توابع در پایتون

    اگرچه پایتون از OOP پشتیبانی می کند، اما بسیاری از ویژگی های آن به عنوان توابع جداگانه پیاده سازی می شوند. علاوه بر این، ماژول های افزونه اغلب به شکل کتابخانه ای از توابع ساخته می شوند. توابع همچنین در کلاس ها استفاده می شوند، جایی که به طور سنتی به آنها متد می گویند.

    سینتکس برای تعریف توابع در پایتون بسیار ساده است. با توجه به شرایط فوق:

    def FUNCTION_NAME(پارامترها): عبارت #1 عبارت #2 ...

    همانطور که می بینید استفاده از کلمه کلیدی def، کولون و تورفتگی ضروری است. فراخوانی یک تابع نیز بسیار ساده است:

    FUNCTION_NAME (پارامترها)

    فقط چند مورد خاص پایتون وجود دارد که باید در نظر بگیرید. مانند جاوا، مقادیر اولیه با مقدار ارسال می‌شوند (یک کپی از پارامتر وارد تابع می‌شود و نمی‌تواند مقدار تنظیم شده قبل از فراخوانی تابع را تغییر دهد)، و انواع شی پیچیده با مرجع ارسال می‌شوند (یک مرجع ارسال می‌شود. به تابع و ممکن است به خوبی شی را تغییر دهد).

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

    # تابعی که تقسیم عدد صحیح را انجام می دهد - با استفاده از عملگر // def foo(delimoe, delitel): return delimoe // delitel print divide(50,5) # نتیجه کار: 10 print divide(delitel=5, delimoe=50) # نتیجه کار: 10

    یک تابع در پایتون باید یک مقدار را برگرداند، یا به طور صریح با استفاده از یک عبارت بازگشتی و به دنبال آن یک مقدار بازگشتی، یا در صورت عدم وجود یک دستور بازگشتی، پس از رسیدن به انتهای تابع، ثابت هیچ را برگرداند. همانطور که از مثال‌های اعلان‌های تابع می‌بینید، در پایتون لازم نیست مشخص شود که آیا چیزی از یک تابع برگردانده می‌شود یا خیر، با این حال، اگر یک تابع یک عبارت بازگشتی داشته باشد که مقداری را برمی‌گرداند، آنگاه دستورات بازگشتی دیگری در این تابع وجود دارد. باید مقادیری را برگرداند، و اگر چنین مقداری وجود ندارد، باید به صراحت بازگشت None را بنویسید.

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

    همچنین ارزش توصیف نگرش پایتون نسبت به استفاده از بازگشت را دارد. به طور پیش فرض، عمق بازگشت به 1000 سطح محدود شده است و با عبور از این سطح، یک استثنا پرتاب می شود و برنامه متوقف می شود. اما در صورت لزوم می توان این حد را تغییر داد.

    توابع در پایتون دارای ویژگی های جالب دیگری مانند مستندسازی یا توانایی تعریف توابع تو در تو هستند، اما این موارد در مقالات بعدی سری با مثال های پیچیده تر مورد بحث قرار خواهند گرفت.

    واقعا چند زبان برنامه نویسی وجود دارد؟ چندین ده از آنها وجود دارد. آنها برای کارهای مختلف، برای هر سلیقه، اندازه و رنگ طراحی شده اند. چرا این زبان خاص را انتخاب کردم؟ پایتون قادر به انجام طیف بسیار گسترده ای از وظایف، از یک اسکریپت ساده تا ایجاد کل وب سایت است. Python برای مبتدیان بسیار ساده، مختصر و آسان برای یادگیری است.

    از این مقاله یاد خواهید گرفت:

    سلام سلام! گریدین سمیون در تماس است. در نهایت به موضوع اصلی این وبلاگ یعنی برنامه نویسی سیستم های هوشمند با استفاده از زبان پایتون رسیدم. من مدت زیادی است که برای این کار آماده شده ام. و اکنون آماده ام تا مقاله های جالبی برای شما بنویسم و ​​این موضوع را به طور عمیق مطالعه کنم.

    چرا به آن نیاز دارم؟ برای شروع، من چنین وظیفه ای را در مورد توسعه، یادگیری ماشین و بینایی کامپیوتر برای خود تعیین کردم.

    شاید اگر خوش شانس باشم، جزو توسعه دهندگان پروژه های پیچیده رباتیک باشم، شاید خودم سازمان دهنده شوم و تولید ربات های شخصی را باز کنم، یا شاید... اگر اتفاقی نیفتد و خدا رحمتش کند، من از فرآیند لذت ببرید نه نتیجه

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

    ویژگی های زبان برنامه نویسی پایتون

    همانطور که در بالا نوشتم، این زبان دامنه بسیار وسیعی از عملکردها را انجام می دهد. پوشاندن همه چیز به سادگی غیرممکن است. بنابراین، لطفا قبل از مطالعه، این سوال را از خود بپرسید که چرا به آن نیاز دارم؟ با استفاده از این زبان چه کارهایی را حل خواهم کرد؟ اگر پاسختان مثبت است، ادامه دهید.

    چگونه پایتون می تواند مفید باشد؟

    1. کار با فایل های xml/html
    2. کار با درخواست های http
    3. رابط کاربری گرافیکی (رابط کاربری گرافیکی)
    4. اسکریپت های وب ایجاد کنید
    5. کار با FTP
    6. کار با تصاویر، فایل های صوتی و تصویری
    7. رباتیک (کاربرد کامپیوترهای تک بردی)
    8. برنامه ریزی محاسبات ریاضی و علمی

    و غیره. پایتون قادر به انجام وظایف معمول است.

    در پایتون می توانید پشتیبان تهیه کنید و با ایمیل ها و ساده ترین ماشین حساب و یک اسکریپت برای سایت کار کنید. زبان محدود نیست. جالبتر از همه این است که در غول های فناوری اطلاعات مانند گوگل و یاندکس استفاده می شود.

    در این مقاله شما را از ابتدا با برنامه نویسی پایتون آشنا می کنیم.

    برای اینکه برنامه روی یک دستگاه خاص کار کند، مهم نیست چه سیستم عاملی - ویندوز، لینوکس، RaspbianOS، MacOS. مهم است که مترجمی داشته باشید که دستورات را بفهمد و آنها را اجرا کند.

    ما این کار را به صورت زیر انجام می دهیم، IDE python c را دانلود کنید منبع رسمی.

    آشنایی با مترجم

    بنابراین مفسر کد متنی برنامه را پردازش می کند. یک حالت تعاملی از محیط توسعه وجود دارد. می توان آن را به چند روش راه اندازی کرد:

    1. از یک دستور معمولی cmd، دستور python را تایپ کنید.
    2. از دسکتاپ (میانبر)؛
    3. با استفاده از منوی Start - Python IDLE.

    این پنجره برای شما باز می شود:

    به هر حال، پوسته همچنین می تواند به عنوان یک ماشین حساب معمولی استفاده شود. من این نرم افزار را فرصتی برای رها کردن پتانسیل کامل رایانه های تک بردی می دانم.

    آردوینو نیز دارای پوسته نرم افزاری خاص خود است. خواندن.

    یادگیری پایتون را از کجا شروع کنیم؟ بیایید سعی کنیم برنامه اول را بنویسیم؟

    ایجاد اولین برنامه

    برنامه پایتون یک فایل متنی ساده با کد نوشته شده است. پسوند این فایل .py است. با تعیین نام مناسب در خط فرمان می توانید برنامه را اجرا کنید. ما ساده ترین برنامه استاندارد "سلام دنیا!" را با شما خواهیم نوشت.

    وظیفه نمایش "سلام جهان!" بر روی صفحه نمایش است. NotePad را راه اندازی کنید.

    کد زیر را می نویسیم:

    پایتون

    چاپ ("سلام دنیا!!!")

    چاپ ("سلام دنیا!!!")

    و در پوشه ای با رعایت مسیر C:\MyScripts ذخیره کنید. توصیه می کنم تمام پروژه ها در این پوشه ریخته شوند.

    برای اینکه ما اسکریپت را اجرا کنیم، خط فرمان را انتخاب کرده و مسیر فایل خود را وارد کنید:

    درباره کتاب ها در واقع، اگرچه زبان از نظر ایجاد کد ساده است، اما تفاوت های ظریف و کتابخانه های مختلفی برای اجرای طیف گسترده ای از وظایف وجود دارد.

    بهترین کتاب پایتون برای مبتدیان، آموزش مایک مک گرات است. راهنمای قطعی کدنویسی در پایتون

    بابت کیفیت عکس متاسفم وگرنه کار نمیکنه من هنوز خرید بقیه کتاب ها را توصیه نمی کنم، زیرا در واقع حجیم و حجیم هستند. برای اساس، مک گراث کافی خواهد بود.

    بچه ها این همه برای من است، اگر سوالی دارید، می توانید همیشه برای من بنویسید. مشترک شدن در اخبار وبلاگ برای دوستان ارسال کنید. با تشکر از توجه شما.

    با احترام، گریدین سمیون

    پایتون یک زبان برنامه نویسی سطح بالا و پرکاربرد است که نام آن از برنامه تلویزیونی کمدی معروف بریتانیا گرفته شده است. سیرک پرواز مونتی پایتون". زبان پایتون از نظر ساختار ساده و در عین حال فوق العاده انعطاف پذیر و قدرتمند است. با توجه به اینکه کد پایتون خوانا است و از نظر نحوی خیلی سخت نیست، بسیاری آن را بهترین زبان برنامه نویسی مقدماتی می دانند.

    پایتون توصیفی از زبان ارائه شده در آن است بنیاد پایتون را توصیف می کند:

    پایتون یک زبان برنامه نویسی تفسیر شده، تعاملی و شی گرا است. این شامل ماژول ها، استثناها، تایپ پویا، انواع داده های پویا سطح بالا و کلاس ها است. پایتون عملکرد عالی را با سینتکس تمیز ترکیب می کند. این رابط‌ها را برای بسیاری از تماس‌ها و کتابخانه‌های سیستمی و همچنین سیستم‌های پنجره‌ای مختلف پیاده‌سازی می‌کند و با C و C++ قابل توسعه است. پایتون به عنوان یک زبان افزونه برای برنامه هایی که نیاز به رابط برنامه نویسی دارند استفاده می شود. در نهایت، پایتون یک زبان چند پلتفرمی است: این زبان بر روی بسیاری از نسخه‌های یونیکس، در مک‌ها و رایانه‌های دارای MS-DOS، Windows، Windows NT و OS/2 اجرا می‌شود.

    کدام زبان برنامه نویسی را اول یاد بگیریم؟

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

    یادگیری برنامه نویسی با پایتون مانند رانندگی با مینی ون والدین است. به محض اینکه چند دور در پارکینگ روی آن بچرخید، شروع به درک نحوه رانندگی با ماشین خواهید کرد.

    تلاش برای یادگیری برنامه نویسی با C ( یا حتی اسمبلر) مانند یادگیری رانندگی با ساخت مینی ون والدینتان است. شما برای سال‌ها در گاراژ گیر خواهید کرد و قطعات را کنار هم قرار می‌دهید، و زمانی که درک کاملی از نحوه عملکرد خودرو داشته باشید و بتوانید مشکلات آینده را عیب‌یابی و پیش‌بینی کنید، قبل از اینکه پشت فرمان بنشینید دچار سوختگی خواهید شد.

    مزایای پایتون

    زبان پایتون برای مبتدیان جهانی است. می‌توانید گردش‌های کاری را خودکار کنید، وب‌سایت‌ها و برنامه‌ها و بازی‌های دسکتاپ را با پایتون بسازید. به هر حال، تقاضا برای توسعه دهندگان پایتون ( PostgreSQL، OOP، Flask، Django) در چند سال گذشته در شرکت هایی مانند اینستاگرام، ردیت، تامبلر، یوتیوب و پینترست منفجر شده است.

    زبان سطح بالا هدف عمومی

    پایتون یک زبان برنامه نویسی سطح بالا است. با استفاده از آن، می توانید تقریباً هر نوع نرم افزاری را ایجاد کنید. این تطبیق پذیری شما را علاقه مند نگه می دارد، زیرا برنامه ها و راه حل های متناسب با علایق خود را توسعه می دهید، نه اینکه در طبیعت زبانی که نگران نحو آن است گیر بیفتید.

    زبان تفسیر شده

    زبان برنامه نویسی پایتون برای مبتدیان قابل تفسیر است، به این معنی که شما نیازی به دانستن نحوه کامپایل کد ندارید. از آنجایی که مرحله کامپایل وجود ندارد، عملکرد افزایش یافته و زمان ویرایش، تست و اشکال زدایی بسیار کاهش می یابد. فقط IDE را دانلود کنید ( IDEکد خود را بنویسید و روی Run کلیک کنید ( اجرا کن).

    خوانایی کد کلیدی است

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

    این فقط سرگرم کننده است

    بدون داشتن حس شوخ طبعی نمی توانید یک زبان برنامه نویسی را به نام مونتی پایتون نام ببرید. علاوه بر این، آزمایشی برای مقایسه زمان مورد نیاز برای نوشتن یک اسکریپت ساده به زبان‌های مختلف انجام شد ( پایتون، جاوا، سی، جی، بیسیک):

    … پایتون زمان کمتر، خطوط کد کمتر و مفاهیم کمتری را برای دستیابی به هدف شما نیاز دارد... و در نهایت، برنامه نویسی پایتون سرگرم کننده است! موفقیت مکرر و سرگرم کننده باعث ایجاد اعتماد به نفس و علاقه در دانش آموزان می شود که برای یادگیری بیشتر زبان پایتون آمادگی بیشتری پیدا می کنند.

    ترجمه مقاله “چرا پایتون را یاد بگیریم؟ » توسط یک تیم پروژه دوستانه تهیه شده است.

    خوب بد

    بیایید به بخش نظری و عملی بپردازیم و از اینکه مترجم چیست شروع کنیم.

    مترجم

    مترجمبرنامه ای است که برنامه های دیگر را اجرا می کند. وقتی برنامه ای را در پایتون می نویسید، مفسر برنامه شما را می خواند و دستورالعمل ها را در آن اجرا می کند. در واقع، یک مفسر لایه ای از منطق برنامه بین کد برنامه شما و سخت افزار کامپیوتر شما است.

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

    اسکریپت را در کنسول اجرا کنید

    بیایید مفسر را در کنسول اجرا کنیم:

    اکنون منتظر دستورات است، دستورالعمل زیر را در آنجا وارد کنید:

    چاپ "سلام دنیا!"

    هورا، اولین برنامه ما! :دی

    اجرای یک اسکریپت از یک فایل

    یک فایل "test.py" با محتوای زیر ایجاد کنید:

    # چاپ "سلام دنیا" چاپ "سلام دنیا" # چاپ 2 به توان 10 چاپ 2 ** 10

    و این فایل را اجرا کنید:

    # python /path/to/test.py

    کامپایل پویا و بایت کد

    پس از اجرای اسکریپت، ابتدا منبع اسکریپت را به بایت کد برای ماشین مجازی کامپایل می کند. تلفیقیفقط یک مرحله ترجمه است و بایت کد یک نمایش سطح پایین و مستقل از پلت فرم از کد منبع برنامه است. پایتون هر دستورالعمل در کد منبع اسکریپت را به گروه هایی از دستورالعمل های بایت کد ترجمه می کند تا سرعت اجرای برنامه را افزایش دهد، زیرا بایت کد بسیار سریعتر اجرا می شود. پس از کامپایل در بایت کد، یک فایل با پسوند ایجاد می شود ".pyc"در کنار منبع اسکریپت

    دفعه بعد که برنامه خود را اجرا می کنید، مفسر مرحله کامپایل را دور می زند و یک فایل کامپایل شده ".pyc" را برای اجرا به شما می دهد. با این حال، اگر منابع برنامه خود را تغییر داده باشید، مرحله کامپایل به بایت کد دوباره انجام می شود، زیرا پایتون به طور خودکار تاریخ اصلاح فایل منبع را پیگیری می کند.

    برای مثال، اگر پایتون نتواند فایل را با بایت کد بنویسد، زیرا مجوز نوشتن روی دیسک را ندارد، برنامه دچار مشکل نمی شود، به سادگی بایت کد را در حافظه جمع می کند و با پایان برنامه آن را از آنجا حذف می کند.

    ماشین مجازی پایتون (PVM)

    پس از انجام فرآیند کامپایل، بایت کد به مکانیزمی به نام ارسال می شود ماشین مجازی، که دستورالعمل ها را از بایت کد اجرا می کند. ماشین مجازییک مکانیسم زمان اجرا است، همیشه در سیستم پایتون وجود دارد و آخرین جزء سیستم به نام "مفسر پایتون" است.

    برای تجمیع گذشته، بیایید دوباره وضعیت را روشن کنیم، کامپایل به بایت کد به صورت خودکار انجام می شود و PVM تنها بخشی از سیستم پایتون است که به همراه مفسر و کامپایلر نصب کرده اید. همه چیز به صورت شفاف برای برنامه نویس اتفاق می افتد و شما نیازی به انجام دستی این عملیات ندارید.

    کارایی

    برنامه نویسان با تجربه در زبان هایی مانند C و C++ ممکن است متوجه تفاوت هایی در مدل اجرای پایتون شوند. اولین مورد این است که هیچ مرحله ساخت یا فراخوانی به ابزار "make" وجود ندارد، برنامه های Python را می توان بلافاصله پس از نوشتن کد منبع اجرا کرد. تفاوت دوم این است که بایت کد یک کد ماشین باینری نیست (مثلاً دستورالعمل های یک ریزپردازنده اینتل)، بلکه یک نمایش داخلی یک برنامه پایتون است.

    به این دلایل، برنامه های پایتون نمی توانند به سرعت برنامه های C/C++ اجرا شوند. دستورالعمل ها توسط سیستم مجازی عبور می کنند نه ریزپردازنده و برای اجرای بایت کد به تفسیر اضافی نیاز است که دستورالعمل های آن بیشتر از دستورالعمل های ماشینی ریزپردازنده طول می کشد.

    با این حال، از سوی دیگر، بر خلاف مفسرهای سنتی، مانند PHP، یک مرحله کامپایل اضافی در اینجا وجود دارد - مفسر نیازی به تجزیه کد منبع برنامه در هر بار ندارد.

    در نتیجه پایتون از نظر عملکرد بین کامپایلر سنتی و زبان‌های برنامه‌نویسی تفسیری سنتی قرار می‌گیرد.

    پیاده سازی های جایگزین پایتون

    آنچه در بالا در مورد کامپایلر و ماشین مجازی گفته شد برای اجرای استاندارد پایتون، به اصطلاح CPython (پیاده سازی در ANSI C) معمول است. با این حال، پیاده سازی های جایگزین نیز وجود دارد، مانند Jython و IronPython، که در یک لحظه مورد بحث قرار خواهد گرفت.

    این پیاده سازی استاندارد و اصلی پایتون است که به این دلیل نامگذاری شده است که با ANSI C نوشته شده است. این همان چیزی است که ما هنگام انتخاب بسته نصب کردیم. ActivePythonیا نصب شده از FreeBSDپورت ها از آنجایی که این یک پیاده سازی مرجع است، معمولاً همینطور است سریعتر، پایدارتر و بهتر کار می کندنسبت به اجرای جایگزین

    جیتون

    نام اصلی JPython، هدف اصلی است ادغام کامل با زبان برنامه نویسی جاوا. پیاده سازی Jython از کلاس های جاوا تشکیل شده است که کد پایتون را به بایت کد جاوا کامپایل می کند و سپس بایت کد حاصل را ارسال می کند. ماشین مجازی جاوا (JVM).

    هدف Jython این است که به برنامه های پایتون اجازه دهد برنامه های جاوا را کنترل کنند، همانطور که CPython می تواند اجزای C/C++ را کنترل کند. این پیاده سازی یکپارچه سازی یکپارچه با جاوا دارد. از آنجایی که کد پایتون به بایت کد جاوا ترجمه می شود، در زمان اجرا دقیقاً مانند یک برنامه جاوا واقعی عمل می کند. برنامه‌های Jython می‌توانند به‌عنوان اپلت‌ها و سرولت‌ها عمل کنند، با استفاده از مکانیزم‌های جاوا یک رابط گرافیکی ایجاد کنند و غیره. علاوه بر این، Jython از توانایی وارد کردن و استفاده از کلاس‌های جاوا در کد پایتون پشتیبانی می‌کند.

    با این حال، از آنجایی که اجرای Jython کندتر و قوی تر از CPython است، بیشتر مورد توجه توسعه دهندگان جاوا است که به یک زبان برنامه نویسی به عنوان رابط کد جاوا نیاز دارند.

    این پیاده‌سازی برای اطمینان از ادغام برنامه‌های پایتون با برنامه‌هایی است که برای کار در محیط Microsoft .NET Framework سیستم عامل ویندوز و همچنین در Mono، معادل باز لینوکس ایجاد شده‌اند. پلتفرم دات نت و زمان اجرا سی شارپ به گونه ای طراحی شده اند که قابلیت همکاری بین اشیاء برنامه را فراهم می کند - صرف نظر از زبان برنامه نویسی مورد استفاده، بر اساس روح مدل قبلی COM مایکروسافت.

    IronPython به برنامه‌های پایتون اجازه می‌دهد تا به‌عنوان اجزای کلاینت و سرور قابل دسترسی از سایر زبان‌های برنامه‌نویسی دات‌نت عمل کنند. زیرا توسعه یافته توسط مایکروسافتاز IronPython، در میان چیزهای دیگر، انتظار بهینه سازی عملکرد قابل توجهی وجود دارد.

    بهینه سازهای سرعت اجرا

    پیاده سازی های دیگری از جمله یک کامپایلر پویا وجود دارد روانیو مترجم Shedskin C++، که سعی در بهینه سازی مدل اجرای اساسی دارند.

    کامپایلر پویا سایکو

    سیستم روانیمؤلفه ای است که مدل اجرای بایت کد را گسترش می دهد، که به برنامه ها اجازه می دهد سریعتر اجرا شوند. روانییک پسوند است PVM، که اطلاعات نوع را جمع آوری و استفاده می کند تا بخش هایی از بایت کد برنامه را به کد ماشین باینری واقعی ترجمه کند که بسیار سریعتر اجرا می شود. چنین ترجمه ای نیازی به تغییر در کد منبع یا کامپایل اضافی در طول توسعه ندارد.

    در طول اجرای برنامه، Psyco اطلاعات مربوط به انواع اشیاء را جمع آوری می کند و سپس از این اطلاعات برای تولید کد ماشین بسیار کارآمد بهینه شده برای اشیاء از آن نوع استفاده می شود. پس از آن، کد ماشین تولید شده جایگزین بخش های مربوط به بایت کد می شود و در نتیجه سرعت اجرا افزایش می یابد.

    در حالت ایده آل، برخی از بخش های کد برنامه تحت کنترل Psyco است می تواند به سرعت کد C کامپایل شده اجرا شود.

    Psyco افزایش سرعت 2 برابری تا 100 برابری را ارائه می‌کند، اما معمولاً در صورت استفاده از مفسر پایتون اصلاح نشده، 4 برابر افزایش می‌یابد. تنها نقطه ضعف Psyco این واقعیت است که در حال حاضر فقط قادر به تولید کد ماشین برای معماری است. اینتل x86.

    Psyco در توزیع استاندارد گنجانده نشده است، باید جداگانه دانلود و نصب شود. پروژه دیگری وجود دارد PyPy، که تلاشی برای بازنویسی است PVMبه منظور بهینه سازی کد همانطور که در روانی، پروژه PyPyقرار است مقدار بیشتری از پروژه را جذب کند روانی.

    مترجم Shedskin C++

    پوست ریختهسیستمی است که کد منبع پایتون را به کد منبع C++ تبدیل می کند، که سپس می تواند به کد ماشین کامپایل شود. علاوه بر این، سیستم یک رویکرد مستقل از پلتفرم را برای اجرای کد پایتون پیاده سازی می کند.

    باینری های منجمد

    گاهی اوقات شما نیاز به ایجاد فایل های اجرایی مستقل از برنامه های پایتون خود دارید. بیشتر برای بسته بندی و توزیع برنامه ها مورد نیاز است.

    باینری های ثابت بایت کد برنامه، PVM و فایل های پشتیبانی مورد نیاز برنامه ها را در یک فایل بسته واحد ترکیب می کنند. نتیجه یک فایل اجرایی منفرد است، مانند فایل ".exe" برای ویندوز.

    امروزه سه ابزار اصلی برای ایجاد "باینری های منجمد" وجود دارد:

    • py2exe- می تواند برنامه های مستقل برای ویندوز با استفاده از کتابخانه های Tkinter، PMW، wxPython و PyGTK برای ایجاد یک رابط گرافیکی، برنامه هایی با استفاده از نرم افزار ساخت بازی PyGame، برنامه های مشتری win32com و بسیاری دیگر ایجاد کند.
    • PyInstaller- شبیه py2exe است، اما روی لینوکس و یونیکس نیز کار می کند و قادر به تولید فایل های اجرایی خودنصب است.
    • یخ زدگی- نسخه اصلی.

    شما باید این ابزارها را جداگانه از پایتون دانلود کنید، آنها رایگان هستند.

    باینری های ثابت بسیار بزرگ هستند زیرا حاوی PVM هستند، اما با استانداردهای مدرن هنوز به طور غیرعادی بزرگ نیستند. از آنجایی که مفسر پایتون مستقیماً در باینری های ثابت ساخته شده است، نصب آن برای اجرای برنامه ها در انتهای گیرنده الزامی نیست.

    خلاصه

    این همه برای امروز است، در مقاله بعدی در مورد انواع داده های استاندارد در پایتون صحبت خواهم کرد و در مقالات بعدی هر نوع را به طور جداگانه و همچنین توابع و عملگرها را برای کار با این انواع در نظر خواهیم گرفت.