درود،میهمان گرامی ورود ثبت نام لیست اعضا تقویم راهنما جستجوجستجو
بازیابی رمز



آخرین ارسال ها
مدل آرایش چشم
شروع کننده:mina آخرین ارسالelina_mn پاسخ ها:117 مشاهده:14777
شستن دست ها با آب گرم مرگومیر کودکان زیر 5 سال را کاهش می دهد
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:8
چطور به کودکان شستن دست را آموزش دهیم؟
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:5
با شستن دست از بیماری جلوگیری کنید
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
اسکناس های کثیف موجب انتقال بیماری کچلی می شوند
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:3
راه های پیشگیری از سرما خوردگی
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
تفاوتهای سرماخوردگی ، آنفلوآنزای فصلی و H1N1
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:6
لنزهای تماسی برای کنترل قند خون
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
چند توصیه برای شستشوی پوست خود
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
محلی برای طرح سوالات و مشکلاتی که به ان برخورد میکنید
شروع کننده:admin آخرین ارسالadel پاسخ ها:419 مشاهده:22206
آدامس جویدن عامل تشدید نفخ در دستگاه گوارش است
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
کافی شاپ آواکسی ها
شروع کننده:adel آخرین ارسالadel پاسخ ها:101 مشاهده:1146
انرژی نقطه صفر و معادله دیراک
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:3
اتحاد نیروها و نظریه سی. پی. اچ.
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
تجدید آزمایش سرعت نوترینوها/ تلاش برای اثبات یا رد سرعت بالاتر از نور در ذرات بنیادین
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
داوران ترک ديدار ايران و آلباني را قضاوت مي کنند
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:2
زندگینامه بزرگان
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:10 مشاهده:20
****امشب سایت ها ده دقیقه تعطیل می شوند***
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:5
ارتباط البرت انیشتین با آیت الله بروجردی
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:4
اسامي ممنوعه در سازمان ثبت احوال
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:5
درياچه شيلي در كمتر از 24 ساعت ناپديد شد!
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:3
بيانيه‌ دفتر موسيقي ارشاد درباره خواننده هتاک
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:5
شهادت دو زن ايراني در حمله به زائران در عراق
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:2
واکنش آیت الله جوادی آملی به رژه همجنس بازان در آذربایجان
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:3
برگزاری تجمع بزرگ عزاداران امام هادی (ع) و کفن پوشان حضرت رقیه (س)
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:4
سیم‌کارت‌های رایتل فعلا خرید و فروش نمی‌شوند
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:3
اعلام زمان بندی اچ تی سی برای عرضه بروز رسانی اندروید 4 تعدادی از اسمارت فون های این
شروع کننده:adel آخرین ارسالadel پاسخ ها:0 مشاهده:2
استفان هاوکینگ چگونه حرف می‌زند؟
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:5
رصدخانه مراغه، میراث جاویدان
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
تولید نانوساختارهای ستاره ای شکل
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:3
می‌دانید چند سنگ آسمانی زمین را تهدید می‌کنند؟
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:1
هوانوردی
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
بشقاب پرنده؛ از واقعیت تا خیال
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
حیات منظومه شمسی، درون یک حباب است!
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
انواع موشک های کروز
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
گنج‌های فضایی مال کیست؟
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
حدس می زنید این عکس کجاست؟
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:3
حمله پرندگان خشمگین به فضا
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
ماه، مقصر غرق شدن کشتی تایتانیک بوده است!
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
اندازه گیری دقیق روشن ترین ذرات ریز اتمی جهان
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
آخرین پرواز ارابه های الهام بخش فضایی
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
روند پیرشدن فضانوردان آهسته تر می شود
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
تولید کاتالیست های ارزان و زیست سازگار
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
بررسی حیات زمینی در برخی کوتوله های سرخ
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
جدیدترین معمای کیهانی: کهکشان‌های نخستین چند ستاره داشتند؟
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
تالس
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
پلاسمون کوانتومی در نانوذراتی در ابعاد اتمی
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
ابن سینا و گذر زهره
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
داده نمایی (اینفوگرافی) گذر زهره‌ 2012
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:2
احتمال تنها بودن بشر در جهان هستی قدرت گرفت
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:3
اطلاعیه مشترک IOTA/ME و جمعیت منجمان مهبانگ در خصوص گذر زهره
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
شواهد فعالیت آتشفشانی سیاره سرخ
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
نانوایی فضایی
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
مریخ نوردان و خطر آسیب دیدگی DNA
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:5
گیراندازی انرژی بیشتر با نوع جدیدی از پیل خورشیدی
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:5
ایجاد خاصیت پیزوالکتریک درگرافن
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:5
قلب کوچک مشتری
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
تصویر سرسبزی بهار زمین را از فضا ببینید
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:7
ضریب شکست
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:7
دزدی ستارگان آسمان از همدیگر
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:5
دسته‌های نانولوله‌ای پیلهای خورشیدی کارآمدی می سازند
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
زوم کردن بر روی حلقه های زحل
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
آیا می دانید مرکز دنیا کجاست؟
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
ارسال تصاویر فضایی برای بررسی بزرگترین ماهواره رصد زمین
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:5
ارائه روشی برای بهبود ادوات الکترونیکی مولکولی
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
زمان پرتاب نخستین فضاپیمای خصوصی به ایستگاه فضایی بین‌المللی اعلام شد
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
تفاوت کفش پوشیدن دختر ها و پسرها – عکس طنز
شروع کننده:khamosh آخرین ارسالkhamosh پاسخ ها:0 مشاهده:6
افزایش تابش مادون قرمز با قرار دادن نانوبلور درون ماتریکس معدنی
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
شاید ۳۶ سال پیش در مریخ حیات کشف شده باشد
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
بهبود قطعات الکترونیکی با الماس
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:5
شرکت ریتئون با استفاده از نقاط کوانتومی یک سیستم تدافعی جهت محافظت تجهیزات فضایی مانن
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
یک سیستم پدافند ضدماهواره‌ای بر اساس نقاط کوانتومی
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
چند یخچال طبیعی در آسیا ضخیم تر شده اند
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
مهمترین طرح های فضایی برای گردشگران
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
گردباد، از نمای نزدیک
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
نیترات به عنوان آلاینده
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
بازگردانی منوی Start به «ویندوز 8»
شروع کننده:kingpayam آخرین ارسالkingpayam پاسخ ها:0 مشاهده:5
ارائه روشی برای مطالعه تغییر نانوذرات در حین انجام واکنش
شروع کننده:silent boy آخرین ارسالsilent boy پاسخ ها:0 مشاهده:4
پاک کردن رمز ترسیمی 9 خانه‌ای در سیستم عامل اندروید
شروع کننده:kingpayam آخرین ارسالkingpayam پاسخ ها:0 مشاهده:4
از بین بردن واترمارک موجود در دسکتاپ در نسخه پیش‌نمایش «ویندوز 8»
شروع کننده:kingpayam آخرین ارسالkingpayam پاسخ ها:0 مشاهده:5
title title title title title
آموزش پرورش اندام در 90 روز دستبندوگوشواره ماه تولد شما آموزش افزایش قد (کتاب و سی دی) جدیدترین روش بستن شال و روسری برنامه مشاهده همه شبکه های دنیا


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

