ROSS RHEINGANS Yoo کے: ہیلو، میں راس ہوں. یہ ایک CS50 سیمینار ہے. یہ پروگرامنگ سے لے جائے گا ازگر میں پروگرامنگ C میں. ازگر ایک سکرپٹ کی زبان ہے. یہ سی کی طرح زیادہ تر ہے نحو میں، کچھ اگرچہ تکنیکی تفصیلات کے کہ نحو پھانسی ہو جاتا ہے کہ کس طرح تھوڑا مختلف ہیں. یہ کچھ طریقوں میں C سے کم طاقتور ہے. اس کے لئے کم ابیوینجک ہے کہاں آپ کے کمپیوٹر میں میموری، باہر رکھی ہو جاتا ہے اسے باہر رکھی ہو جاتا ہے کہ کس طرح، یہ آزادی ہو جاتا ہے اور جب ان چیزوں کی قسم. یہ، کچھ طریقوں سے سی مقابلے میں زیادہ مفید ہے اس میں پروگرام کرنے کے لئے آسان ہے کیونکہ. زبان سے کچھ کے لئے، ہے لوگوں، بدیہی. اور واقعی، مقصد کے لئے ہے پروگرام کے لئے اس تیزی سے ہونا اور ممکنہ طور پر سست پر عمل کرنے کی. اب آپ کے بارے میں لگتا ہے کہ اگر وقت کی رقم آپ کی آخری پر خرچ مسئلہ سیٹ تحریری کے خلاف آپ کے کوڈ آپ خرچ وقت کی رقم آپ کی آخری مسئلہ پر آپ کے کوڈ پر عمل مقرر، آپ کو کہ تصور تھا جس، لکھنے کے لئے دو مرتبہ کے طور پر روزہ تھا اور دو بار کے طور پر سست، ہو سکتا ہے پر عمل کرنے کی کچھ طریقوں سے سی بہتری ہو. یقینی طور پر جب آپ کو لکھنے کے لئے کی کوشش کر رہے چھوٹے پروگراموں چھوٹی چیزیں کرنا، ازگر کی پسند کا ایک مفید زبان ہے. اور اس کے آخر میں سیمینار، میں تمہیں امید بنانے کے لئے کے قابل ہو جائے مستقبل کے منصوبوں کے میں انتخاب جس کے بارے میں زبان ہے استعمال کے لئے صحیح، نہیں خیال زبان ایک سے زیادہ یہ ہے کہ ہر وقت درست. سیمینار ہے کے بارے میں کچھ چیزیں. یہ سیمینار کرنے کا ارادہ نہیں ہے شروع سے آپ ازگر سکھانے. ازگر بہت ملتا جلتا ہے C کرنے کے لئے، اور میں سنبھالنے رہا ہوں آپ کو ایک CS50 طالب علم ہیں، یا کسی سی کے ساتھ اسی طرح کی ایک واقف کے ساتھ آپ CS50 طالب علم ہیں، تو کے ارد گرد مسئلہ 6، قائم تو تم میں سے ایک بہت کچھ دیکھ لیا C میں چیزیں، میں تمہیں دے دونگا اہم اختلافات، اور چیزوں میں سے کچھ کہ ازگر مختلف بنانے اور خصوصی اور مفید، لیکن میں لئے جانے کے لئے نہیں جا رہا ہوں کیا ایک پروگرامنگ زبان ہے اور پروگراموں کو لکھنے کے لئے کس طرح. تاہم، اس سیمینار سکھاؤنگا آپ کو ایک ازگر پروگراموں کو لکھنے کے لئے آپ ان چند گروہوں میں سے ایک ہیں تو. پھر ہم کس طرح نظر آئے گا آپ psets-- نافذ کرے گی اس میں 1-6 ہونا چاہئے Python-- اور فراہم اشارہ سرکاری دستاویزات کے لئے مستقبل میں ریفرنس کے لئے. ضروری ہے کہ دوسری بات یہ ہے اس بات مقرر کیا جاتا ہے کہ کس طرح کے بارے میں، اس ویڈیو ہو جائے گا آن لائن، CS50 کے سوپیی، لہذا آپ کو طرح محسوس نہیں کرنا چاہئے آپ کے نوٹ لینے کی ضرورت ہے. تم نے ہمیشہ واپس جاؤ اور دیکھ سکتے ہیں یہ بعد میں ایک ریفرنس کے طور پر. علاوہ سلائڈ حق اب دستیاب ہیں اس سائٹ پر، جس چاہئے آپ کو Google Doc ایسا لے. یہ ایک تھوڑا سا مشترکہ ورژن ہے میں سکرین پر دکھا رہا ہوں کیا. ایک محتاط انتباہ پہلے ہم میں کود، ازگر 3 ازگر 2 سے ایک مختلف زبان ہے. وہ ایک بہت ہی نظر آتے ہیں؛ وہاں ہے بہت معمولی تکنیکی اختلافات کہ پروگراموں کا سبب بنے گی ازگر 2 میں لکھا نہیں پھانسی دے دی جائے کے قابل ہو جائے ازگر 3 ماحول میں. CS50 آلات ساتھ آتا ہے ازگر، پہلے سے طے شدہ کی طرف سے اس ازگر 2 استعمال کرتا ہے. آپ کی طرف سے اس کی جانچ پڑتال سکتا آپ کمانڈ لائن میں ٹائپ ازگر --version، جس کی پیداوار چاہئے موجودہ آلات پر 2.7.6. کرتا ہے جس میں کوشش ازگر 3، آلات میں کام کرتے ہیں، اگر 2.X.Y ازگر ڈیفالٹس، یا تو پر آلات یا اپنی خود کی مشینوں پر. آپ ازگر 3 کسی بھی وقت کی جگہ چاہئے کہ اس بات میں ازگر لکھنا. آپ کی مشین ہے ڈیفالٹ کی طرف سے 2 چل رہا ہے، کی قسم ترتیب میں ازگر 3 اصل میں کرنے کے قابل ہو ساتھ کی پیروی اور ان چیزوں کو پھانسی. مزید برآں، میں آپ کی طرف اشارہ کریں گے اب سرکاری وسائل پر. محتاط docs.python.org/3-- کہ ایک 3 اور نہیں ایک ہے کہ 2-- مفید حوالہ جات ہے. ٹیوٹوریل آپ کے ذریعے لے جائے گا وہی چیزیں کی زیادہ سے زیادہ کہ میں متن کی شکل میں سوائے، اب کر رہا ہوں. حوالہ کے طور پر مفید ہے زبان کے لئے حوالہ، اور سٹینڈرڈ لائبریری دیتا ملانے کی آپ کو کچھ اضافی فعالیت کے ساتھ. تو ایک بہت پہلے ازگر پروگرام ہم معیاری سی ہے بائیں پر، دائیں، ہم ازگر ہے. آپ تسلیم ہو سکتا ہے اس مسئلہ، یہ ہے سب سے پہلے مسئلہ میں سے ایک CS50 میں سیٹ، اور ان ایک ہی حل کا استعمال کرتے ہوئے حل. اب، ہم نے کی وجہ سے ہو کہ پارٹی کی طرف سے ان ضمنی دیکھ کر تو ہم دیکھ سکتے ہیں ہے نحوی اختلافات. کمرے میں ہاتھی سے ایک آپ صحیح محسوس کیا ہے ہو سکتا ہے کہ بیٹ سے دور، ازگر نہیں ہے کہ کوڈ کے ارد گرد اہم تقریب ریپنگ. C میں تو، آپ کا ایک گروپ لکھنا فائلوں، تم، ان کے ساتھ منسلک اور پروگرام عمل شروع اس بات میں int اہم بلایا. ازگر میں، آپ کو لکھیں ایک ، آپ فائل کو پھانسی، پروگرام پر عمل شروع ہوتا ہے فائل کے سب سے اوپر. تو یہ شروع کرنے کے لئے جا رہا ہے فائل کے سب سے اوپر یہ کچھ اور تلاش کرنے تک نیچے جانا. یہ ایک تقریب تعریف لگتا ہے تو، یہ اصل میں اس کوڈ کو پھانسی نہیں کرے گا، یہ صرف تقریب کی وضاحت کرے گا. لیکن یہاں، جب سب سے پہلے پروگرام، (ن) 10 کے برابر ہے اس پروگرام ہے کہ پہلی بات کروں گا 10 اس کی قیمت لے رہا ہے اور (ن) کے نام سے ایک متغیر میں یہ مقرر. ، اس لائن کے ایک خطاب کرتے ہوئے اس sorry-- چیزوں دیگر مطلب C پروگراموں کہ، تم نے انہیں لکھیں گے، آپ جس میں، ان بنا دیں گے کچھ بجنا حکم پکارتے، اور اس کے بعد آپ کو ایک چلانے ہوں گے کارکردگی کے نتیجے میں. ازگر پروگراموں، آپ کو چلانے کے اس mario.py فائل ٹیکسٹ طاقت میں صرف ظاہر ہوتا ہے کہ اس فائل you-- آپ کو اس فائل چلائیں گے اور آپ کو پھانسی دیں گے اس کے اور مواد کی طرف سے قتل کیا جائے گا ازگر مترجم. آپ اپنے IDE میں ایسا کرسکتے ہیں. میں ہیلو فائل ہے تو، جو صرف اس کے مندرجات ہے. یہ اصل میں ہے ازگر 2، ازگر 3، ایسا نہیں کرتے اب کے لئے نحو کے بارے میں فکر. لیکن میں پر، ازگر چلائے جائیں گے hello.py، اور یہ چلتا ہے. مجھے لگتا ہے کہ ازگر استعمال کر سکتے ہیں ایک اور طریقہ میں، اس بات میں اتنا کے ساتھ نمٹنے کے نہیں کرے گا میں صرف ازگر ٹائپ کریں تو یہ، ہے ایک ایسا ماحول جہاں میں مجھے قطرے میں لائن کی طرف سے لائن اس ازگر کھانا کھلا سکتا ہے. تو یہاں، میں ٹائپ کریں تو پرنٹ جگہ 'ہیلو، دنیا. درج ٹائپ کریں. اس کے نتائج واپس کہ مجھ توک گا فوری طور پر اس فرد لائن. یہ مفید ہو سکتا ہے. اس بات میں سلائیڈوں پر باتیں کروں گا. اور اس طرح آپ کی پیروی کرنے کے قابل ہو جائے گا ساتھ تو یہاں میں، یا لکھ کر اصل فائلوں اور پھر ان پر عمل. لیکن، اس کے واپس جانے کوڈ، دوسری بات آپ ہو سکتا ہے کہ اچھی noticed--، وہاں ہے کہ دو چیزوں پرممکن ہے کہ آپ ان بلاکوں کے بارے میں محسوس. بلکہ زیادہ اشیاءہوسکتی، سب سے پہلے، یہ ہے کہ ازگر کوئی پشت بندی نیم وقفہ ہے. نیم وقفوں ہر جگہ اختیاری ہیں اور کوئی نقصان نہیں پہنچاتی ہر جگہ. تم نے انہیں شامل کرسکتے ہیں. یہ لکھنے والے لوگوں بنا سکتا ہے آپ کو ایک زندہ snicker کی کے لئے ازگر آپ کی پیٹھ کے پیچھے، کیونکہ وہ ضروری نہیں ہیں. وہ اکثر کے دوران منعقد کیا جا رہا ہے کی ایک نشانی ہیں زبان کی سی سے ڈیزائنرز اس طرح زیادہ واضح ہے کہ محسوس ہوتا ہے اور یہ ضروری نہیں ہے کہ اعلان سے ہر وقت آپ کو ایک لائن ختم. اس ن کے بارے میں ایک عجیب بات یہ ہے منسلک ایک قسم ہے نہیں ہے. Python-- کے جادو ٹکڑوں میں سے ایک اور میں، جادو اسے فون کرنے جا رہا ہوں لیکن بہت سے ہیں تکنیکی وجوہات یہ کیوں میں سے ایک works-- ازگر کے جادو ٹکڑوں متغیر توسیع یا جا سکتا ہے جو بھی ڈیٹا پر مشتمل سکڑ اقسام آپ ان کے لئے چاہتے ہیں. تو یہ ایک 10 ہے. بعد میں نیچے تو میں نے اس کے لئے مقرر (ن) 0.5، 0.5 کہ لے جائے گا. یہ یہاں ایک int ہے کہ کوئی بات نہیں ، وہاں اس ن کا استعمال کرتا ہے کچھ فلوٹ ، کم یا زیادہ، پر chug کرنے کے قابل ہو جائے گا یہ ان میں سے تو ہو جاتا ہے کے ساتھ ساتھ. کچھ بہت حقیقی ہے جب تک یہ اعداد و شمار کا استعمال نہیں کر سکتے ہیں کی وجہ سے اس وقت ہے N ٹائپ، میں جس نقطہ مل جائے گا پلاٹ اور ایک غلطی پھینک، اور چیزوں کی ان قسم کے. لیکن یہاں، ازگر کیا واقعی پرواہ نہیں کرتا یہ میں نے اس میں رہنا جا رہا ہے سزا، کی طرح، آپ اس بات کو چاہتے ہیں؟ اس میں یہ بات؟ جی ہاں، یہ ایک چیز کی طرح ہے. میں آخر میں یہ رہنا گے. یہ تو بعد میں ایک مسئلہ ہو جائے گا اس مقصد کے لئے استعمال کرنا چاہتا ہے جو کسی اسے سنبھال نہیں کر سکتے ہیں. اس اہم میں سے ایک ہے ازگر اور C کے درمیان اختلافات اس کے لئے اسے آسان بنا دیتا بہت بڑی C پروگراموں لکھیں اور یہ آسان لکھنے کے لئے بناتا ہے بہت چھوٹے ازگر پروگرام. نحو کے لئے بہت نہیں ہے یہ کیا کرتا ہے میں مختلف. یہ تھوڑا فرق ہے کس طرح میں اس کا اظہار ہے. تو یہ کہا جاتا ہے، ایک بہت ہے Pythonic، یہ لکھنے کی راہ. رینج (ن) میں صف کے لئے، یہ ہے 0 سے (ن) کے اعداد و شمار کی حد، نچلے حصے پر مشتمل ہے اور سب سے اوپر پر خصوصی. تو یہ 0 سے N-1 ہے، جس کے لئے ہے بالکل C کوڈ کیا کر رہا ہے، یہ ایک بہت آسان ہے سوائے شاید کو دیکھنے کے لئے. متعلقہ بلاک ہے منحنی خطوط وحدانی کی طرف سے مقرر نہیں، بجائے اس سے دور مقرر کیا ہے اس پوٹ کاری کی طرف. تو ان لائنوں کی تمام ہیں درست کرنے کے لئے چار خالی جگہوں، یا ایک ہاتھی چوڑائی کے بارے میں طرح. اور وہ لوگ ہیں جو ہیں جانے کے لئے اس میں پھانسی دے دی جائے. تو میں گندگی اور اس میں پر پوٹ کاری واپس پرنٹ دھکا اصل پوٹ کاری، کہ پرنٹ لوپ کے لئے چھوڑ دیں گے. C کرنے کے لئے اس کے برعکس، یہاں ہے جہاں میں اصل میں کے ارد گرد بند تسمہ منتقل کرنے کی ضرورت. یہ آپ کو غلطیاں ملتی نہیں ہے کا مطلب آپ کو باہر کود کہ آپ کی وجہ سے غلط جگہ میں ایک تسمہ ڈال. یہ آپ کو غلطیاں ملتی مطلب یہ ہے کہ تم پر باہر کود ہے کہ آپ کی وجہ سے ایک لکیر غلط پوٹ دار. تو یہ indentations سپر ہوشیار ہے. امید ہے کہ آپ سپر جا رہا تھا ویسے بھی آپ پوٹ کاری کے ساتھ ہوشیار رہنا، اور اس طرح یہ نہیں ہے کہ ایک بوجھ کی بہت زیادہ. بلکہ ازگر کے لئے ایک بنیادی اصول، اور ہم نے ان میں سے ایک جوڑے پڑے گا ہم کے ذریعے کے ذریعے جائیں گے کہ بات کے دوران، قدرتی نحوی کوشش کر رہا ہے کچھ دیکھ کر سے پہلے. تو یہ نحو، کے لئے رینج میں اس نمبر، سٹائل کے لحاظ سے بہت ہی مخصوص ہے. ازگر میں بہت سی چیزیں ہمیں اس فارم لینے نظر آئے گا. اور تو آپ کو آنے کسی نئی چیز اس کے ساتھ آپ آپ کرنے کے قابل ہونا چاہئے اس کی شکل میں، اس پر iterate، یہ شاید باہر کر دیتا ہے اس شکل کی حمایت کرتا ہے. ہم میں سپر گہری جانے کے لئے نہیں کر رہے ہیں سچ ہے کہ کیوں تکنیکی وجوہات. لیکن یہ ہے کے لئے ایک مفید انترجشتھان ہے آپ ازگر پروگراموں کے قریب کر رہے ہیں جب، اس بات کو صرف کام کرنے کے لئے جا رہی ہے کہ. استعمال کرکے دیکھو. کمانڈ لائن بوٹ یہ کام کرتا ہے تو مترجم،، دیکھیں تم سے پہلے، چیزوں کے ساتھ پر منتقل یہاں تک کہ گوگل کو کھولنے اور کہنے کی ضرورت، کے لئے نحو ہے یہ خاص طور پر بات کیا ہے؟ ازگر کے بہت سے آپ کر سکتے تھے صرف کوشش کی طرف سے دریافت. اگر یہ اس سے بھی زیادہ کی طرح ہے سی پھر fors کی ہیں. کوئی قوسین کہ وہاں یاد رکھیں. قوسین، پھر، ہیں کوئی نقصان نہیں پہنچاتی لیکن غیر ضروری. اختتام پر ایک بڑی آنت نہیں ہے صرف طرح loops کے لئے اور پھر رشتہ دار کے بلاکس ہیں پوٹ بجائے منحنی خطوط وحدانی کی طرف سے مقرر کیا ہے. یہ تو اصل میں ہے پوٹ کاری کی سطح، اور اس کے متعلقہ بلاک دوبارہ پوٹ دار. لوگ کام وہ سی میں کیا بالکل کے طور پر یہ بہت اصل میں ایک ہی ہے. ایک بار پھر، پرنٹ ایک کردار کھو دیتا ہے printf کے سے دور آپ کو کچھ ڈور منتقل. یہ ڈور باہر کر دیتا ہے یا تو بند کر نشان لگا دیا گیا کیا جا سکتا ہے ایک کی قیمت درج یا ڈبل ​​قیمت درج کرنے کی طرف سے. کوئی فرق نہیں ہے، کہ اندر سوائے سنگل قیمت درج کرنے کی آپ استعمال کر سکتے ہیں چھوڑ کے ساتھ ڈبل قیمت درج کرنے، بلکہ کرنے کے مقابلے میں ان میں سے سب سے بچنے کے. اور ڈبل کوٹس کے اندر، آپ چھوڑ کے ساتھ ایک کی قیمت درج استعمال کر سکتے ہیں ان سے بچنے کے لئے بغیر. آپ اختلاط کرنا چاہتے تھے تو ان، آپ کو یقینی طور کر سکتے ہیں ایسا کرنے کے لئے کس طرح آن لائن نظر آتے ہیں. تم، کہ یہاں محسوس کریں گے میں = آخر میں اس بات کو منظور کر لیا ہے. یہ ایک اختیاری کی ایک مثال ہے ان چیزوں میں سے ایک ہے جس کی دلیل، ازگر کہ کی حمایت کرتا ہے یہ بہت مفید ہے. لہذا اصل تعداد کی ایک بہت ہے عام طور پر ہیں جو دلائل، ان پہلے سے طے شدہ کے لئے مقرر قیمت، لیکن یہاں میں نے آخر نامی ایک کی جگہ لے لے کرنے کا فیصلہ کیا. میں ہے یہی وجہ ہے کہ ایک خالی سٹرنگ کے ساتھ اس کی جگہ لے لے ازگر میں کہ پرنٹ کی طرف سے، ہے پہلے سے طے شدہ، ایک نئی سطر پرنٹ باہر بات یہ ہے کہ بعد تم بھی اس سے کہا. تو اس ہیش اصل میں جا رہا ہے کسی نئی لائن میں ایک ہیش سے باہر کو پرنٹ. میں نہیں کرنا چاہتے تو اور ہیش باہر پرنٹ کرنے کے لئے اس کے بعد ایک نئی سطر، پھر میں نے کا کہنا ہے کہ ایک پرنٹ نہیں. لیکن، ابھی تک، ایک آخری بات یہ ہے کہ اس پروگرام سے ایک ہے کہ لاپتہ ہے ایک سب سے اوپر شامل. پرنٹ ازگر تو بنیادی طور پر میں سینکا ہوا ہے کوئی ہیڈر یا ماڈیول ہے کہ وہاں آپ کرنے کی ضرورت ہے چاہتے تھے تو اگرچہ، شامل دوسری چیزوں کے شامل کرنے کے لئے ایک ازگر سکرپٹ میں، میں نے ایک بہت ہی اسی طرح format-- میں کیا کریں گے الفاظ صرف تھوڑا سا مختلف ہیں. مجھے لگتا ہے کہ ہم نے ذکر کیا یہاں ایک اہم ضرورت نہیں، ازگر شروع ہوتا ہے کیونکہ سب سے اوپر پر عمل. میں لپیٹ کرنا چاہتے تھے تو ایک تقریب میں اس میں this-- میں یہ کروں گا def کی تقریب کا نام کا کہنا ہے کہ، دلائل یہاں جا سکتا ہے اور ہم کریں گے ، ان کے بعد، بڑی آنت کے کچھ دیکھ اور پھر، اس پورے روانہ بلاک آپریشنل کیا ہے اس تقریب کے لئے روک دیں. تو یہ تعریف ہے تقریب کی. اور پھر نیچے، ایک اعلان ہے یہاں، میں نے صرف تقریب کال کر سکتے ہیں. اور پھر پروگرام مترجم، سب سے اوپر شروع، اس تعریف ہے دیکھیں گے. یہ جب تک اس پر عمل نہیں کریں گے یہاں حاصل، اور پھر یہ اوہ، کی طرح ہے اب میں، یہ کہا جاتا ہے مجھے اس پر عمل کرنا چاہئے لگتا ہے. بہت عام ہے کہ ایک چیز ازگر فائلوں میں دیکھنے کے لئے، خاص طور پر ازگر ہے کہ فائلوں کو عوام کے لئے جاری کئے جاتے ہیں اور by-- ترقی یافتہ اور ترقی یافتہ اور برقرار رکھا، اس فارم کے بارے میں کچھ ہے. اس کی وجہ یہ تو بنیادی طور پر ہے ازگر، آپ سب سے اوپر شروع اور پھر آپ کو، سب سے نیچے نیچے پھانسی میں صرف تھا تو میں ماریو، یہاں پکارا تو کسی بھی وقت میں اس فائل شامل دوسری فائل، میں استعمال کرنے کے لئے چاہتے تھے کیونکہ ماریو تقریب اس دوسری فائل ملے گی بھی اس میں ماریو کے لیے اس کال ہے. اور میں اس فائل بھاگ گیا جب، ماریو کو فون کریں گے. لہذا یہ ممکن ہے کہ میں نے صرف میں اصل میں ہے تو اس کو چلانے کے لئے چاہتے ہیں یہ خاص طور پر فائل کو پھانسی دے دی. اور اس طرح میں نے ایک میں لپیٹ کر سکتے ہیں میں کہنا ہے کہ جہاں اس طرح محاورے، اگر یہ پھانسی کے نام ماحول، اہم ہے پھر میں نے ان چیزوں کو کیا کرنا چاہتے ہیں. ورنہ کسی اور کر سکتے ہیں use-- میری function-- شامل میری فائل، اور صرف حاصل کرنے کے لئے ان افعال تک رسائی باتوں چلانے کے بغیر میں اس فائل میں پھانسی کرنا چاہتے ہیں ہے. یہ ایک بار پھر،، اختیاری ہے لیکن بہت عام. یہ چیزیں ہیں entirely-- C اور ازگر کے درمیان بالکل اسی، یقینی طور پر 3. میں نے 2، تقسیم آپریٹر میں سوچنا کبھی کبھی آپ کو واپس فراہم کرتا ہے جب تیرتا آپ ints کے آپریشن، اور یا تو آپ اس چاہتے تھے یا تم نے نہیں کیا. لیکن پلس، مائنس، اور اوقات آپ توقع تھا کی طرح بالکل سے کام، تھوڑا سا زیادہ اقسام سے زیادہ سوائے. تو آپ کی طرف سے floats کے ضرب کر سکتے ہیں ints کے، اور چیزوں کی ان قسم کے. سیٹ وہی کام کرتا ہے. آپ کے پاس دو برابر نشانیاں استعمال کر سکتے ہیں. inequals-- سے زیادہ، کم چیزوں کے ان قسم کے، کے مقابلے میں معانی ہیں کہ آپ ان کے ساتھ واقف ہیں. سی ان آپریٹرز استعمال کرتا ہے جہاں، ازگر تھوڑا سا زیادہ استعمال کرتا انگریزی پڑھنے کے قابل ہیں. تو بجائے دو، ampersands کے، آپ لفظی "لفظ ٹائپ" اور، "" یا یا نہیں." میں آپ if-- میں پسند اپنے مشروط بیانات، ہم نے پہلے دیکھا کہ C میں اس نحو ازگر میں اس نحو کے مساوی ہے. اور ایک بہت مختلف نہیں ہے وہاں، تھوڑا سا کے لئے سوائے اطراف کے ارد گرد اوقاف کی. ایک بار پھر، جہاں سی اور کرے گا ، ازگر سے Elif استعمال کرتا ہے تو، لیکن ان میں زیادہ تر ہیں سطح سطح تبدیلیوں. اس طرح تکرار اکثر ہے ازگر میں اس محاورے میں لکھا. تم سے اس طرح تیار کر سکتے ہیں کے باہر تھوڑی دیر کے لوپ کے ساتھ بات تم چاہتے تھے، لیکن اگر آپ کو یقینی طور پر کرنے کی ضرورت نہیں. اور پھر، اگر آپ چاہتے تھے ایک صف کے عناصر باہر پرنٹ تم نے اسے اس طرح ہو سکتا ہے. مزہ چیزیں میں سے ایک اگرچہ ازگر کے بارے میں، آپ کی ضرورت نہیں ہے اس مثال کا استعمال کرتے ہیں کرنے کے لئے، اور آپ کو ایک استعمال کر سکتے ہیں تھوڑا سا زیادہ خوبصورت ایک. تم اے آر وائی میں ایک کے لئے کہتے ہیں. تو بجائے یہاں جانے سے اور سوچکانکوں زیادہ چل رہا ہے، اور پھر باہر ھیںچ انفرادی عناصر، تم صرف اصل میں کرنے کے لئے بتا عناصر خود چلاتے ہیں. اور پھر آپ کر رہے ہیں جو کچھ بھی کے اندر براہ راست کام کر خوبصورت مذاق ہے جس میں عناصر، پر. اور ہم استعمال کریں گے دیکھتے ہوں بار بار اس محاورے ہم کوڈ کے ذریعے چلنے کے طور پر. یہ، ایک بار پھر، ایک مثال ہے کچھ کے بارے میں ہے کہ میں کروں گا وہاں ہیں، تاہم، ازگر جادو کال بہت تکنیکی وجوہات کی بنا پر یہ کام کرتا ہے یہی وجہ ہے. اور تکنیکی چیزیں ہیں کہ ترتیب میں صف کے بارے میں سچ ہونے کی ضرورت ہے اس کے لئے پردے کے پیچھے کام کرنے کے لئے. بات یہ ہے کہ سب سے زیادہ اقسام آپ کو اس کام کی توقع تھا جس اس کے لئے لاگو ہو چکے ہیں بلٹ میں زبان میں. یہ اچھا ہو گا کہ ایک بات یہ ہر زبان میں کام کیا تو، لیکن کچھ وجوہات کی بنا پر یہ کیوں نہیں کر سکتے ہیں، وہاں ہو اس سٹرنگ بار اس تعداد کو پرنٹ. ، یہ بالکل وہی جو کرتا ازگر میں باہر کر دیتا ہے آپ کو صرف مذاق ہے جس، کیا چاہتے ہیں اور یہ کہ ہم اصل میں کر سکتے ہیں کا مطلب ہے کہ پھر mario.c، یہ پروگرام کم. بلکہ ایک بہت iterating کر مقابلے میں، ہم کر سکتے ہیں صرف، میں خالی جگہوں میں سے کچھ تعداد چاہتے ہیں، کا کہنا ہے کہ میں hashes کی تعداد میں چاہتا ہوں، اور آخر میں کچھ hashes کو. اور پھر، ہم اس کی شکل کا استعمال کریں. یہاں، ہم میں گزر رہے ہیں ایک متغیر کو اس طرح. ایک بار پھر، ہم کہتے ہیں کہ کرنے کی ضرورت نہیں یہ متغیر کے کس قسم کی، صرف وقت اور ہم کریں گے غلطیوں کو ملے چلانے کے وقت ہے. جب کوئی کوشش میں کچھ منتقل کرنے کی، یہ صرف ٹھیک تقریب میں آ جائیں گے. یہ نہیں ہے کیونکہ ہم یہاں پچر تو آپ حدود سے زائد تشکیل دے سکتے ہیں بات، میں، وہاں ایک رن ٹائم غلطی ملے گا اور میں نے اسے اس طرح ڈیبگ کرنا پڑے گا. لیکن اس دوران میں، میں نہیں ہے کے بارے میں بہت محتاط رہنے کی کیا اصل میں جب تک، میں منظور ہو جاتا پھانسی یہ سب بہت cleanly ہے. میں نے یہ بھی کر سکتے ہیں تھوڑا سا کلینر ایک خاص طور پر بلٹ میں تقریب کا استعمال کرتے ہوئے ڈور پر، حق جس کا جواز ہے. یہ صرف ایک مفید تقریب ہے لائبریری کے ارد گرد جھوٹ بول رہا ہے. یہ دستاویزات میں ہے تم جاؤ اور اس کے لئے نظر آتے ہیں تو. اور میں اچھی طرح میں حاصل کرنے کے لئے جا رہا ہوں، کا کہنا ہے کہ یہ سٹرنگ، hashes کی کچھ بڑی تعداد، اور میں صحیح اندازہ لگانے والے پیڈ کا جواز پیش کرنا چاہوں گا خالی جگہوں کے ساتھ اسے باہر اس کی لمبائی ہونا. ایک بار پھر، اس میں ہے us-- لاتا ہے جس میں دستاویزات، میں واقعی میں these-- ذریعے پر کلک کریں گے جو ہمارے دوسرا قاعدہ ہمیں لاتا ہے Python-- معیاری لائبریری کے لئے تقریب طریقوں کو آپ دوست ہیں. اور یہ اکثر آپ کی جبکہ قابل ہے مجھے حیرت ہے کے لئے تلاش کر جانا تو صرف یہ کرتا ہے کہ ایک چیز ہے. وہاں شاید ہے. آپ پیڈ کرنا چاہتے ہیں تو ایک تار، آپ اگر واپس لینے کے لئے پسند ایک تار کے نصف، آپ چاہتے ہیں تو تو، ایک تار کے ذریعے تلاش کرنے کے لئے پسند آپ چیزوں کی ایک جوڑے توڑ کرنے کے لئے چاہوں گا ایک سٹرنگ کے ساتھ ان کے درمیان کوما کے ساتھ، معیاری لائبریری سے ہیں ایسا کرنے کے لئے کام کرتا ہے. اور یہ آپ کی زندگی ہے تم ان کا استعمال تو آسان بجائے باہر رولنگ کے اپنے اپنے طور پر سب کچھ یہاں کوڈ کے پانچ لائنوں میں، یہاں کوڈ کے پانچ لائنوں. یہ واقعی میں شروع ہوتا ہے حقیقی وقت تک کا اضافہ. کو دلچسپ چیزوں میں سے ایک کس طرح کے بارے میں یہ کہا جاتا ہو جاتا. تم ایک نقطہ چیز ہے کہ محسوس کریں گے. میں بائیں پر کچھ اعتراض ہے، اور پھر میں نے ایک تقریب ایک نقطہ بلایا. یہ نمونوں میں سے ایک ہے ازگر اشیاء کے طریقوں منسلک کرنے کے لئے استعمال کرتا ہے. ہمیں کیا اس کے بارے میں بات کریں گے ، آخر میں بہت مختصر ہے لیکن ہم دونوں پر کام کر سکتے ہیں جانتے ہیں کہ کہ بات کہہ ڈاٹ لے کر چیزیں جو کچھ بھی، یا فون کی طرف سے لیتا ہے کہ ایک تقریب کہ اعتراض اور کچھ دوسرے دلائل. تو ان دونوں طریقوں سے ہیں کہ چیزوں ازگر میں کیا حاصل. اور ایک خاص چاہے فعالیت کو لاگو کیا ہے اس سٹائل یا اس میں سٹائل کچھ ہے کہ آپ کو آپ کو ایک ہینگ ملے تک نظر آنا چاہئے جس میں سے ایک کے لئے اس میں گر کرنے کے لئے امکان ہے. ایک سے زیادہ یا اس سے کم ہم آہنگ نہیں ہے ازگر کا فلسفه آپ زیادہ تر جذب اس میں ایک بہت لکھ کر. کچھ نقطہ، ان میں سے جو ایک میں کچھ کے طور پر لاگو کیا جائے گا قدرتی بن جاتا ہے. اب کے لئے، یہ صرف کچھ ہے آپ کو پتہ کے طور پر آپ کو جاننے کے ہر انفرادی چیز. معیاری لائبریری افعال آپ کے دوست ہیں، اور وہ آپ کو چیزیں لکھ دو کہ واقعی جلد ہی اس زیادہ جگہ نہیں لے، واقعی سروچپورن. اور یہ شاید زیادہ اصل میں ہے واضح، میں سی پروگرام کے مقابلے میں، کہونگا وہاں پر. تو حقیقت یہ ہے کہ نہیں ذکر کرنا مختصر آپ کو ایک پورے ہاتھی فٹ کر سکتے ہیں اس جگہ میں ہم بچ گئے ہیں. دوسرے بات، یہ ایک نفاذ ہے ماریو کی مجھے لگتا ہے جس ڈاٹ سی، ہے کہ تم نے اسے حاصل کر سکتے ہیں کم سے کم ہے. اسے حاصل INT ہیں، لیکن نہیں ہے یہ مشکل کوڈ 10 کی قدر یہ ایک کرتا ہے کہ اسی طرح. باہر کر دیتا ہے میں اس میں سے ایک گھڑیوں 84 حروف، ازگر جبکہ 64 ہے. یہ infinitely زیادہ ہے یہاں اس ردی کی ٹوکری میں سے پڑھنے کے قابل. تو ازگر خلا میں زیادہ موثر ہے. یہ تھوڑا سا کم موثر ہے وقت میں، نہیں بلکہ زیادہ کی طرف سے. فہرستیں ازگر میں ایک اہم بات ہے. ہم نے انہیں دیکھا، لیکن وہ نہیں ہے arrays کے سی میں کیا کام زیادہ کی طرح تو یہاں، آپ کو ان کے اعلان کر سکتے ہیں، تم کسی چیز میں ان کے پاس کر سکتے ہیں. اب چوکوں کی ڈگری حاصل کی ایک ان چیزوں کی ایک سرنی. ایک بار پھر، ہم کے طور پر اعلان نہیں کیا ہے قسم ہیں، لیکن ہم نے کبھی اس کے استعمال کرنے کے لئے کوشش کرو، آپ کی توقع تھا کہ کچھ integers کے ایک صف پر کام کام پر جا رہا ہے integers کے ایک صف. یہ ایک بات ہے جس میں تم بالکل نہیں کر سکتے ہیں ، کیونکہ سی میں کیا میموری اسے، پر اتنا ہاتھ ہے لیکن ازگر میں کرنا بہت آسان ہے. میں اپنے صف بڑے بننا چاہتے ہیں تو، میں کر سکتا ہوں اس کے لئے ایک عنصر ملائیں اور یہ ٹھیک ہے. کیا پردے کے پیچھے چل رہا ہے؟ مترجم جائیں گے باہر اور کچھ میموری حاصل، اور شاید یہ ایک ملے گی اضافی میموری کا تھوڑا سا، تو میں تو میں نہیں ہے نہیں ہے کے لئے ہر وقت realloc کی. لیکن کتنا زیادہ ہے یہ یاد کی ضرورت ہے؟ یہ فیصلے نہیں ہیں آپ کو بنانے کے لئے ہے کہ، یہ فیصلے ہیں کہ مترجم کیا جا رہا ہے. یہاں ہم رینج کر سکتے ہیں دیکھیں ، دو دلائل لے لیکن یہ اب بھی پر مشتمل ہے ہونے جا رہا ہے سب سے اوپر کی تو ہم وہاں 1 کا اضافہ. یہ اس سے بھی زیادہ ہے جس میں ایک محاورے، ہے اس طرح کی باتیں لکھنے کے لئے ہوشیار راستہ. یہ فہرست فہم کہا جاتا ہے اور ہم یہاں کیا کہہ رہے ہیں میں ڈال کرنے کے لئے چاہوں گا ہے میں مربع اس کی حد میں میں ہر قیمت کے لئے. حق پر اس بات کو ایک اور ہو سکتا ہے صف، اور بائیں پر اس بات کو کسی خاص تقریب ہو ایک متغیر ہے جو کے طور پر میں لے جائے گا اور بعض نتیجہ مجھے باہر دے. میں کیا کرنے جا رہا ہوں، ہے میں تعمیر کرنے کے لئے جا رہا ہوں ان تمام چیزوں ہے کہ ایک صف اس کی حد میں سے ہر ایک کی قیمت کے لئے. یہ، سپر مختصر، سپر خوبصورت ہے اور اس کا کیا مطلب ہے بہت واضح ہے. اس میں سے ایک ہے ، یہ ایک بار پھر ہے چیزوں ایک of-- کے emblematic کے وجوہات ازگر کی طرح لوگوں کو. آپ کو پروگرامنگ چاہیں تو اس طرح، تو ازگر آپ کو جاننے کی طرح ہو سکتا ہے ایک زبان ہے. اور پھر تکنیکی وہاں ہو یہ کام کرتا ہے کیوں وجوہات. بلکہ جہاں تک ہم فکر مند ہیں کے طور پر ہم زیادہ سے زیادہ یا اس سے کم کی پرواہ نہیں کرتے. آپ کی فہرستوں کو پرنٹ کرنا چاہتے ہیں تو، اسی محاورہ میں سے کچھ مفید ہیں. اس کی حد میں میں، ہم کر سکتے تھے تمام چیزوں کے ذریعے انڈیکس اور اس کے بعد ان سب کو باہر پرنٹ. اور تم یہاں لین دیکھیں گے. کیا تم نے کبھی حاصل کرنے کے لئے چاہتا ہے صف کی لمبائی، ہے ازگر میں بہت آسان ہے، یہ سی میں بہت مشکل ہے یہ بالکل کو پرنٹ کریں گے کیا آپ کو یہ امید کروں گا. ہم نے پہلے دیکھا ہے کے طور پر ہم،، بھی کر سکتے ہیں صف میں عناصر iterate براہ راست، اور پھر صرف کے بارے میں بات ان، بلکہ انڈیکس ہونے سے واپس صف کے لئے ہر وقت میں. اور یہ آپ کر سکتے ہیں کہ ایک چیز ہے. تو C میں، آپ کو کسی چیز کے لئے سے دعا گو ہیں اس طرح، پرنٹ، کہیں گے کہ integers کے ایک صف ہے. یہ یقینی طور پر ایک نہیں ہے سٹرنگ، میں اسے پرنٹ نہیں کر سکتے ہیں. ازگر کم یا زیادہ پرواہ نہیں کرتا. یہ ایک طریقہ ہے، کی طرح ہے کہ میں ایک تار کے لیے اس میں تبدیل کر سکتا ہے؟ جی ہاں، میں ایسا کروں گا. اور اس میں صرف یہ ہے کہ باہر پرنٹ کریں گے. یہ آپ کر سکتے ہیں کا مطلب ہے کہ ان like-- باتیں کرتے ہیں مشکل حصوں میں سے سب سے زیادہ ہیں پندرہ کے کھیل کے، لکھا ازگر میں بہت مختصر. تم وہاں ہے نظر آئے گا یہاں of-- تھوڑا سا میں ایک تار کے لئے ایک عددی ڈال دیا ہے، اور میں دستی طور پر کیا کرنا ہے. اور میں شامل کرنے کے لئے جا رہا ہوں ایک سٹرنگ پر بھی اسے، یا دوسری صورت میں ازگر الجھن ہو جاتا ہے. لیکن آپ جب چاہے ایک عددی ایک تار انہوں نے مزید کہا، میں ایک حاصل کرنے کے لئے لگتا ہوں واپس عددی یا ایک تار واپس؟ لیکن پھر، اگر آپ صرف کسی چیز پر STR کال، اور یہ کسی بھی ممکنہ میں کر سکتے دنیا کو ایک سٹرنگ میں تبدیل کیا جا، یہ شاید ہو جائے گا ایک تار میں تبدیل. یہاں، ہم کا استعمال دیکھیں جالی فہرست فہم بائیں، کچھ تخکرمن، جس آپ کو اس کے لئے استعمال کیا تھا کے طور پر بالکل وہی جو ہے، اور کچھ چیزیں باہر پرنٹ. ایک بار پھر، ہم نے وضاحت کی ہے کچھ افعال اور ہم ان کو فون کرتا ہوں اہم میں ہم اصل میں فائل جب. آپ چاہوں طرح واپسی بالکل کام کرتا ہے سی تلاش کے ساتھ کام کرنے سے توقع، ہم جیسے چیزوں کو مقرر کر سکتے ہیں this-- فہرست یہاں فہم ہے ایک متغیر کے لئے ایک اسائنمنٹ نہیں ہے، اور ہم اصل میں یہ بھی آسان کر سکتے ہیں. ہم تلاش میں لکھنے کے لئے کی ضرورت نہیں ہے، بلٹ میں زبان کی وجہ سے اس بات کو اس صف میں ہے ہے. اور، سچ واپس جھوٹے واپس. تو ہے کہ تلاش کی مکمل ہے. قسم کی مکمل قسم بلا شامل، جس کے نفاذ وہاں ہو is-- اس بات کا یقین سی لائبریریوں میں تعمیر کی. آپ کو اس چاہتے ہیں، تو قسم کے پیچھے، آپ یہ اختیاری کی جگہ لے لے سکتے ہیں ایک سچے کے ساتھ ریورس میں دلیل. اور آپ پھر سے ترتیب کرنا چاہتے ہیں تو ڈور، بلٹ میں کے ساتھ ساتھ. لہذا یہ ان کا کہنا ہے کہ نہیں ہے آپ کو ہر روز ایسا کرنے کی ضرورت ہے کہ چیزوں کو، لیکن خیال یہ ہے کہ ہے ازگر کا فلسفہ ہے، ان تمام چیزوں کو جو آپ چاہتے ہیں کہ قسم کی تعمیر میں ہیں کرنا چاہتے ہیں. اور سب سے زیادہ معیاری کام کرتا ہے، تو اس طرح، لمبائی، جو، سب سے زیادہ منطقی سمجھدار ان پٹ کی حمایت. تم نے ایک صف اسی پر لین کال آپ کو ایک تار پر لین کال طریقہ. آپ ڈور الگ الگ multiply-- آپ arrays ترتیب اسی طرح. سب سے زیادہ معیاری افعال لوگوں کی تعمیر، اور سب سے زیادہ تیسری پارٹی لائبریریوں کہ لوگوں وہ متاثر کر رہے ہیں کیونکہ، تعمیر معیاری لائبریری کے ڈیزائن، آپ ہیں کہ ہر چیز پر بلایا جا سکتا ہے کی طرح، یہی وجہ صرف کام نہیں کرتا، C. میں کم یا زیادہ، یہ ازگر میں کام کریں گے لوگوں کے اعداد و شمار کے پیچھے کام کرنے کی وجہ باہر ایک چیز ہے اور اس کے بعد کام کیا مناسب طریقے سے اس پر. تو ایک بار پھر، تکنیکی پس منظر، لیکن یہ کے طور پر پروگرامرز ہماری زندگی آسان بناتا ہے. تو یہاں فائل I / O ہے. میں نے فائل / O کے بہت سے ہے اس پیچیدہ بنانے ہے کہ چھوٹی چیزیں، اور تو وسائل موجود ہیں آن لائن، بلکہ ایک مختصر میں، آپ کو ایک فائل پر کال کھولیں مخصوص قسم کے ساتھ نام. پڑھا ہے کہ ہے تو، پڑھ اور لکھنا یا ملحق، لکھتے ہیں. آپ کی ایک مخصوص تعداد کو پڑھنے کے حروف اور آپ کو، ان کو پرنٹ تم ہیلو ملے گی! اس فائل ہیلو تھا جیسے میں، کا مطلب! اس میں، پڑھنے کے لئے کہتے ہیں، اور تم واپس مل جائے گا جو تمام ہے جس میں ایک تار ہے صف کے باقی، یا فائل کے باقی کے تمام. تم نے پھر سے پڑھ طرف بلاؤ تو، آپ فائل کے آخر میں ہیں اور تو آپ کو نہیں ملتا کچھ اور تو آپ کو بند کریں گے. پھر، یہ بجائے .بند گیا ہے فائل بند، یہ C. میں ہو جائے گا کے طور پر F ایک ہے کیونکہ یہ کم یا زیادہ ہے F کو بند کرنے کے لئے بات، اور اگر آپ چاہتے. لیکن بنیادی فائل I / O ہے خاص طور پیچیدہ. ایک بار پھر، آپ کو ایک فائل کو کھولنے کے لئے چاہتے ہیں تو، تو آپ کو ایک خاص لائن پڑھنے کے لئے چاہتے، آپ کو خاص طور سے باہر حاصل کر سکتے ہیں line-- اس کے لیے بلٹ ان ہے. آپ کو ایک لکھنے کے لئے چاہتے ہیں، تو بات، آپ کو اس میں لکھ سکتے ہیں. آپ کو انفرادی باہر لکھنے کے لئے چاہتے ہیں، تو کاٹنے، آپ کو ان میں لکھ سکتے ہیں. اور آپ iterate کرنا چاہتے ہیں تو ایک فائل کی لائنز سے زیادہ انفرادی طور پر، ہم سے ایک ٹکڑا میں نے کے طور پر چند ہفتے پہلے، آپ کو یہ کر سکتے ہیں. ایک بار پھر، سب سے زیادہ اشیاء کہ آپ کو چاہوں iterate کرنا قابل ہو جائے پسند ان سے زیادہ حمایت سب iterating. ازگر میں، ایک فائل ایک چیز شاید ہے کہ میں لائن کی طرف سے لائن iterate کرنا چاہوں گا. یہ ایک لغت تھا تو اور الفاظ کی میں تھا لوگ انفرادی حاصل کرنے کی کوشش الفاظ، تو، اس لوپ کے اندر، لائن یہ ہونے جا رہا ہے باری اور اس میں موجود ہر لفظ ہر لائن کے لئے پھانسی کی جا رہی ہے فائل کے آخر تک فائل میں. اور پھر، میں ہر طباعت تو لائن، لائنز، نئی لائنوں کے ساتھ آئے تو میں نے اختتام کر رہا ہوں اس طرح ایک بات کرنے کے لئے واپس. پھر میں نے اپنے فائل کے مواد ملے گا. میں چلاتا ہے جو دوسری بات یہ ہے کچھ فہرستوں طرح طریقوں، اور کچھ طریقوں سے کچھ کے طور پر معقول حد تک زیادہ طاقتور، واقعی ہیں جو ہیں لغات، استعمال کرنے کے لئے ٹھنڈا بلکہ بنیادی طور پر ہیش ہیں بھیس ​​میں ٹیبل. تم بالکل کا استعمال کرتے ہوئے تخلیق بہت اچھا ہے جس میں دو حروف، آپ کو لاگو کرنے کی کوشش کی آپ کا مسئلہ سیٹ کے لئے ہیش میز، آپ ہو سکتا ہے کہ بہت درد جانتے ہیں. لیکن لوگوں کو کیا ہے اس، اور، اتنی اچھی طرح سے کیا آپ کی ضرورت نہیں ہے اب اس کے بارے میں فکر. پھر آپ کو انفرادی چیزیں داخل کر سکتے ہیں. ہیش tables-- یا لغات نہیں خاص طور پر آپ کو ان میں ذخیرہ کرنے کر رہے کیا پرواہ. تو کچھ اندراجات تعداد ہیں، اور کچھ اندراجات فہرستوں ہیں، کچھ اندراجات دیگر لغات ہیں تو، اور کچھ اندراجات ڈور، ہیں ازگر زیادہ دیکھ بھال نہیں کرتا. ایک بار پھر، تم توقع اس میں جانا ہے تو ایک تار اور کیا آپ کو واپس حاصل کرنے کے ایک سرنی کہ آپ کا مسئلہ ہے، ہے. اور شاید یہ شخص کی غلطی ہے یہ چیزیں ڈال تھا لغت میں، ہو سکتا ہے کہ تم تھے. کسی کو تھا کہ تو اور، امید ہے کہ وہ تھے اچھی طرح سے کے بارے میں برتاؤ لغت میں چل رہا تھا اور کسی بھی غلطیوں نہیں چھوڑا آپ میں گر کرنے کے لئے. لیکن معیاری کام کرتا ہے گا اچھی طرح سے برتاؤ چیزیں آپ کو واپس دے. تاکہ وہ اس کی واپسی کا کہنا ہے کہ ڈور کی ایک ڈکشنری بیک، تم جا رہے ہو تو سب کچھ سے باہر نکلنے کی ایک تار ہے. آپ کو اس میں سے کچھ کرتے ہیں اور یہ دوروں تو آپ کو، اچھی طرح سے، کہ آپ پر ہو سکتا ہے. ازگر یقینی طور پر کافی آپ کو دیتا ہے اگر آپ چاہیں تو رسی، اپنے آپ کو پھانسی کے لئے. اب ہم انفرادی باہر پرنٹ کر سکتے ہیں اس کے عناصر اور اس کی واپسی بالکل آپ کیا توقع تھا. بالکل آپ کیا توقع تھا، مجھے لگتا ہے، میں نے ایک بہت استعمال کر رہا ہوں کہ ایک جملہ ہے، لیکن اس کے یا اس سے زیادہ ازگر کیسے کام کرتا ہے کم. نہیں ہے تم کسی چیز کے لئے سے دعا گو ہیں یہ، ازگر ایک غلطی باہر پھینک دیں گے اور اس سے باہر آپ کو چھوڑ دیں گے جو پروگرام آپ میں تھے. یہ اصل کو پرنٹ کریں گے اس سے زیادہ کے بارے میں معلومات، یہ کروں گا you-- اشارہ کریں گے ایک لائن کا اضافہ، اور تو. اور، ایک بار پھر، شاید ہم چاہتے ہیں لغات iterate کرنا اور اس میں تمام چیزوں کو تلاش. یہاں ہم پر iterating رہے ہیں ایک ہی وقت میں دو چیزیں. اور اس طرح ہم ایک اہم، قیمت کے ساتھ یہ کروں گا، لیکن اس کے بعد ان میں سے سب کو پرنٹ. اور ہم cast-- کرنا چاہتے تھے تو ، ہم اصل میں اس بھاگ گیا تو ہم کسی مصیبت کی وجہ سے ہوگا on-- ہم نے داؤد کے ساتھ میں چلا گیا جب، ہم نے نہیں کیا تو یہ add-- نہیں کر سکتے پہلے ایک سٹرنگ کے لئے ڈال دیا، ہم اس صف میں شامل نہیں کر سکتے ہیں ایک تار پر ڈور کی. لیکن ہم ایک کے لئے ڈال دیا ہے سٹرنگ، ہم کچھ حاصل اس طرح، جو شاید ہے کیا ہم پڑھتے کرنا چاہوں گا. یہ ہجے کنندہ ہے. ہم صرف چیزوں میں پڑھا. تو ہم میں پڑھا کر سکتے ہیں لائنوں کے طور پر انفرادی الفاظ. ہم نے گزشتہ کاٹ بات، تو بڑی آنت مائنس 1 we-- کہ آخری چیز دور chomps ایک تار کے آخری لفظ. ہم کہیں گے. ٹھیک ہے، ان میں سے ہر ایک ہو جاتا ہے یہ لغت میں ڈالا، 1 کی قیمت کے لئے تعریفیں. ہم ایسا نہیں خاص طور پر کہ ایک کے بارے میں دیکھ بھال، لیکن یہ کہنا صرف وہاں ہے، اوہ اچھا، یہ بات میں نے لغت میں ڈال دیں گے. ہم ہیں کے بعد کیا کیونکہ ایسا کرنے کے لئے جا رہے ہیں ہم ہے یہ ہے تو، اچھی طرح سے، کہنے جا رہا لغت میں بالکل. ایک بار پھر، اس چیک کے لئے رکنیت آپریٹنگ ہے ایک مکمل طور پر مختلف استعمال الگورتھم اس فہرست میں مرضی کے مقابلے میں، لیکن ہم اسی طرح، یہ کہتے ہیں کہ ازگر چینی کی کوٹنگ میں سے کچھ ہے چیزوں تاکہ وہ استعمال کرنے کے لئے آسان ہیں. پھر ہم نے دیکھا ہے سے پہلے اس طرح کی چیزیں. یہ بنیادی طور پر آپ کو مل جائے، یا یہ بالکل وہی نحو ہے کے طور پر تلاش، بلکہ ایک سے زیادہ کام کر رہا ہے مکمل طور پر مختلف ساخت. اور ہم نے خاص طور پر پرواہ نہیں. وہ اتنا چیزیں ہیں کہ آپ ہجے کنندہ کے لئے لاگو کرنے کے لئے کہا گیا تھا. اس کی شرح میں، ہم کرنے جا رہے ہیں یا زیادہ کیا psets کے تمام کم. سامعین: تاکہ بنیادی طور پر صرف واپس آتا ہے یہ نہیں کرتا ہے کے طور پر اگر غلط طریقے سے ہجے لغت میں کچھ میچ؟ ROSS RHEINGANS Yoo کے: جی ہاں، جی ہاں. اور اس طرح، یہ ایک ایک مسئلہ کی موافقت قائم جو بالکل ایسا کرنے کے لئے آپ سے پوچھتا ہے. سامعین: کیوں 1 مائنس لکیر ہے؟ ROSS RHEINGANS Yoo کے: تو جب تم iterating کر رہے ایک فائل کے لئے پوچھ سے زائد لائنز کی طرف سے، لکیریں ایک نئی سطر کے کردار کے ساتھ آئے اندازہ لگانے والے مائنس 1 کے اختتام پر ان سے خریداری کرنے کے لئے ہے. اور یہ ایک خاص طور پر لچکدار ہے چیزوں میں تخکرمن کی راہ. آپ کو ایک تار ہے تو، اور آپ اچھی طرح ہوں، چاہوں گا کردار تین میں شروع کرنے جا اور میں ختم کرنے کے لئے جا رہا ہوں. 3 بڑی آنت کہ آپ کے لئے کیا کریں گے. آپ جیسے ہیں تو، میں شروع کرنے کے لئے چاہتے ہیں آغاز اور آخری مائنس 1 پر جائیں کے کردار، بڑی آنت مائنس 1. اور آپ کی طرف سے جانے کے لئے چاہتا ہے تو پہلے مائنس کرنے کے لئے تیسری، تو آپ 3 مائنس 1 کہونگا. مزید برآں، آپ انڈیکس کرنا چاہتے ہیں تو پیچھے سے گنتی چیزوں میں، مائنس تعداد کے ساتھ آپ کو صرف انڈیکس میں. اور جہاں سی، کیونکہ پھٹنے یا شاید گی آپ نہیں تھا دیگر یاد داشت کو کھانا کھلانا آپ کہہ سکتے ہیں، سننے کے لئے رسائی مائنس 1 آخری لیکن اس کی 1 کا مطلب ہے ایک تار میں کردار. ماڈیول version-- ہیں C میں لائبریریوں کے analogs اور چیزوں کی ایک بہت کچھ کے لئے مفید ہیں. بہت سی چیزیں تم ہوتا ازگر میں کرنا چاہتے ہیں، سادہ کے علاوہ متغیر کی ہیرا پھیری، آپ میں ہک کرنا چاہتے ہیں بڑے کے ساتھ وسیع تر لائبریریوں انٹرفیس اور زیادہ بات چیت کے لئے صلاحیتوں دنیا کے دیگر حصوں کے ساتھ. SYS ان میں سے ایک ہے ٹولز کا ایک گروپ کے ساتھ بات چیت کے لئے مفید ہیں کہ نظام خود کے ساتھ اور درآمد SYS جیسے یہ درآمد کرے گا. سے زیادہ دستاویزات ہے ، تم یہاں کیا جا سکتا جس میں، کہ یا آپ کو گوگل پر تلاش کر سکتے ہیں ازگر SYS ہیں Googling کی طرف سے. میں آپ ٹائپ درج. پہلی کڑی ہونے جا رہا ہے ازگر 2 میں دستاویزی، دوسرے لنک کی جا رہی ہے دستاویزی ازگر 3 ہو. اور ہم نے دیکھا کہ ایک فائل کو لکھا ہے خاص طور پر this-- تو کی طرح، ہم ہیں پر کام دیکھ کر کمانڈ لائن کے دلائل، کی طرح ہم بہت کرتے کرنے کے لئے سیکھا جلد پر اس کلاس میں. یہ مشکل نہیں ہے. آپ ہے argv باہر حاصل کر سکتے، جو ان چیزوں میں سے ایک ہے جس SYS طرف سے لاگو کیا جاتا ہے. اس کی تعمیر میں نہیں ہے کرنے کے لئے بیس پیکج، لیکن ایک بار پھر، آپ درآمد کی طرف سے اس میں توسیع کر سکتے ہیں SYS سے فعالیت. تم SYS اسے فون کروں گا. جو کچھ بھی. یہاں argv کے موجود ہے. نہیں اصل میں نہیں ہے جہاں argc SYS میں، آپ کی وجہ سے لین بلا کی طرف سے اتنی آسانی سے حاصل کر سکتے ہیں. ہم پھر، کہ ہم باہر طباعت ہمارے ٹرمینل echo-args.py پر بھاگ گیا. ہم ایک سرنی، واپس حاصل ہے جس یہ پہلی دلیل ہے. ایک بار پھر، یہ کون سی، ہے argv 0 ہے کہا گیا ہے کہ بات کا نام. ہم اضافی کے ساتھ یہ کہا جاتا ہے تو دلائل، ہم ان کو واپس ملے گا. یہ حاصل کرنے کا ایک طریقہ ہے کمانڈ لائن کے دلائل. آپ کی باری ہے جہاں پرچم چاہتے ہیں تو یا منسوخی پر خاص طور پر چیزیں ایک خاص طور پر ڈیفالٹ، آپ کے دوست argparse ہے. اور پھر آپ کو اس تلاش آن لائن ازگر میں گوگل میں argparse. افادیت کی ایک جوڑے کی ہیں آپ استعمال کر اپنے آپ کو تلاش ہے ماڈیول اور پھر سے، آپ کسی بھی وقت خرچ کرتے ہیں تو اس زبان jsons درآمد JSON سے باہر میں اور پڑھنے کے لئے فائلوں، کہ پیچیدہ لئے نہیں. آپ کو ایک فائل کو کھولنے، آپ json.load بلایا اس فائل پر اور تم کسی چیز کو واپس مل جائے. بات یہ ہے کہ کیا ہے؟ یہ ایک JSON اعتراض نہیں ہے. کہ JSON سرنی ہے جہاں، ازگر arrays کے ہے. کہاں کہ JSON ہے ساہچری arrays، ازگر لغات، ڈور، تو اور نمبر اور. تم، تم نے اس کو پھینک کرنے کے لئے چاہتے ہیں آپ ڈمپ کہتے، ایک نئی فائل کھولنے، اور بوجھ اور ڈھیروں میں اور ڈور سے باہر جانا. اسی طرح، اچار بلایا جاتا ہے بنیادی طور پر ایک ہی انٹرفیس میں. یہ تو تھوڑا سا زیادہ مفید ہے آپ ازگر اشیاء ڈمپنگ رہے. کیا تم نے کبھی کو بچانے کے لئے چاہتا ہے موجودہ حیثیت کا ایک ورژن مستقبل کے لئے ایک متغیر کی آپ کے پروگرام کو چلانے کے، اچار ازگر ہے ہے کہ ایسا کرنے کے لئے لائبریری. تم میں سے کسی قسم کا ہے تو لکھا جا سکتا ہے کہ متغیر جیسے الفاظ اور حروف اور bytes-- اس ڈکشنری کی طرح، ہم، نیچے لکھ سکتے تھے ہم کے طور پر لکھ سکتے ہیں تھا جس میں ایک JSON اعتراض، طرح لفظی ان حروف. اور پھر اس کے لئے بہت آسان ہو جائے گا ایک انسان اسے کھولو کو کھولنے کے لئے اور اسے پڑھا. ہم خاص طور پر نہیں کیا تو اسے پڑھنے کے انسانوں کے بارے میں دیکھ بھال، ہم زیادہ مؤثر طریقے سے پیکج کر سکتے ہیں بعد لئے unpacked کیا جا سکتا ہے شکلوں میں یا اس کے بعد فلایا جا سکتا ہے. اور اس کے 80 فیصد بچاتا ہے جگہ آپ کی اشیاء کروں آپ longhand انہیں باہر لکھا ہے لے. تم بہت اچار کال اسی جو راہ ڈمپ، بوجھ، اور پھر آپ کو اپنی چیزوں کو واپس مل جائے. آپ کو بہت لکھ رہے ہیں تو مختصر ازگر پروگراموں کہ ریاست کو بچانے کے لئے چاہتے ہیں، اور پھر پڑھ انہیں واپس بعد میں، اس طرح کی باتیں آپ کے دوست ہیں. یہ ہے کہ آپ بہت سکتا آسانی سے JSON کے طور پر ان پھینک. سب سے زیادہ ازگر اشیاء JSON باہر پھینک کر سکتے ہیں کہ ساخت کوئی امید نہیں ہے تو وہ اس طرح کی نمائندگی کیا جا سکتا ہے. ان کی نوک ہے مفید ہیں کہ ماڈیولز پر شلا. تو SYS، OS، multiprocessing، ہیں چیزوں کے لئے بنیادی workhorses کی طرح ہم کے ساتھ بات چیت کرنے کی ضرورت ہے فائل سسٹم آپریٹنگ سسٹم، ، os.isdirectory، os.isfile طرح os.makefile، یہ آپ کے دوست ہیں. آپ کو بات چیت کرنا چاہتے ہیں تو ایک مخصوص فائل کی قسم کے ساتھ، JSON، اچار، CSV. آپ کو ویب کے ساتھ بات چیت کرنا چاہتے ہیں تو صفحات، حاصل کرنے کے لئے urllib HTTP صفحات bs4-- BeautifulSoup-- اس HTML کے لئے ایک بہت اچھا تجزیہ کار ہے. آپ کو ایک ایچ ٹی ایم ایل اور آپ پر اسے چلانے اب یہ اندر در اندر صف اعتراض حاصل، تم پر گزرنا کر سکتے ہیں جو لگ رہے، جیسے کے ساتھ صرف کے لئے تلاش ، تو بہت اچھا ہے جس میں، ہے. کے ایک گروپ نہیں ہے running-- کے لئے پیکجوں کے خصوصا باتوں سے Mathy کر لئے. آپ کو ضرب کرنا چاہتے ہیں تو، ، وندا قالب تبدیل، numpy تمام لوگوں کی طرف سے استعمال کیا جاتا ہے اس کے لیے دنیا بھر میں. scipy بھی زیادہ مفید ہے اس سمت میں اوزار. sklearn-- مشین لرننگ، قدرتی زبان عملیات، سپر مفید چیزیں، ہو جاتا ہے ازگر میں ہر وقت لاگو. اور پھر، تھوڑا سا لیتا ہے اب افسوس کرنے لکھنا، ، کو چلانے کے لئے تھوڑا سا زیادہ وقت لیتا ہے لیکن حقیقی انجینئرز کرتے ہیں یہی وجہ ہے کہ آپ کی دیکھ بھال کی وجہ سے استعمال ازگر ہے بلکہ، آپ کو کوڈ لکھنے پر بلاک آپ کے کمپیوٹر کے مقابلے میں کوڈ چلانے. آپ کو ایک لکھنے کے لئے جا رہے ہیں تو پروگرام، دوسرے لوگوں کے جو بہت سے استعمال کرنے کے لئے جا رہے ہیں ہمیشہ، لینکس، آپ کی طرح تم تھے تو سی میں لکھ سکتا ہے ایک حساب انجن لکھنے کے لئے جا، آپ کی ضرورت ہے اگر آپ ازگر میں لکھ سکتا ہے کہ ہر جوڑے ماہ کو تبدیل کرنے. کچھ لوگ اس میں لکھیں گے سی وہ اس طرح ہیں کیونکہ. تو ہم درآمد SYS دیکھا ہے چیزیں حاصل کرنے کا ایک طریقہ کے طور پر آپ کے پروگرام میں ماڈیول حاصل کرنے. تم نے بھی کے طور پر درآمد کر سکتے ہیں عرفیت، اگر آپ چاہیں تو. پھر multiprocessing ایک درد ہے ہر وقت ٹائپ، تو رہنما کے طور پر درآمد اور اس کے بعد کسی بھی وقت آپ پروگرام میں اس کا استعمال، آپ mp.process کہنا، یا آپ کو کیا کرنا پڑے گا. آپ کو درآمد چاہتے ہیں تو صرف ایک بات، تو urllib نامی ایک چیز ہے درخواست، لہذا آپ کو صرف یہ ہے کہ درآمد کر سکتے ہیں. بعد میں، کے طور پر آپ یہ پکارتے نہیں کریں گے urllib.request، لیکن صرف درخواست کے طور پر خود کی طرف سے. اور آپ کو سب کچھ درآمد کر سکتے ماڈیول کی طرف سے آپ چاہتے ہیں. یہ کبھی کبھار ایک اچھا idea-- نہیں ہے یہ عام طور پر ایک اچھا خیال نہیں، اصل میں. آپ کو کچھ بھی کیونکہ اگر very-- کیونکہ اس ماڈیول میں ایک نام ہے کہ آپ کو کہیں اور استعمال کرنے کے لئے کرنا چاہتا تھا آپ کے پروگرام میں، تم نہیں کر سکتے ہیں. اور یہ ہمیشہ واضح نہیں ہے کہ معاملہ ہے. اس بات کو یقینی بنانے کے لئے آپ کیا کر رہے تھے، محفوظ تھا آپ کو کھولنے کے لئے ضرورت ماڈیول اور سب کو دیکھنے کے میں ختم ہے کہ ناموں میں there-- افعال میں سے سب، متغیرات میں سے سب کہ، اس ماڈیول میں رہتے ہیں تم سب کے لا رہے ہیں کیونکہ انہیں اپنی مقامی نیم سپیس میں. لہذا جسے لوگ یہ کرتے ہیں. یہ عام طور پر سفارش کی جاتی ہے آپ کو ایسا نہیں ہے کہ. لیکن لوگوں کو یہ سب کرنا وقت وہ ہیں کیونکہ سست اور ایم پی ٹائپ نہیں کرنا چاہتا. کچھ، کبھی. ماڈیولز کے بارے میں یہ سب باتیں ایک مختصر بات میرے ارد گرد لانے آپ ازگر میں پروگرام ڈیزائن کو کس طرح پر. پہلا قدم تو دیکھنے کے لئے چیک کرنے کے لئے ہے کسی نے پہلے ہی کام کیا ہے یا بات کی 90٪ کیا. امکانات وہ شاید ہیں، اور آپ ان کی بات ہو جاؤ اور اس کو چلانے جانا چاہئے. یا اس کے ارد گرد ایک چادر لکھنا اپنے مقصد کے لئے اسے اپنانے کے لئے. کہ ہے کے بعد یہ صرف ہے آپ کو اس وقت تھا کہ میں ناکام رہے پر جاؤ اور کے بارے میں سوچ شروع لکھنا کس طرح آپ کو ایک ساتھ مل کر اس بات کو ڈال دیں گے. چیزیں بہت ہے وہاں سے باہر، اور یہ کہ سب سے زیادہ مفید میں سے ایک ازگر کے بارے میں باتیں. زبان ہے جیسے خوبصورت، زبان کی وجہ سے بھی استعمال کرنا آسان ہے، لیکن ہے یہ اتنا خوبصورت اور استعمال کرنا آسان ہے لوگوں کو ایک کے لئے استعمال کیا گیا ہے وقت طویل اور سامان کی ایک بہت کچھ ہے آپ کر سکتے ہیں کہ وہاں سے باہر آپ کے اپنے استعمال کے لئے استعمال. تو ازگر کے آخری حکمرانی، کوئی ہے اور پہلے سے ہی شاید لکھا ہے اس کے لئے ایک ماڈیول، کوئی پہلے سے ہی ہے شاید اس کے لئے ایک لائبریری لکھا. تم کسی چیز کو ایسا کرنے کی کوشش کرنے سے پہلے، دیکھو یہ لاگو کر دیا گیا ہے تو کو دیکھنے کے لئے. یہ مشکل نہیں ہے. میں ڈال دیا ہے کہ ماڈیولز کے تمام پہلے، شاید ایک رعایت کے ساتھ، ہر میں پہلے سے نصب کیا آتے ہیں سٹینڈرڈ ازگر تنصیب. اور اس طرح ایک کال کے ساتھ ، آپ کو کسی بھی درآمد اس فعالیت کے تمام ہے آپ کی انگلی میں. اس کو لپیٹ کرنے کے لئے شروع بات، وہاں کچھ چیزیں ہیں میں سیاہ خانوں کے طور پر چھوڑ دیا ہے کہ اور اس طرح کی، زیادہ سے زیادہ glossed اور چند سفید میں ہے کہ جھوٹ ہے کو بتایا ہے کہ دیانت کی خاطر، میں کم از کم نقطہ پر کروں گا یہاں، یہاں تک کہ اگر میں نہیں ان میں سے سب میں سپر گہری جانا اور ان کی تکنیکی وضاحت. بہت سی چیزیں میں جادو کہا جاتا ہے کہ دوسرے لوگوں کو فون کیا ہے پر مبنی پروگرامنگ اعتراض. تو چیزوں کے بہت سے ہیں تو متغیر بہت اکثر نہیں ہیں سادہ بائٹس، میں بیٹھا میموری ہیں، لیکن بہت پیچیدہ ہیں اندرونی ضرورت ہے کہ اشیاء کام کرتا ہے اور بہت کے بارے میں ریاست کے خفیہ متغیر، کے بہت سے چھپا فعالیت، جو آپ ڈور میں ان کی باری کی اجازت دیتا ہے، جس سے آپ کو ان پر iterate کی اجازت دیتا ہے. اور آپ کو تحریر کر رہے ہیں تو اور وہ اس وجہ سے اس امیر فعالیت کے تمام ہے قوم ہے کیونکہ کے معمار زبان کا چلے گئے ہیں کے ذریعے اور ہر معیار کے لئے اعتراض، فعالیت میں ڈال دیا یہ ہے کہ کس طرح کا کہنا ہے کہ یہ کس طرح کام کرنے کے لئے کی جا رہی ہے کسی نے اسے iterate کرنا چاہتا ہے. تو سب کچھ ہے کہ کوئی طاقت ممکنہ طور پر iterate کرنا چاہتے ہیں، منطق میں لکھا ہے دستی طور پر آپ ہیں کس طرح کہ اعتراض iterate کرنا چاہیے. آپ ممکنہ طور پر چاہتے ہیں کہ سب کچھ ایک تار میں پھینک دیا منطق لکھا ہے. یہ اگر آپ کہتے ہیں کہ تقریب ہے آپ کو ایک تار کے لیے اس سے باہر پھینک کرنے کے لئے چاہتے ہیں. یہی وجہ ہے کہ آپ اسے حاصل کرسکتے ہیں ، چیزوں پر یہ لین فون آپ میں کال کر سکتے ہیں یہی وجہ ہے، یہ ہے تم کیوں تو سب کچھ پر کال کر سکتے ہیں آپ چاہتے ہیں کہ، کیونکہ ان کے ساتھ کر رہے ہیں ان تمام لوگوں، تکنیکی جانتے ہیں کہ کس طرح ایسا کرنے کے لئے. یہ میں ہوں کہ کچھ ہے سپر میں جانے کے لئے نہیں جا رہا. لیکن فہرست میں کے لئے بات subtly پر ہے loops کے لئے سی سٹائل کی طرف سے مختلف، اور تم پر اس کے بارے میں تمام پڑھ سکتے ہیں انٹرنیٹ آپ دلچسپی رکھتے ہیں تو. ایک تاریک پہلو سب کے لئے نہیں ہے اس کے، میں نے ذکر کیا ہے کہ، تو دو چیزیں موجود ہے. سب سے پہلے اس اعتراض پر مبنی ہے پروگرامنگ اور ہیڈ کی ایک بہت کا اضافہ کر دیتی بے ترتیب چیزیں کرنے کے لئے، لہذا آپ کو ختم ایک بہت زیادہ میموری استعمال کرتے ہوئے؛ آپ کو ایک چھوٹا سا زیادہ استعمال کرتے ہوئے ختم وقت آپ بصورت دیگر کے مقابلے. other-- بلکہ زیادہ اس کپٹی تاریک پہلو چیزیں صرف کام ہے، تو ہے کی طرح آپ ان سے چاہتے ہیں آپ کو سپر مشکل لگتا ہے کرنے کے لئے بغیر یہ ایک int ہونا چاہئے کے بارے میں وہاں یا ہونا چاہئے فلوٹ، یہ یہاں زیادہ ہے کہ ہو سکتا ہے تم یہاں ایک int کی پیداوار لیکن آپ لگتا ہے لیکن وہ ہمیشہ سے معذرت کریں گے، یہ یہاں ہے کہ ہو سکتا آپ کو ایک فلوٹ پیدا، لیکن جب آپ کو دوسرے حصے کو حاصل آپ کے پروگرام کی، آپ سوچ رہے ہیں، اوہ اچھا، لیکن وہ کروں گا ہمیشہ مجھے ایک int منتقل. وہ ایسا نہیں کرتے تو، یہ ممکن ہے کہ آپ، کسی کو پلاٹ آپ انڈیکس لئے اس کا استعمال کرنے کی کوشش کریں ایک صف میں، یا آپ کو کیا ہے. حقیقی کے تو ایک C ہے کے بارے میں مفید چیز یہ واقعی سوچنے کے لئے آپ کو مجبور آپ any-- بنانے مشکل سے پہلے آپ کسی بھی متغیر لانے سے پہلے وجود میں، کی طرح کیا اس متغیر کی قسم ہے. اور یہ جا رہا ہے ہر وقت کے لئے اس قسم کے. یہ سچ نہیں ہے ازگر، اور حقیقت یہ ہے کہ، آپ آپ کو صرف ہیں تو can-- قسم کے کان کی طرف جا، اور تم کچھ فیصلے جس طرح ایک جگہ میں ایک، اور کچھ فیصلے ایک دوسری جگہ میں طریقہ پیچھے کافی چیزیں ڈال کے بغیر دوسری جگہ میں پردے مناسب طریقے سے چیزوں کو پکڑنے کے لئے، آپ کچھ بہت عجیب غلطیوں حاصل کر سکتے ہیں. اور پروگرام چل رہا رکھ سکتے ایک بہت طویل وقت کے لئے، یہ ہے کیونکہ کام کی ایک بہت اچھی طرح سے کر رہے، کا کہنا ہے کہ اس بات کو اس طرح کام کر سکتے ہیں، تو میں نے اس راستے پر چلانے جا رہا ہوں. اور حقیقت میں، حقیقت یہ ہے کہ pushes ہے کہ چھوٹی غلطیاں کی ایک بہت کے ذریعے آگے مطلب اکثر جب، کہ ایک خامی اصل میں برا ہے اور آپ اصل میں اسے ٹھیک کرنا چاہتے ہیں، اس پروگرام away-- میل ختم ہو جاتی ہے میل دور روک ختم ہو جاتی ہے آپ کو آپ کی غلطی تھا جب سے. اور اس طرح ایک بات ہم چاہوں گا کہ ایسا کرنے کے لئے پروگرام، ایک بات کبھی کبھی ہم پروگراموں چاہوں گا کہ ہم ٹھیک ہیں جب ایسا کرنے کی زور ناکام رہتے ہیں اور بہت ناکام ہے فوری طور پر کچھ غلط ہو جاتا ہے جب. ازگر کہ بہت برا ہے. ازگر پر نہیں بہت اچھی ہے ناکام اور آگے رولنگ غیر متوقع طور پر چیزوں کے ذریعے. تو اس وقت کے لئے مفید ہے آپ کو چھوٹے پروگراموں لکھ رہے ہیں. آپ کو پیچیدہ حاصل کرتے ہیں کیڑے کبھی کبھی یہ ان کے باہر تنگ کرنے کے لئے ایک طویل وقت لگتا ہے. تو ایک تاریک پہلو سب کے لئے نہیں ہے اس کی طرح یہ صرف کام کرتا. تم اس کی توقع تھا جیسے یہ صرف کام کرتا ہے. یہ نہیں کرتا ہے جب، آپ کو ختم سوائے اس کے کہ کو مکمل طور پر ہی مختلف جگہ میں اور جہاں جاننے کی کوشش کر رہے یہ آپ کو غلط ہو گیا تھا. کوڑا کرکٹ اکٹھا کرنا تاکہ is-- آپ محسوس کریں گے جو ایک چیز ان چیزوں میں سے ہے کہ کسی بھی ہے کہ میں existence-- میں لایا ہوں یہ arrays، یہ لغات، ان اشیاء، آزاد کبھی نہیں files-- ان. کوئی کال کرنے کے لئے نہیں تھا یہ بات میں کہیں بھی مفت. اور اس کی وجہ سے، سی سائیڈ پر تھا ہم ان چیزوں میں کبھی نہیں ملا. لیکن ازگر سائڈ میں، ایک آزاد نہیں ہے. چیزیں خود کار طریقے سے حاصل جب ازگر آزاد آپ ان کو دیکھ کر نہیں کر رہے ہیں سوچتا ہے. یہ باتیں واقعی اچھی آزاد نہیں ہے کہ اگر آپ اب بھی ممکنہ طور پر، میں دیکھ سکتا ہے لیکن یہ مطلب ہے کہ تم تھے تو اس بڑی چیز مختص کی جا رہی، اور آپ کو اوہ، طرح ہیں اب میں اس کے ساتھ کیا کر رہا ہوں یہ ازگر بتانا مشکل ہے کہ آپ کو اب اس کے ساتھ کیا کر رہے ہیں. آپ کبھی کبھی مقرر کر سکتے ہیں کہ متغیر کوئی ہونا، اور پھر اس کے آخر میں امید ردی کی ٹوکری میں جمع کے ذریعے آتا ہے اور اس کے باہر صاف. لیکن ایک بار پھر، آپ ایسا نہیں کرتے اس سے زیادہ کنٹرول ہے. اور وجوہات میں سے ایک لوگوں سی کا استعمال کرتے ہیں کے لئے بہت، اہم چیزوں کارکردگی اس کی صلاحیت واقعی کرنے کے لئے ہے میموری مختص کیا جاتا ہے جب آپ کو معلوم اور اسے آزاد کر دیا، اور ہے ہے جب کہہ زیادہ کنٹرول کی ایک بہت، مجھے اس کی ضرورت کے مقابلے میں کوئی زیادہ میموری استعمال کر رہا ہوں. جو کچھ ہے ازگر میں یہ اچھا نہیں ہے. سامعین: میں ایک سوال پوچھ سکتا ہوں؟ زور ناکام کی طرف سے آپ کا کیا مطلب تھا؟ ROSS RHEINGANS Yoo کے: تو کچھ غلط ہو رہا ہے اور آپ کو ٹھیک کرنا میں ہیں موڈ، آپ کو بہت اکثر گا آپ کے پروگرام آپ کو بتانا چاہتا ہوں کہاں یہ غلط چلا گیا ہے، اور صرف خاموشی چلنا بند نہیں. لیکن تم نے اسے پرنٹ کرنے کے لئے اصل میں چاہوں معلومات کے تمام قسم کے بارے میں باہر کی طرح، یہاں یہ تھا. آپ پرنٹنگ رہے ہیں تو اس بات ہوا آپ کو ایک ویب سرور کو چلا رہے ہیں تو ایک wen-- سامعین: [اشراوی] ROSS RHEINGANS Yoo کے: جی ہاں، تو آپ کو ایک ویب سرور کو چلا رہے ہیں تم تو یہ کبھی کبھی برا ہے ہمیشہ کی غلطیوں مسترد، اور تم کہہ رہے ہو، اچھی طرح سے کام نہیں کیا. مجھے روکنے کے لئے جا رہا ہوں. میں صرف نظر انداز کرنے جا رہا ہوں یہ اور برقرار رکھنے پر جا. تو آپ کو سینکڑوں کی تعداد میں حاصل کر سکتے ہیں ان غلطیوں میں سے اور نہ ان کو دیکھنے کے. یہ یقینی طور پر مفید ہو گا بگ مقاصد کے لئے ہر وقت آپ کے ویب سرور بنایا تو ایک غلطی، آپ کو اس کے پائیدار ریکارڈ تھا. شاید آپ بھی پروگرام چاہتے ہیں ، روکنے تاکہ کرنے کے لئے ان کے ریکارڈ کاموں کے نیچے دفن نہیں. لیکن ایک بار پھر، کہ ٹھیک موڈ میں ہے. اکثر ایسا ہوتا ہے پیداوار کے موڈ میں، دنیا کو ایک تھوڑا سا مختلف ہے. اور میں چل رہا ہوں کہ چھوٹے لپیوں میں، جہاں میں کرنے کے لئے کہا ہے کہ بات صرف تھوڑا سا بند ہو سکتا ہے ، میں ایسا کرنا چاہوں گا کیا سے پھر قسم کے ذریعے دھکا غلطیوں آپ چاہتے ہو سکتا ہے کچھ ہے. اور ان صورتوں میں، یقینی ازگر واقعی اس شروع کماتا. میں بات نہیں تھی کہ آخری چیز this-- کہ میں کے بارے میں بات نہیں کی تھی لیکن واقعی پہلے سے infuriating ہو سکتا ہے وقت آپ کو ان غلطیوں میں سے ایک ہے، اور دوسری اور تیسری اور چوتھی وقت آپ کو ان غلطیاں ہیں. ازگر، میں نے ذکر کیا یہ سفید جگہ کا استعمال کرتا ہے آپ پوٹ کاری کی کیا سطح بتانا اور آپ میں ہیں فعال کیا بلاک، یہ مختلف ٹیبز اور خالی جگہوں کا علاج کرتا ہے. آپ کو ٹیب میں چار ہیں تو، اور پھر اگلے لائن چار خالی جگہوں ہے، وہ کے طور پر دکھایا یہاں تک کہ اگر آپ کے ایڈیٹر میں ایک ہی رقم، ازگر ان کو اسی طرح کا علاج نہیں ہے. اصل میں، ازگر ٹیب کا علاج کرتا ہے تیل اور پانی کی طرح خالی جگہوں. وہ صرف مختلف چیزیں ہیں. کوئی خاص نہیں ہے ایک ٹیب ہے کہ لمبائی، ایک ٹیب 8 برابر طرح تو یہ نہیں ہے خالی جگہوں، اور تاکہ تم اس کے ارد گرد ہو جائے گا اس طرح. کی طرح، یہ کہنا ہے کہ جب، کیا میں ہوں سفید جگہ کی سطح، یہ اصل میں ایک کے لئے لگ رہا ہے خالی جگہوں اور ٹیبز کی پیٹرن. اور اس طرح، کا بہترین طریقہ اس کے ساتھ نمٹنے کے لئے ہمیشہ جگہوں ہر وقت استعمال کرنے کے لئے ہے. اور حقیقت میں، سے Cloud9 میں IDE اور CS50 IDE، آپ کے ٹیب اہم اضافہ چار خالی جگہوں کی بجائے میں سپر مفید ہے جو ایک ٹیب، کے. ایک بار پھر اگرچہ، آپ کو ایک ازگر لکھا ہے ٹھیک ہو جائے گا کہ ٹیبز کے ساتھ پروگرام یہ صرف اگر کوئی میں چلے گئے اور اضافہ کوشش آپ کے پروگرام کی ایک لائن ہے ، ہر ٹیب کے لئے چار خالی جگہوں تھا یہ ٹوٹ جائے گی. اور یہ ایک طرح سے ٹوٹ جائے گی کہ واقعی نظر نہیں آرہی ہے. اصل غلطی اگرچہ ڈالی اس پیغام نئے کے ساتھ کیا کرنا ہے ، یہاں کی توقع نہیں حاشیہ or-- یہ پوٹیں کے بارے میں بات کر رہا ہے تو یہ غلط ہے اور اس کی طرح لگتا ہے، یہ شاید اس وجہ سے ہے ایک ٹیب کی جگہ مسئلہ ہے. وہ اب بھی ڈیبگ کرنے کے لئے کر رہے ہیں سے infuriating. سب سے بڑا مجموعی میں نے نہیں کیا ہے جس میں اس بات، یہ واقعی ہے کیونکہ حاصل کرنے کے لئے ایک پیچیدہ، ٹھیک ٹھیک موضوع، اور کسی بھی کرنا ضروری نہیں تھا ہم نے اب تک کیا ہے چیزوں میں سے، tuples نامی ایک تصور ہیں. وہ کس طرح وہاں بہت ہیں آپ کو نظر ثانی نہیں کر سکتے ہیں arrays کے. وہ سب جگہ ہے کیونکہ سب سے زیادہ استعمال کرنے کے وہ بہت سی چیزیں کے لئے مفید ہیں arrays کے لئے مفید نہیں ہیں. لیکن آپ کو ایک صف بنانے کے لئے چاہتے ہیں تو، اور تو مترجم وعدہ کرتا ہے کہ آپ کبھی نہیں کہ نظر ثانی کرنا چاہتے ہیں جا رہے ہیں حقیقت میں thing--، آپ ترمیم کرنا چاہتے ہیں تو، آپ نئے کے ساتھ ایک نیا بنا دیں گے ان اندازہ لگانے میں اقدار tuples ہیں. بلکہ پیداوار کے مقابلے میں ان مربع بریکٹ کے ساتھ، آپ کو راؤنڈ بریکٹ کے ساتھ ان کے پیدا. کیوں آپ کو ان چیزوں کا استعمال کریں گے، ایک سوال کا ایک تھوڑا سا ہے. . صرف ایک ہی چیز ہے کہ میں کروں گا کہ آپ ہے کے بارے میں کہنا کے طور پر استعمال کر سکتے ہیں tuples لغات کے سوچکانکوں. آپ کے طور پر لڑیاں استعمال نہیں کر سکتے لغات کے سوچکانکوں. اور یہی وجہ ہے، ایک بار پھر، تکنیکی اور میں اس میں چلانے کے لئے نہیں جا رہا ہوں. مجھے چھو نہیں ہے کہ pset کے اس بات میں pset6 ہے. تو یہاں آپ کو D 'کس طرح ہے یہاں a-- لاگو تم کس طرح ازگر میں pset6 نافذ کرے گی. ازگر ذہن میں رکھتے ہوئے ڈیزائن سائیکل، سب سے پہلی چیز آپ جب تم کرتے ہو تحریری طور پر پروگراموں چیک ہے کوئی پہلے سے ہی کیا ہے تو دیکھنے کے لئے. اصل میں، اگر تم چاہو تو اپاچی serve-- 50 کرنے کے لئے تقریبا یہ کرتا ہے یہ نہیں آیا ہے سوائے معیاری لینکس مشینوں پر نصب. ازگر کرتا، اور ازگر سادہ HTTP سرور کے طور پر اچھی طرح کرتا ہے. آپ کو ایک لینکس مشین پر کبھی ہو تو، یا CS50 کے سے Cloud9 IDE باہر اور آپ کو اس موجودہ خدمت کرنا چاہوں گا ایک خاص طور پر بندرگاہ ڈائریکٹری، ازگر M SimpleHTTPServer پورٹ کہ کام کرتا ہے. تم نے بھی درآمد کر سکتے ہیں سادہ HTTP سرور اور اس کی فعالیت کی ایک بہت ہے آپ اپنی مرضی کے مطابق، یا اس کو تبدیل کرنا چاہتے، یا اندازہ لگانے کے لئے اسے استعمال چلائے جا رہے ہیں آپ کے اپنے سرور کی خدمات چلاتے ہیں. تاکہ ازگر ایک مختصر میں ہے. اور اس CS50 رہا ہے. آپ کا شکریہ.