پایتون یک زبان برنامهنویسی آسان برای یادگیری و قدرتمند است. این زبان دارای ساختارهای دادهای سطح بالا و کارآمد و رویکردی ساده اما مؤثر به برنامهنویسی شیءگرا است. نگارش زیبا و تایپ دینامیک پایتون، به همراه ماهیت تفسیرشدهاش، آن را به زبانی ایدهآل برای نوشتن اسکریپت و توسعه سریع برنامهها در بسیاری از زمینهها و بر روی اکثر پلتفرمها تبدیل میکند.
مفسر پایتون و کتابخانه استاندارد گسترده آن به صورت رایگان بهصورت کد منبع یا باینری برای تمام پلتفرمهای اصلی از وبسایت پایتون به نشانی https://www.python.org/ در دسترس هستند و میتوانند بهراحتی توزیع شوند. همین وبسایت همچنین شامل توزیعها و ارجاعاتی به بسیاری از ماژولها، برنامهها و ابزارهای رایگان شخص ثالث پایتون و مستندات اضافی است.
مفسر پایتون بهراحتی با توابع و نوعهای داده جدیدی که به زبان C یا C++ (یا دیگر زبانهای قابل فراخوانی از C) پیادهسازی شدهاند، قابل گسترش است. پایتون همچنین بهعنوان یک زبان گسترشدهنده برای برنامههای قابل سفارشیسازی مناسب است.
این آموزش بهطور غیررسمی خواننده را با مفاهیم و ویژگیهای اصلی زبان و سیستم پایتون آشنا میکند. داشتن یک مفسر پایتون برای تجربه عملی مفید است، اما تمام مثالها خودکفا هستند، بنابراین میتوان این آموزش را بهصورت آفلاین نیز مطالعه کرد.
برای توصیف اشیاء و ماژولهای استاندارد، به «کتابخانه استاندارد پایتون» مراجعه کنید. «مرجع زبان پایتون» تعریف رسمیتری از زبان ارائه میدهد. برای نوشتن افزونهها به زبان C یا C++، «گسترش و جاسازی مفسر پایتون» و «مرجع API پایتون/C» را مطالعه کنید. همچنین چندین کتاب وجود دارد که بهطور عمیق به پایتون پرداختهاند.
این آموزش تلاش نمیکند که جامع باشد و هر ویژگی خاص یا حتی هر ویژگی رایج را پوشش دهد. در عوض، بسیاری از ویژگیهای بارز پایتون را معرفی میکند و ایده خوبی از طعم و سبک این زبان به شما میدهد. پس از مطالعه این آموزش، شما قادر خواهید بود ماژولها و برنامههای پایتون را بخوانید و بنویسید و آماده خواهید بود تا درباره ماژولهای مختلف کتابخانه پایتون که در «کتابخانه استاندارد پایتون» توصیف شدهاند، بیشتر یاد بگیرید.
فهرست واژهها نیز ارزش مرور کردن دارد.
- تحریک اشتها
- استفاده از مفسر پایتون
- 2.1 فراخوانی مفسر
- 2.1.1 انتقال آرگومانها
- 2.1.2 حالت تعاملی
- 2.2 مترجم و محیط آن
- 2.2.1 کدگذاری کد منبع
- 2.1 فراخوانی مفسر
- آشنایی غیررسمی با پایتون
- ابزارهای بیشتر برای کنترل جریان
- 4.1 عبارات if
- 4.2 عبارات for
- 4.3 تابع range()
- 4.4 عبارات break و continue
- 4.5 عبارات else در حلقهها
- 4.6 عبارات pass
- 4.7 عبارات match
- 4.8 تعریف توابع
- 4.9 اطلاعات بیشتر در مورد تعریف توابع
- 4.9.1 مقادیر پیشفرض آرگومانها
- 4.9.2 آرگومانهای کلیدی
- 4.9.3 پارامترهای خاص
- 4.9.3.1 آرگومانهای موقعیتی یا کلیدی
- 4.9.3.2 پارامترهای فقط موقعیتی
- 4.9.3.3 آرگومانهای فقط کلیدی
- 4.9.3.4 مثالهای تابع
- 4.9.3.5 خلاصه
- 4.9.4 لیستهای آرگومان دلخواه
- 4.9.5 پک کردن لیستهای آرگومان
- 4.9.6 عبارات لامبدا
- 4.9.7 رشتههای مستندات
- 4.9.8 حاشیهنویسی توابع
- 4.10 بینابین (Intermezzo): سبک کدنویسی
- ساختارهای داده
- 5.1 اطلاعات بیشتر در مورد لیستها
- 5.1.1 استفاده از لیستها بهعنوان پشتهها
- 5.1.2 استفاده از لیستها بهعنوان صفها
- 5.1.3 درک لیستها
- 5.1.4 درک لیستهای تو در تو
- 5.2 عبارت del
- 5.3 تاپلها و دنبالهها
- 5.4 مجموعهها (Sets)
- 5.5 دیکشنریها
- 5.6 تکنیکهای حلقهزنی
- 5.7 اطلاعات بیشتر در مورد شرایط
- 5.8 مقایسه دنبالهها و سایر انواع
- 5.1 اطلاعات بیشتر در مورد لیستها
- ماژولها
- 6.1 اطلاعات بیشتر در مورد ماژولها
- 6.1.1 اجرای ماژولها بهعنوان اسکریپت
- 6.1.2 مسیر جستجوی ماژول
- 6.1.3 فایلهای پایتون «کامپایلشده»
- 6.2 ماژولهای استاندارد
- 6.3 تابع dir()
- 6.4 بستهها
- 6.4.1 وارد کردن * از یک بسته
- 6.4.2 ارجاعات درون بستهای
- 6.4.3 بستهها در دایرکتوریهای متعدد
- 6.1 اطلاعات بیشتر در مورد ماژولها
- ورودی و خروجی
- 7.1 فرمتبندی خروجی پیشرفتهتر
- 7.1.1 رشتههای فرمتشده
- 7.1.2 روش format() رشته
- 7.1.3 فرمتبندی دستی رشته
- 7.1.4 فرمتبندی قدیمی رشته
- 7.2 خواندن و نوشتن فایلها
- 7.2.1 روشهای اشیاء فایل
- 7.2.2 ذخیرهسازی دادههای ساختارمند با json
- 7.1 فرمتبندی خروجی پیشرفتهتر
- خطاها و استثناها
- 8.1 خطاهای سینتکسی
- 8.2 استثناها
- 8.3 مدیریت استثناها
- 8.4 برافراشتن استثناها
- 8.5 زنجیرهسازی استثناها
- 8.6 استثناهای تعریفشده توسط کاربر
- 8.7 تعریف اقدامات تمیزکاری
- 8.8 اقدامات تمیزکاری پیشتعریفشده
- 8.9 برافراشتن و مدیریت چندین استثنای نامربوط
- 8.10 غنیسازی استثناها با یادداشتها
- کلاسها
- 9.1 یک کلمه در مورد نامها و اشیاء
- 9.2 دامنهها و فضای نامهای پایتون
- 9.2.1 مثال دامنهها و فضای نامها
- 9.3 نگاهی اولیه به کلاسها
- 9.3.1 سینتکس تعریف کلاس
- 9.3.2 اشیاء کلاس
- 9.3.3 اشیاء نمونه
- 9.3.4 اشیاء متد
- 9.3.5 متغیرهای کلاس و نمونه
- 9.4 نکات تصادفی
- 9.5 وراثت
- 9.5.1 وراثت چندگانه
- 9.6 متغیرهای خصوصی
- 9.7 مسائل و نکات
- 9.8 تکرارکنندهها
- 9.9 ژنراتورها
- 9.10 عبارات ژنراتور
- گشت و گذار کوتاه در کتابخانه استاندارد
- 10.1 رابط سیستمعامل
- 10.2 فیلترهای نام فایل
- 10.3 آرگومانهای خط فرمان
- 10.4 هدایت خروجی خطا و خاتمه برنامه
- 10.5 تشخیص الگوی رشته
- 10.6 ریاضیات
- 10.7 دسترسی به اینترنت
- 10.8 تاریخ و زمان
- 10.9 فشردهسازی دادهها
- 10.10 اندازهگیری عملکرد
- 10.11 کنترل کیفیت
- 10.12 باتریها شامل شده است
- گشت و گذار کوتاه در کتابخانه استاندارد - قسمت دوم
- 11.1 فرمتبندی خروجی
- 11.2 الگوگذاری
- 11.3 کار با چیدمانهای دادههای باینری
- 11.4 چند نخی
- 11.5 ثبت رویداد
- 11.6 ارجاعات ضعیف
- 11.7 ابزارهای کار با لیستها
- 11.8 حسابداری اعشاری با نقطه شناور
- محیطها و بستههای مجازی
- 12.1 معرفی
- 12.2 ایجاد محیطهای مجازی
- 12.3 مدیریت بستهها با pip
- حالا چه؟
- ویرایش ورودی تعاملی و جانشینی تاریخچه
- 14.1 تکمیل تب و ویرایش تاریخچه
- 14.2 جایگزینهایی برای مفسر تعاملی
- حسابداری با نقطه شناور: مسائل و محدودیتها
- 15.1 خطای نمایش
- ضمیمه
- 16.1 حالت تعاملی
- 16.1.1 مدیریت خطا
- 16.1.2 اسکریپتهای اجرایی پایتون
- 16.1.3 فایل راهاندازی تعاملی
- 16.1.4 ماژولهای سفارشیسازی
- 16.1 حالت تعاملی