همکار انجمن
****

ارسال ها: 7,447
تاریخ عضویت: 14 February 2009
امتیاز: 60
تشکرهای ارسالی : 25764
تشکرهای دریافتی : 7800
اعتبار: 43  واحد
1
آشنایی و کار با زبان برنامه‌نویسی‌ پایتون

آشنایی و کار با زبان برنامه‌نویسی‌ پایتون

اول: زمانی به برنامه‌نویسی به دید امری عجیب، پیچیده و حتی جادویی نگریسته می‌شد که تنها در‌توان خوره‌های کامپیوتر و نوابغ علوم الکترونیک و کامپیوتر بود. با ساده‌تر شدن زبان‌های برنامه‌نویسی و کاربرد روزافزون کامپیوتر در زندگی روزمره این دیدگاه به‌سرعت در حال منسوخ شدن است. تقریباً هر کاربر ساده کامپیوتر ممکن است در شرایطی قرار گرفته باشد که آرزو کند کاش برنامه‌ای برای انجام عملی خاص وجود داشت یا چه خوب می‌شد سیستم را برای انجام چنین عملی برنامه‌ریزی کرد. امروزه، این آرزو بیش‌از هر زمان دیگری قابل تحقق است. دوم: می‌گویند یادگیری هر زبان تازه، بعد جدیدی به شخصیت فرد می‌افزاید. اگرچه این مَثل ممکن است درباره زبان‌های برنامه‌نویسی درست نباشد، اما آشنا شدن با هر زبان برنامه‌نویسی جدید و پارادایم‌های حاکم بر آن، به‌یقین ‌به تعالی منطق برنامه‌نویس، افزایش قابلیت‌های وی و از همه مهم‌تر بهبود روش حل مسئله توسط وی منجر‌خواهد‌شد. در‌این‌میان، پایتون انتخابی مناسب برای کاربران مبتدی و حرفه‌ای خواهد بود (کمی بعد با دلایل این انتخاب آشنا خواهید شد). این مقاله گزیده‌ای است از مجموعه مقالاتی در شماره‌های مختلف مجله Full Circle Magazine (مجله رسمی توزیع لینوکس اوبونتو) که به‌صورت بسیار ساده و در‌عین‌حال کاربردی به معرفی این زبان و قابلیت‌های آن خواهد پرداخت. یکی دو قسمت ابتدایی این مجموعه به معرفی زبان پایتون و آشنایی ابتدایی با آن اختصاص داده شده است. مطالب سایر قسمت‌ها کاملاً مستقل از یکدیگر بوده و هریک با ارائه مثال‌های کاربردی به بررسی جنبه‌ای خاص از پایتون خواهد پرداخت.


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

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

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

چرا پایتون؟
اگرچه ممکن است بسیاری از برنامه‌نویسان قدیمی که با زبان‌هایی نظیر جاوا و C سروکار داشته‌اند، برنامه‌نویسی با پایتون را چندان جدی نگیرند و حتی آن را کودکانه بدانند، اما این امر از قابلیت‌های این زبان نخواهد‌ کاست. در‌عوض، تعداد زیادی از برنامه‌نویسان (کسانی نظیر برنامه‌نویسان گوگل) پایتون را به‌دلیل سادگی، خوانایی و امکانات فراوان به هر زبان دیگری ترجیح می‌دهند. طرفداران پایتون که غالباً Pythonistas نامیده می‌شوند، معتقدند، این زبان به‌قدری کامل و کار با آن به‌قدری لذت‌بخش است که برای تمام نیازهای برنامه‌نویسی می‌توان به آن مراجعه‌کرد. آن‌ها برای این ادعا دلایل فنی هم ارائه می‌کنند که برخی از آن‌ها به‌شرح زیر است:

سادگی
پایتون زبانی بسیار ساده و مینی‌مالیستی است. خواندن یک برنامه خوب پایتون همانند خواندن یک متن انگلیسی است. این طبیعت شبه‌کد (Pseudo-Code) یکی از بزرگ‌ترین نقاط قوت پایتون است و به شما این امکان را می‌دهد که به‌جای تمرکز روی زبان بر ‌روش حل مسئله تمرکز کنید.

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

آزاد و اپن‌سورس بودن (FLOSS)
یکی از بارزترین نمونه‌هایFLOSS (سرنام Free/Libre and Open Source Software) پایتون است. به‌عبارت‌ساده‌تر، شما می‌توانید نسخه‌هایی از این نرم‌افزار را آزادانه توزیع کنید، کدهای منبع آن را بخوانید، تغییر دهید و از آن در برنامه‌هایتان استفاده کنید. اساس FLOSS بر‌جامعه‌ای بنا شده که افراد آن دانش خود را با یکدیگر به‌اشتراک می‌گذارند. یکی از دلایل برتری پایتون نیز همین است که به‌صورت مداوم توسط جامعه‌ای که تنها خواسته‌اش بهتر شدن این زبان است، بررسی شده و بهبود داده می‌شود.

سطح بالا بودن (High-Level)
هنگام کدنویسی در پایتون لازم نیست نگران جزئیات سطح پایین باشید. مدیریت حافظه، جمع‌آوری پسماندها (Garbage Collection) و... همه توسط خود زبان انجام خواهد‌شد.

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

تفسیری بودن (Interpreted)
برنامه‌ای که با یکی از زبان‌های ترجمه‌ای نظیر C یا #C نوشته می‌شود، توسط کامپایلر و تنظیم تعداد زیادی گزینه و Flag به زبان قابل فهم ماشین تبدیل‌می‌شود. وقتی برنامه را اجرا می‌کنید، Loader/Linker برنامه، آن را به حافظه کپی کرده و اجرا می‌کند.

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

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

شیء گرایی (Object Oriented)
پایتون از هر دو شیوه برنامه‌نویسی شیء‌گرا و روال‌گرا به‌خوبی پشتیبانی می‌کند. در زبان‌های روال‌گرا، برنامه بر‌مبنای تعدادی روال یا تابع ساخته می‌شود که در‌‌واقع چیزی جزء قطعات کد با قابلیت استفاده دوباره نیستند. در زبان‌های شیء‌گرا برنامه بر‌‌پایه اشیایی ساخته می‌شود که اطلاعات و عملکرد را یک‌جا نگه‌داری می‌کنند. پایتون در مقایسه با زبان‌هایی نظیر #C یا جاوا روش بسیار ساده‌تری برای برنامه‌نویسی OOP دارد.

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

قابلیت جاسازی (Embeddable)
می‌توان پایتون را به‌صورت توکار (Embedded) در برنامه‌های C یا #C یا زبان‌های دیگر به‌کار‌ برد و از این طریق به استفاده‌کنندگان برنامه‌ قابلیت اسکریپت‌نویسی را هدیه کرد.

کتابخــانــه استــانــــدارد غنــــــی (Extensive Library)
کتابخانه استاندارد پایتون بسیار گسترآشنایی و کار با زبان برنامه‌نویسی‌ پایتونده و غنی است. این کتابخانه که به‌همراه نصب استاندارد پایتون در دسترس خواهد بود، می‌تواند گستره عظیمی از امور را نظیر Regular Expression‌، Document Generation، Unit‌Testing‌،Threading‌،Database‌،Web Browsing،FTP‌، XML‌، HTML ،Cryptography ،GUI وEmail پوشش دهد. 

در کنار کتابخانه استاندارد پایتون، تعداد زیادی کتابخانه خوش‌ساخت دیگر نظیر wxPython (برای ساخت رابط گرافیکی)، Twisted (فریم ورک توسعه اینترنت)، PIL یا Python Imaging Library (برای ویرایش تصاویر) نیز در دسترس شما است.اما در‌نهایت شاید مهم‌ترین دلیل طرفداران پایتون هیچ یک از موارد فوق نباشد. آنچه آن‌ها را شیفته این زبان می‌کند لذتی است که از کار با چنین زبان ساده و قدرتمندی نصیب برنامه‌نویس خواهد شد.

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

مشهورترین کاربر زبان پایتون غول دنیای اینترنت یعنی گوگل است. پایتون به‌عنوان زبان مورد‌علاقه برنامه‌نویسان گوگل شناخته می‌شود. موتور پردازش ابری گوگل با نام Google App Engine از پایتون پشتیبانی می‌کند. شما می‌توانید برنامه‌هایی را که به‌‌محاسبه‌های سنگین و پیچیده نیاز دارند با پایتون نوشته و از طریق App Engine اجرای آن را به سرورهای قدرتمند گوگل بسپارید. ناسا نیز از دیگر استفاده‌کنندگان پایتون است. به‌صورت دقیق‌تر شرکت United Space Alliance شرکت اصلی پیمانکار مسئول نگه‌داری شاتل‌ها در ناسا از پایتون برای برنامه‌نویسی‌های علمی، طراحی رابط کاربر و توسعه سریع نرم‌افزار بهره می‌برد. همچنین شرکت اتودسک که از بزرگ‌ترین تولید‌کنندگان نرم‌افزارهای طراحی به کمک کامپیوتر (‌CAD‌) و مصور‌سازی است، از پایتون برای ایجاد قابلیت اسکریپت‌نویسی در محیط مایا استفاده می‌کند. اما تصور نکنید که استفاده از پایتون تنها به‌محاسبه‌های علمی و کاربردهای مهندسی محدود است؛ جرج لوکاس شرکت ILM (سرنام Industrial Light and Magic) را در سال 1975 برای ایجاد جلوه‌های ویژه فیلم اصلی جنگ ستارگان تأسیس کرد. این شرکت هم اکنون برای ایجاد جلوه‌های ویژه، گرافیک کامپیوتری و مدیریت سیستم‌ها از پایتون استفاده می‌کند. و در‌نهایت می‌توان از شرکت فیلیپس نام برد. این تولید‌کننده سرشناس وسایل الکترونیکی و مصرفی برای توسعه سریع نرم‌افزار، کنترل خط تولید و سیستم کنترل کیفیت خود از پایتون بهره می‌برد. برای مشاهده فهرست کاملی از کاربران مشهور پایتون بر‌اساس زمینه فعالیت به‌همراه خلاصه‌ای کوتاه از نحوه استفاده و دلایل به‌کارگیری این زبان می‌توانید به آدرسhttp://python.org/about/success مراجعه کنید.

کدام پایتون ؟ کدام ابزار؟
زبان پایتون در‌حال‌حاضر در دو ویرایش متفاوت منتشر می‌شود. ویرایش اول سری‌2.x پایتون است که اکنون توزیع استاندارد پایتون به‌شمار‌می‌آید وبه نسخه 7/2 رسیده است. توسعه در این دسته بر‌مبنای حفظ سازگاری با نسخه‌‌های قبلی انجام می‌شود. ویرایش دوم سری 3.x پایتون است که از ابتدا بدون سازگاری با نسخه‌های 2.x و با هدف ایجاد قابلیت‌های بیشتر و به‌روز‌تر در زبان تولید‌شده و اکنون به نسخه 1/3 رسیده است. این نسخه هنوز همانند سری دوم عمومیت نیافته و به‌همین‌دلیل در این مجموعه مقاله‌ها از سری 2.x استفاده خواهد‌شد.

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

کار با زبان برنامه‌نویسی پایتون به‌هیچ ابزار یا امکانات خاصی احتیاج ندارد. تنها با داشتن یک ویرایشگر متن ساده نظیر Gedit در لینوکس یا Notepad در ویندوز می‌توانید شروع به کدنویسی کنید. اما در‌صورتی‌که ویرایشگر شما از رنگ‌بندی کد (Syntax Highlight) و سیستم تورفتگی خودکار (Auto Indent) پشتیبانی کند، سرعت کدنویسی و تصحیح شما بسیار بالاتر خواهد‌رفت. غالب ویرایشگرهای متن لینوکس نظیر Kate (در محیط KDE) و (Gedit (GNOME از هر دوی این قابلیت‌ها پشتیبانی می‌کنند. در ویندوز می‌توانید از ++Notepad که نرم‌افزاری آزاد و رایگان است استفاده‌کنید. همچنین در ویندوز و مک نصب استاندارد پایتون محیط برنامه‌نویسی پیش‌فرض پایتون یا IDLE را نیز به‌همراه خواهد‌داشت که بسیار فراتر از یک ویرایشگر متن ساده در نوشتن و تصحیح کد به شما کمک خواهد‌کرد. در تمام توزیع‌های لینوکس، این برنامه از مخازن سیستم به‌سادگی قابل نصب است. با مراجعه به‌آدرس
می‌توانید فهرست ویرایشگرها و محیط‌های توسعه موجود را برای پایتون مشاهده کنید.

مثال مقدماتی 5 دقیقه‌ای
نمونه کد پایتون
فرض کنید می‌خواهیم حاصل عبارت (g(x)=x/(1-x را برای مقادیر x معادل 0.9 ، ...، 0.3 ، 0.2 ، 0.1 بیابیم. کافی ‌است در یک فایل متنی مثلاً با نام fme.py کد موجود در فهرست 1 را نوشته و در خط فرمان با تایپ دستور زیر آن را اجرا کنید.

python fme.py $

خروجی برنامه مانند فهرست 2 خواهد بود (می‌توانید این عملیات را در IDLE نیز انجام دهید. کافی‌ است پس از باز‌کردن برنامه از منوی File گزینه New Window را انتخاب کرده، کد موردنظر را تایپ کرده و پس از ذخیره کردن با F5 اجرا کنید).

for i in rage (10) :
x=0.1*i
print x
print x/ (1-x*x)
فهرست 1

>>>
0.0
0.0
0.1
0.10101010101
0.2
0.208333333333
0.3
0.32967032967
0.4
0.47619047619
0.5
0.666666666667
0.6
0.9375
0.7
1.37254901961
0.8
2.22222222222
0.9
4.73684210526
>>>

فهرست 2

لیست‌ها در پایتون
این برنامه چگونه کار می‌کند؟ در ابتدا تابع ()range پایتون نمونه‌ای از استفاده لیست‌ها را در این زبان نشان می‌دهد. در زبان پایتون لیست چیزی شبیه آرایه است. لیست‌ها یکی از انواع بنیادی پایتون هستند. تابع ()range درواقع یک لیست را برمی‌گرداند که در اینجا عبارت است از [0,1,2,3,4,5,6,7,8,9] . به علامت‌های [] توجه کنید.

این روش رسمی پایتون برای نشان دادن یک لیست است. لیست در‌واقع ردیفی از اشیای مختلف (هر تعداد شیء با هر ترتیب و هر نوعی) است که داخل [] قرار دارند و با کاما از یکدیگر جدا شده‌اند. پس دستور اول کد ما در واقع معادل عبارت زیر است:

:[for i in [0,1,2,3,4,5,6,7,8,9

همان‌طور که حدس می‌زنید این کد باعث ده بار گردش حلقه می‌شود که در بار نخست i ‌‌برابر صفر و در بار دهم برابر9 است. پایتون یک ساختار while هم دارد (البته بدون until). همچنین مانند C++/C دستور break برای خروج کامل از حلقه در‌دسترس است (فهرست3).

>>> x=5
>>> while 1:
x += 1
if x == 8:
print x
break

8
>>>

فهرست 3

تعریف بلوک در پایتون
حال به علامت دونقطه انتهای دستور for توجه کنید که شروع یک بلوک‌ کد را اعلام می‌کند. برخلاف زبان‌هایی نظیر C++/C یا حتی Perl ، که از {} برای تعریف بلوک استفاده می‌کنند، پایتون از ترکیب دونقطه و تورفتگی برای تعریف بلوک‌ها استفاده می‌کند. ما با دونقطه به پایتون می‌گوییم که قصد داریم یک بلوک کد را آغاز کنیم و با تورفتگی ابتدای خطوط دستورات آن بلوک را تعریف می‌کنیم. برای تورفتگی می‌توانیم از 3 یا 4 یا 10 فضای خالی استفاده کنیم. میزان این فضای خالی تا زمانی که در تمام کد رعایت شود، اهمیتی ندارد.

بنابراین، در‌صورت وارد کردن کد (فهرست4) با خطای دستوری پایتون مواجه می‌شویم، زیرا تنها در صورتی می‌توانیم در یک بلوک از تورفتگی استفاده کنیم که بخواهیم بلوک دیگری در دل آن ایجاد‌کنیم (فهرست‌5).


>>> for i in range (10) :
print 0.1*i
print g(0.1*i)
File “<pyshell#18>”, line 3
print g(0.1*i)
IndentationError: unexpected indent
>>>

فهرست 4

>>> for i in range (10) :
if i%2 == 1 :
print 0.1*i

0.1
0.3
0.5
0.7
0.9
>>>

فهرست 5

در این حالت فقط زمانی که متغیر i یک عدد فرد است ما دستور چاپ را اجرا می‌کنیم. عملکرد % یا mod همانند C++/C باقی‌مانده‌تقسیم را باز‌‌‌‌می‌گرداند. دوباره به علامت دونقطه در انتهای دستور if و فاصله‌گذاری ابتدای دستور print دقت ‌کنید. همین‌طور دقت داشته باشید که مانند C++/C/perl احتیاجی به علامت نقطه کاما در انتهای دستورات نیست. هر خط جدید به‌معنای دستوری جدید خواهد بود. در‌صورتی‌که خطی طولانی دارید می‌توانید برای شکستن آن از علامت"\" استفاده کنید (فهرست 6).


>>> y=7
>>> z=12.5
>>> x = y + \
z
>>>
>>> x
19.5

فهرست 6

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

در اینجا با اجرای پایتون اعلان حالت تعاملی یعنی >>> به‌نمایش در‌می‌آید. سپس شروع به تایپ خط به خط کد می‌کنیم. هر زمان که داخل یک بلوک کد باشیم اعلان ویژه " ..." به‌نمایش در‌می‌آید. وقتی در‌انتهای کد یک خط خالی را وارد کنیم، پایتون متوجه اتمام کد شده و آن را اجرا می‌کند. درباره پوسته تعاملی توجه داشته باشید که بین پلتفرم‌های مختلف تفاوت‌های کمی وجود دارد. به‌عنوان‌مثال، ممکن است فاصله‌گذاری به‌صورت خودکار انجام نشود یا در ویندوز شما با تایپ CTRL + Z از پوسته خارج می‌شوید، اما در لینوکس باید از CTRL + D استفاده کنید. همچنین توجه کنید که در IDLE اعلان " . . ." به‌نمایش در‌نمی‌آید. در حالت تعاملی ارجاع به یک شیء یا ساخت یک شیء یا نوشتن یک عبارت بدون نسبت دادن آن به یک متغیر باعث چاپ شدن مقدار آن می‌شود (فهرست7).


>>>for i in range (4) :
3*i

0
3
6
9
>>> open (“x.txt”)
<open file ‘x.txt’ , mode ‘r’ at 0x01944390>
>>>

فهرست 7

در مثال دوم ما فایل x.txt را باز کرده‌ایم که نتیجه حاصل یک شیء فایل است و چون آن را به‌متغیری (معمولاً f) نسبت نداده‌ایم، شیء فایل چاپ شده است (فایل x.txt باید در مسیر جست‌وجوی پایتون موجود باشد).پایتون به‌عنوان یک ماشین حساب یکی از قابلیت‌های دیگر پوسته تعاملی امکان استفاده از آن به‌عنوان یک ماشین حساب سریع است. به‌عنوان‌‌مثال، برای محاسبه مقدار 88.88 به‌علاوه پنج درصد کافی‌ است، عبارت اول را تایپ کنیم (فهرست8 ) یا برای تبدیل اعداد بین مبنای 10 و 16 از دستورات قسمت دوم استفاده کنیم.

>>> 1.05*88.88
93.323999999999998
>>>
>>>
>>> 0x12
18
>>> hex (18)
'0x12'
>>>

فهرست 8

اگر به محاسبه‌های ریاضی خاصی احتیاج داشته باشیم باید ابتدا کتابخانه math را از مجموعه کتابخانه‌های استاندارد پایتون import کنیم. دقیقاً همانند سیستمی که در سی‌یا سی‌شارپ با دستور include# پیاده‌می‌شود، سپس می‌توانیم با سیستم نشانه‌گذاری نقطه‌ای از توابع تعریف شده در کتابخانه math استفاده کنیم. در شکل زیر استفاده از توابع ()sin و ()sqrt نشان‌داده‌شده‌است. همچنین توجه کنید که در محیط IDLE با تایپ math و علامت نقطه و مکثی کوتاه فهرست توابع موجود کتابخانه ظاهر‌می‌شود.

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

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

1- A Byte of Python (Swaroop C H)


2- Dive into Python (Mark Pilgrim)


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


امضاء گاهي گمان نمي كني ولي مي شود، گاهي نمي شود، نمي شود كه نمي شود؛ گاهي هزار دوره دعا بي اجابت است، گاهي نگفته قرعه به نام تو مي شود؛ گاهي گداي گداي گدايي و بخت نيست، گاهي تمام شهر گداي تو مي شود
آفلاین
Sunday 03 April 2011 21:38 نقل قول این ارسال در یک پاسخ
user

کاربر عمومی
***

ارسال ها: 4,657
تاریخ عضویت: 03 July 2008
امتیاز: 4
تشکرهای ارسالی : 86
تشکرهای دریافتی : 690
اعتبار: 82  واحد
2
RE: آشنایی و کار با زبان برنامه‌نویسی‌ پایتون
سلام داداشي دمت گرم ميشه در باره زبان برنامه نويسي پاسكال هم بذاري براي درسم اختياج دارم هيچي نمي فهمم كه اصلا چي هست

امضاء
این نام کاربری یک اکانت اختصاصی در انجمن است که برخی ارسالها به این حساب منتقل شده اند ،بدیهی است که اجازه استفاده از ان در اختیار هیچ کاربری نیست
آفلاین
Monday 04 April 2011 00:50 نقل قول این ارسال در یک پاسخ
ارسال پاسخ 


موضوع های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  آشنایی با رابط کاربردی برنامه نویسی API حسام الدین 0 324 Wednesday 30 March 2011 12:40
آخرین ارسال: حسام الدین
  بازی با نام شهرها، دانلود برنامه و پروژه برنامه نویسی به زبان ++C PPF 0 520 Monday 07 June 2010 03:16
آخرین ارسال: PPF
Shy کمک در مورد برنامه دفترچه تلفن به زبان ویژوال بیسیک مهساناناز 0 283 Tuesday 18 May 2010 20:57
آخرین ارسال: مهساناناز
  آشنایی و نحوه ي ساخت فايل هاي autorun.inf mr.Pedram 0 1,835 Saturday 12 December 2009 14:38
آخرین ارسال: mr.Pedram
Sad کمک در مورد زبان ماشین اسمبلی و ++c hugu_exelat 1 1,180 Sunday 04 January 2009 23:02
آخرین ارسال: صبا!!

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان
زمان کنونی: Thursday 24 May 2012, 23:11