ראַס רהעינגאַנס-Yoo: הי, איך בין ראַס. און דעם איז אַ קס50 סעמינאַר. עס וועט נעמען איר פון פּראָגראַממינג אין C צו פּראָגראַממינג אין פּיטהאָן. פּיטהאָן איז אַ סקריפּטינג שפּראַך. עס ס לאַרגעלי ווי C אין סינטאַקס, כאָטש עטלעכע פון די טעכניש דעטאַילס פון ווי אַז סינטאַקס געץ עקסאַקיוטאַד זענען אַ ביסל אַנדערש. עס איז ווייניקער שטאַרק ווי C אין עטלעכע וועגן. עס איז ווייניקער יקספּרעסיוו פֿאַר ווו פּונקט אין אייער קאָמפּיוטער זיקאָרן געץ געלייגט אויס, ווי עס געץ געלייגט אויס, ווען עס געץ פרייַהייַט, און יענע סאָרץ פון זאכן. עס ס מער נוצלעך ווי C אין עטלעכע וועגן, ווייַל עס ס גרינגער צו פּראָגראַם אין. די שפּראַך איז, צו עטלעכע מענטשן, מער ינטואַטיוו. און טאַקע, דער ציל איז פֿאַר עס צו זיין Faster צו פּראָגראַם און פּאַטענטשאַלי סלאָוער צו ויספירן. איצט אויב איר טראַכטן וועגן דער סומע פון ​​צייַט איר אויסגעגעבן אויף דיין לעצט פּראָבלעם שטעלן שרייבן אייער קאָד קעגן די סומע פון ​​צייַט איר פאַרברענגען אויף דיין לעצטע פּראָבלעם שטעלן עקסאַקיוטינג דיין קאָד, איר'ד ימאַדזשאַן אַז די שפּראַך וואָס איז צוויי מאָל ווי שנעל צו שרייַבן, און צוויי מאָל ווי לאַנגזאַם צו ויספירן, זאל זיין אַ פֿאַרבעסערונג איבער C אין עטלעכע וועגן. אַוואַדע ווען איר ניטאָ טריינג צו שרייַבן קליין מגילה צו טאָן ביסל זאכן, פּיטהאָן איז אַ נוציק שפּראַך פון ברירה. און אין די סוף פון דעם סעמינאַר, איך האָפֿן איר וועט קענען צו מאַכן די ברירה אין צוקונפֿט פּראַדזשעקס וועגן וואָס שפּראַך איז ריכטיק צו נוצן, ניט דער געדאַנק אַז איינער שפּראַך איז מער ריכטיק אַלע די צייַט. אַ ביסל זאכן וועגן וואָס די סעמינאַר איז. דעם סעמינאַר איז ניט בדעה צו לערנען איר פּיטהאָן פון קראַצן. פּיטהאָן איז זייער ענלעך צו C, און איך בין אַסומינג אַז איר ניטאָ אַ קס50 תּלמיד, אָדער עמעצער מיט אַ ענלעך פאַמיליאַריטי מיט סי אויב איר 'רע קס50 תּלמיד אַרום פּראָבלעם שטעלן 6, אַזוי איר ווע זען אַ פּלאַץ פון זאכן אין C, איך וועט געבן איר די הויפּט חילוק, און עטלעכע פון ​​די זאכן אַז מאַכן פּיטהאָן פאַרשידענע און ספּעציעל און נוצלעך, אבער איך בין נישט געגאנגען צו גיין פֿאַר וואָס אַ פּראָגראַממינג שפּראַך איז און ווי צו שרייַבן מגילה. אָבער, דעם סעמינאַר וועט לערנען איר צו שרייַבן אַ פּיטהאָן מגילה אויב איר ניטאָ איינער פון די ביסל גרופּעס. ווידער מיר וועט קוקן אין ווי איר וואָלט ינסטרומענט פּסעצ-- אַז זאָל זיין 1-6 אין פּיטהאָנ-- און צושטעלן פּוינטערז צו באַאַמטער דאַקיומענטיישאַן פֿאַר צוקונפֿט דערמאָנען. די אנדערע זאַך אַז ס וויכטיק וועגן ווי דעם רעדן איז אַסיינד, דעם ווידעא וועט זיין אָנליין, העפלעכקייַט פון קס50, אַזוי איר זאָל ניט פילן ווי איר דאַרפֿן צו נעמען הערות. איר קענען שטענדיק גיין צוריק און קוק אין עס שפּעטער ווי אַ רעפֿערענץ. אַדדיטיאָנאַללי די סליידז זענען בנימצא רעכט איצט אין דעם פּלאַץ, וואָס זאָל נעמען איר טאָן אַ גוגל שולדבאַנק. עס ס אַ ביסל אַברידזשד ווערסיע פון וואָס איך בין ווייַזונג אויף דעם עקראַן. איינער אָפּגעהיט קייוויאַט איידער מיר שפּרינגען אין, פּיטהאָן 3 איז אַ אַנדערש שפּראַך פון פּיטהאָן 2. זיי קוקן אַ פּלאַץ דער זעלביקער; עס זענען זייער קליין טעכניש חילוק וואָס וועט גרונט מגילה געשריבן אין פּיטהאָן 2 ניט צו קענען צו זיין עקסאַקיוטאַד אין די פּיטהאָן 3 סוויווע. די קס50 מאַכשער קומט מיט פּיטהאָן, דורך ניט ויסצאָלן עס ניצט פּיטהאָן 2. איר קענען קאָנטראָלירן דעם דורך טייפּינג אין דיין באַפֿעל שורה פּיטהאָן --ווערסיאָן, וואָס זאָל רעזולטאַט 2.7.6 אויף דעם קראַנט מאַכשער. פּרובירן פּיטהאָן 3, וואָס טוט אַרבעט אין די אַפּפּליאַנסע, אויב פּיטהאָן דעפאַולץ צו 2.קס.י, אָדער אויף די אַפּפּליאַנסע אָדער אויף דיין אייגן מאשינען. איר זאָל פאַרבייַטן פּיטהאָן 3 עניטיים אין דעם רעדן וואָס איך שרייַבן פּיטהאָן. אויב דיין מאַשין איז פליסנדיק 2 דורך ניט ויסצאָלן, טיפּ פּיטהאָן 3 אין סדר צו קענען צו אַקטשאַוואַלי נאָכגיין צוזאמען און ויספירן די זאכן. אַדדיטיאָנאַללי, איך וועט פונט איר ביי באַאַמטער רעסורסן איצט. docs.python.org/3-- אָפּגעהיט אַז אַז ס אַ 3 און ניט אַ 2-- האט נוציק רעפֿערענצן. טוטאָריאַל וועט נעמען איר דורך פיל פון די זעלבע זאכן אַז איך בין טאן איצט, חוץ אין טעקסט פאָרעם. דערמאָנען איז נוצלעך ווי אַ דערמאָנען פֿאַר דער שפּראַך, און די נאָרמאַל ביבליאָטעק גיט איר עטלעכע פון ​​די יקסטענשאַנז מיט נאָך פונקטיאָנאַליטי. אַזוי אַ זייער ערשטער פּיטהאָן פּראָגראַם. אויף די לינקס מיר האָבן נאָרמאַל C, אויף די רעכט, מיר האָבן פּיטהאָן. איר זאל האָבן אנערקענט דעם פּראָבלעם, עס ס איינער פון דער ערשטער פּראָבלעם שטעלט אין קס50, און די סאָלווע עס ניצן די זעלבע לייזונג. איצט, די סיבה אַז מיר 'רע איר זוכט אין די זייַט דורך זייַט איז אַזוי מיר קענען קוקן אין סינטאַקטיק חילוק. איינער פון די ELEPHANTS אין די צימער אַז איר זאל האָבן באמערקט רעכט אַוועק די פלעדערמויז, איז אַז פּיטהאָן האט קיין הויפּט פֿונקציע ראַפּינג אַרום די קאָד. אַזוי אין C, איר שרייַבן אַ בינטל פון טעקעס, איר לינק זיי צוזאַמען, און די פּראָגראַם סטאַרץ עקסאַקיוטינג אין דעם זאַך גערופֿן ינט הויפּט. אין פּיטהאָן, איר שרייַבן אַ טעקע איר, ויספירן דער טעקע, די פּראָגראַם סטאַרץ עקסאַקיוטינג אין די שפּיץ פון דער טעקע. אַזוי עס ס געגאנגען צו אָנהייבן אין די שפּיץ פון טעקע גיין אַראָפּ ביז עס געפינען עפּעס אַנדערש. אויב עס פינדס אַ פֿונקציע דעפֿיניציע, עס וועט ניט אַקטשאַוואַלי ויספירן אַז קאָד, עס וועט נאָר דעפינירן די פֿונקציע. אבער דאָ, ווען דער ערשטער פּראָגראַם איז N יקוואַלז 10, דער ערשטער זאַך אַז דעם פּראָגראַם וועט טאָן איז נעמען דעם ווערט פון 10 און שטעלן עס אין אַ בייַטעוודיק געהייסן ן. גערעדט פון וואָס שורה, איינער פון אנדערע טהינגס-- סאָררי-- דעם מיטל אַז C מגילה, איר וועט שרייַבן זיי, איר וועט מאַכן זיי, וואָס וועט ינוואָוק עטלעכע קלאַנג קאַמאַנדז, און דעמאָלט איר וועט לויפן אַ ריזאַלטינג עקסעקוטאַבלע. פּיטהאָן מגילה, איר לויפן די טעקסט פילע-- דעם mario.py זאל זיין דעם טעקע אַז איך נאָר געוויזן יאָו-- איר וועט לויפן אַז טעקע און איר וועט ויספירן, און דער אינהאַלט פון עס וועט זיין עקסאַקיוטאַד דורך די פּיטהאָן יבערזעצער. איר קענען טאָן דעם אין דיין ייד. אַזוי אויב איך האָבן אַ העלא טעקע, וואָס נאָר האט דעם אינהאַלט. דעם איז אַקטשאַוואַלי פּיטהאָן 2, ניט פּיטהאָן 3, אַזוי טאָן ניט זאָרג וועגן דעם סינטאַקס פֿאַר איצט. אבער איך וועט לויפן פּיטהאָן, אויף hello.py, און עס ראַנז. אן אנדער וועג אַז איך קען נוצן פּיטהאָן אַז איך וועט ניט האַנדלען מיט אַזוי פיל אין דעם רעדן, איז אויב איך נאָר טיפּ פּיטהאָן, עס דראָפּס מיר אין אַ סביבה ווו איך קענען קאָרמען עס פּיטהאָן שורה דורך שורה. אזוי דאָ, אויב איך טיפּ אין דרוק פּלאַץ 'העלא, וועלט'. טיפּע קומען. עס וועט שפּייַען מיר אַז צוריק די רעזולטאטן אַז יחיד שורה מיד. דאס איז זאל זיין נוצלעך. אין דעם רעדן איך וועט טאָן זאכן אויף סליידז. און אַזוי איר וועט קענען צו נאָכפאָלגן צוזאמען אָדער אין דאָ, אָדער דורך שרייבן פאַקטיש טעקעס און דעריבער עקסאַקיוטינג זיי. אבער, גיי צוריק צו דעם קאָד, אן אנדער זאַך אַז איר זאל האָבן נאָטיסעד-- געזונט, עס ס צוויי זאכן אַז איר זאל באַמערקן וועגן די בלאַקס. דער ערשטער, אלא מער מאַנדיין, איז אַז די פּיטהאָן האט קיין טריילינג פּינטל-קאָמע. סעמיקאָלאָנס זענען אַפּשאַנאַל אומעטום און ומשעדלעך אומעטום. איר קענען לייגן זיי. עס זאל מאַכן מענטשן וואס שרייַבן פּיטהאָן פֿאַר אַ לעבעדיק סניקקער אין איר הינטער דיין צוריק, ווייַל זיי ניטאָ ניט נייטיק. זיי ניטאָ אָפֿט אַ צייכן פון ווייל געהאלטן איבער פון סי די דיזיינערז פון די שפּראַך פילן אַז עס איז מער קלאָר דעם וועג און אַז עס ס ניט נייטיק צו דערקלערן יעדער מאָל איר סוף אַ שורה. אן אנדער מאָדנע זאַך וועגן דעם N איז עס טוט נישט האָבן אַ טיפּ אַטאַטשט. איינער פון די מאַגיש ברעקלעך פון פּיטהאָנ-- און איך בין געגאנגען צו רופן עס מאַגיש, אָבער עס זענען זייער טעכניש סיבות וואָס עס וואָרקס-- איינער פון די מאַגיש ברעקלעך פון פּיטהאָן איז אַז וועריאַבאַלז קענען יקספּאַנד אָדער ייַנשרומפּן צו אַנטהאַלטן וועלכער דאַטע טייפּס איר וואָלט ווילן זיי צו. אַזוי דעם איז אַ 10. אויב שפּעטער אַראָפּ איך אַסיינד צו דעם N 0.5, עס וואָלט נעמען אַז 0.5. ניט קיין ענין וואָס עס ס אַ ינט דאָ און לאָזנ שווימען דאָרט, עפּעס אַז ניצט דעם N וועט, מער אָדער ווייניקער, קענען צו טשוג צוזאמען אויב עס געץ אָדער פון יענע. סיידן עס ס עטלעכע זייער פאַקטיש סיבה וואָס עס קענען ניט נוצן די דאַטע טיפּ אַז N איצט האט, אין וואָס פונט עס וועט באַקומען וועדגעד און וואַרפן אַ טעות, און יענע סאָרץ פון זאכן. אבער דאָ, פּיטהאָן טוט ניט טאַקע זאָרגן וואָס עס איז אַז איך בין געגאנגען צו שטעקן אין דעם זאַץ, ווי, איר ווילן דעם זאַך? דעם זאַך אין וואָס? יאָ, עס ס מין פון אַ זאַך. איך וועט שטעקן עס אין די סוף. עס וועט זיין אַ פּראָבלעם שפּעטער אויף, אויב עמעצער וואס וויל צו נוצן אַז סוף קענען ניט שעפּן עס. דאס איז איינער פון די הויפּט חילוק צווישן פּיטהאָן און C אַז מאכט עס גרינג צו שרייַבן זייער גרויס C מגילה און מאכט עס גרינגער צו שרייַבן זייער קליין פּיטהאָן פּראָגראַם. די פֿאַר סינטאַקס איז נישט זייער אַנדערש אין וואָס עס טוט. עס ס אַ ביסל אַנדערש אין ווי עס ס אויסגעדריקט. אזוי דאָס איז אַ זייער, וואָס איז גערופֿן פּיטהאָניק, וועג פון שרייבן עס. פֿאַר רודערן אין קייט (N), דאָס איז דער קייט פון נומערן 0 צו N, ינקלוסיוו אויף די דנאָ און ויסשליסיק אויף די שפּיץ. אַזוי עס ס פון 0 צו N-1, וואָס איז פּונקט וואָס די C קאָד איז טאן, חוץ עס ס אַ פּלאַץ גרינגער צו קוקן אין טאָמער. די באַטייַטיק בלאָק איז ניט שטעלן אַוועק דורך ברייסאַז, אַנשטאָט עס ס שטעלן אַוועק דורך דעם ינדענטיישאַן. אַזוי אַלע פון ​​די שורות זענען פיר ספּייסאַז איבער צו די רעכט, אָדער ווי וועגן אַ העלפאַנד ברייט. און די זענען די אָנעס וואָס זענען געגאנגען צו זיין עקסאַקיוטאַד אין דעם פֿאַר. אויב איך באַלאַגאַן אַרויף די ינדענטיישאַן אויף דעם און איך שטופּן אַז דרוק צוריק צו דער אָריגינעל ינדענטיישאַן, וואָס דרוקן וועט לאָזן די פֿאַר שלייף. אין קאַנטראַסט צו C, ווו דאָ איך אַקטשאַוואַלי דאַרפֿן צו באַוועגן וואָס פֿאַרמאַכט בראַסע אַרום. דעם מיטל אַז איר טאָן ניט באַקומען ערראָרס אַז שפּרינגען אויס בייַ איר ווייַל איר שטעלן אַ בראַסע אין אומרעכט אָרט. עס טוט מיינען אַז איר באַקומען ערראָרס אַז שפּרינגען אויס בייַ איר ווייַל איר ינדענטעד אַ שורה אומרעכט. אַזוי עס מאכט ינדענטאַטיאָנס סופּער אָפּגעהיט. אַלעווייַ איר זענען ווייל סופּער אָפּגעהיט מיט דיין ינדענטיישאַן סייַ ווי סייַ, און אַזוי דעם איז נישט אַז פיל מער פון אַ מאַסע. אבער אַ גרונט הערשן פֿאַר פּיטהאָן, און מיר וועט האָבן אַ פּאָר פון די אַז מיר וועט גיין דורך דורך די לויף פון די רעדן, איז פּרובירן נאַטירלעך סינטאַקס איידער קוקן עפּעס אַרויף. אזוי דעם סינטאַקס, פֿאַר דעם נומער אין קייט, איז זייער אָפּשיידנדיק אין טערמינען פון נוסח. גורל פון זאכן אין פּיטהאָן מיר וועט זען גענומען דעם פאָרעם. און אַזוי אויב איר קומען אַרויף מיט אַ נייַ כייפעץ אַז איר טראַכטן איר זאָל קענען צו יטעראַטע איבער דעם, אין דעם פֿאָרמאַט, טורנס אויס עס מיסטאָמע שטיצט אַז פֿאָרמאַט. מיר ניטאָ ניט געגאנגען צו גיין סופּער טיף אין די טעכניש סיבות וואָס אַז ס אמת. אבער עס ס אַ נוציק ינטוישאַן צו האָבן ווען איר ניטאָ אַפּראָוטשינג פּיטהאָן מגילה, אַז דעם זאַך איז נאָר געגאנגען צו אַרבעטן. פּרובירן עס. שטיוול אַרויף די באַפֿעל שורה יבערזעצער, זען אויב עס אַרבעט, מאַך אויף מיט זאכן, איידער איר אַפֿילו דאַרפֿן צו עפענען אַרויף Google און זאָגן, וואָס ס די סינטאַקס פֿאַר דעם באַזונדער זאַך? גורל פון פּיטהאָן איר קען אַנטדעקן נאָר דורך טריינג. דעם אויב איז אַפֿילו מער ענלעך צו C דעמאָלט דער פאָרס זענען. באַמערקונג אַז עס ס ניט קלאַמערן. די קלאַמערן זענען, ווידער, ומשעדלעך אָבער ומנייטיק. עס איז אַ צווייפּינטל אין די סוף פּונקט ווי די פֿאַר לופּס, און ווידער, די קאָרעוו בלאַקס זענען ינדענטעד אלא ווי שטעלן אַוועק דורך ברייסאַז. דאס אַנדערש איז ביי דער אָריגינעל מדרגה פון ינדענטיישאַן, און זייַן באַטייַטיק בלאָק ינדענטעד ווידער. יענע אַרבעט פּונקט ווי זיי טאָן אין סי דאס איז טאקע זייער פיל די זעלבע. ווידער, דרוקן לאָסעס איין כאַראַקטער אַוועק פון פּרינטף איר פאָרן עטלעכע סטרינגס. עס טורנס אויס סטרינגס קענען אָדער זיין אנגעצייכנט אַוועק דורך איין ציטירט אָדער טאָפּל ציטירט. עס ס קיין חילוק, חוץ אַז ין פון איין ציטירט איר קענען נוצן טאָפּל ציטירט מיט פאַרלאָזן, אלא ווי בעת צו אַנטלויפן אַלע פון ​​זיי. און ין פון טאָפּל קוואָטעס, איר קענען נוצן איין ציטירט מיט פאַרלאָזן אָן ווייל צו אַנטלויפן זיי. אויב איר געוואלט צו מישן זיי, איר קענען אַוואַדע קוק אַרויף אָנליין ווי צו טאָן אַז. איר וועט באַמערקן אַז איבער דאָ, איך ווע דורכגעגאנגען אין סוף = דעם זאַך. דאס איז אַ בייַשפּיל פון אַ אַפּשאַנאַל אַרגומענט, וואָס איז איינער פון די זאכן אַז פּיטהאָן שטיצט אַז מאכט עס גאַנץ נוצלעך. אַזוי דרוקן אַקטשאַוואַלי האט אַ פּלאַץ פון טענות, וואָס זענען יוזשאַלי שטעלן צו זייער ניט ויסצאָלן ווערט, אָבער דאָ איך ווע באַשלאָסן צו אָווועררייד דער איינער גערופֿן סוף. די סיבה אַז איך האָבן צו אָווועררייד עס מיט אַ ליידיק שטריקל איז אַז דרוקן אין פּיטהאָן, דורך ניט ויסצאָלן, פּרינץ אויס אַ נייַ שורה נאָך די זאַך אַז איר דערציילט עס אויך. אזוי דעם האַש איז אַקטשאַוואַלי געגאנגען צו דרוקן אויס אַ האַש אין אַ נייַ שורה. און אויב איך טאָן ניט ווילן האַש צו דרוקן אויס אַ נייע שורה נאָך אים, דעמאָלט איך האָבן צו זאָגן טאָן ניט דרוקן איינער. אבער, נאָך אַזוי, די איין לעצטע זאַך אַז דעם פּראָגראַם איז פעלנדיק אַז איינער האט איז אַ אַרייַננעמען אין די שפּיץ. דרוק איז בייקט אין פּיטהאָן אַזוי בייסיקלי אַז עס ס ניט כעדער אָדער מאָדולע וואָס איר דאַרפֿן צו אַרייַננעמען, כאָטש אויב געוואלט צו אַרייַננעמען אנדערע זאכן אין אַ פּיטהאָן שריפט, איך וואָלט טאָן עס אין אַ זייער ענלעך פאָרמאַט-- די ווערטער זענען נאָר אַ ביסל אַנדערש. איך דערמאנט אַז מיר טאָן ניט דאַרפֿן אַ הויפּט דאָ, ווייַל די פּיטהאָן סטאַרץ עקסאַקיוטינג אין די שפּיץ. אויב איך געוואלט צו ייַנוויקלען דעם אין אַ פֿונקציע, איך וואָלט טאָן עס ווי טהיס-- איך וואָלט זאָגן דעף פונקציאָנירן נאָמען, טענות זאל גיין אין דאָ און מיר וועט זען עטלעכע פון ​​די שפּעטער, צווייפּינטל, און דעמאָלט ווידער, דעם גאנצע שטעלן אַוועק בלאָק איז וואָס איז די אַפּעריישאַנאַל פאַרשפּאַרן פֿאַר אַז פֿונקציע. אזוי דעם איז די דעפֿיניציע פון די פֿונקציע. און עס ס אַ דעקלאַראַציע, דעמאָלט אַראָפּ דאָ, איך קען נאָר רופן די פֿונקציע. און ווידער, די פּראָגראַם יבערזעצער, סטאַרטינג אין די שפּיץ, וועט זען דעם איז די דעפֿיניציע. עס וועט ניט ויספירן דעם ביז עס באַקומען דאָ, און דעמאָלט עס ס ווי, טאַקע איצט איר ווע גערופֿן עס, איך טרעפן איך זאָל ויספירן עס. אַ זאַך וואָס איז זייער פּראָסט צו זען אין פּיטהאָן טעקעס, ספּעציעל פּיטהאָן טעקעס אַז זענען רעלעאַסעד צו דעם ציבור און דעוועלאָפּעד בי-- און דעוועלאָפּעד און מיינטיינד, איז עפּעס פון דעם פאָרעם. דאס איז באַסיקאַללי-- אַזוי ווייַל פּיטהאָן, איר אָנהייב אין די שפּיץ און דעמאָלט איר ויספירן אַראָפּ צו די דנאָ, איך אויב איך נאָר געהאט מאַריאָ גערופֿן אויס דאָ, דעמאָלט קיין מאָל איך ינקלודעד דעם טעקע אין אן אנדער טעקע, ווייַל איך געוואלט צו נוצן איז מאַריאָ פֿונקציע, אַז אנדערע טעקע וואָלט אויך האָבן דעם רוף צו מאַריאָ אין עס. און ווען איך געלאָפֿן אַז טעקע, עס וואָלט רופן מאַריאָ. אַזוי עס ס מעגלעך אַז איך נאָר ווילן צו לויפן דעם אויב איך ווע אַקטשאַוואַלי עקסאַקיוטאַד דעם באַזונדער טעקע. און אַזוי איך קענען ייַנוויקלען דעם אין אַן ידיאָם ווי דעם, ווו איך זאָגן, אויב די נאָמען פון דעם דורכפירונג סוויווע איז הויפּט, דעמאָלט איך ווילן צו טאָן די זאכן. אַנדערש עמעצער אַנדערש קענען וסע-- אַרייַננעמען מיין פונקטיאָנ-- מיין טעקע, און נאָר צו באַקומען צוטריט צו די פֿעיִקייטן אָן ווייל צו לויפן די זאכן וואָס איך ווילן צו ויספירן אין דעם טעקע. דאס איז, ווידער, אַפּשאַנאַל אָבער זייער פּראָסט. די זאכן זענען ענטירעלי-- זענען פּונקט דער זעלביקער צווישן C און פּיטהאָן, אַוואַדע אין 3. איך טראַכטן אין 2, דער אָפּטייל אָפּעראַטאָר מאל גיט איר צוריק פלאָאַץ ווען איר אַפּערייטאַד אויף ינץ, און יעדער איר געוואלט אַז אָדער איר האט נישט. אבער פּלוס, מינוס, און מאל אַרבעט פּונקט ווי איר'ד דערוואַרטן, חוץ איבער אַ ביסל מער טייפּס. אַזוי איר קענען מערן פלאָאַץ דורך ינץ, און יענע סאָרץ פון זאכן. שטעלן אַרבעט פּונקט דער זעלביקער. איר קענען נוצן צוויי גלייַך וואונדער. ינעקוואַלס-- גרעסער ווי, ווייניקער ווי, די סאָרץ פון טהינגס-- האָבן די מינינגז אַז איר ניטאָ באַקאַנט מיט זיי. ווו C ניצט די אָפּערייטערז, פּיטהאָן ניצט אַ ביסל מער ענגליש ליינעוודיק אָנעס. אזוי אַנשטאָט פון צוויי, אַמפּערסאַנדס, איר ממש טיפּ די וואָרט "און", "אָדער," אָדער "ניט." ווי אין אייער יפ-- אין דיין קאַנדישאַנאַל סטייטמאַנץ, מיר געזען פריער אַז דעם סינטאַקס אין C קאָראַספּאַנדז צו דעם סינטאַקס אין פּיטהאָן. און עס ס נישט אַ פּלאַץ אַנדערש דאָרט, אַחוץ פֿאַר אַ ביסל פון פּונקטואַציע אַרום די זייטן. ווידער, ווו C וואָלט אַנדערש אויב, פּיטהאָן ניצט עליף, אָבער די זענען מערסטנס ייבערפלאַך מדרגה ענדערונגען. יטעראַטיאָן ווי דעם איז אָפֿט געשריבן אין דעם ידיאָם אין פּיטהאָן. איר קענען פּראָדוצירן דעם סאָרט פון זאַך מיט אַ בשעת שלייף אויף די אַרויס אויב איר געוואלט, אָבער איר אַוואַדע טאָן ניט האָבן צו. און ווידער, אויב איר געוואלט די דרוקן אויס יסודות אין פון אַ מענגע איר זאל טאָן עס דעם וועג. איינער פון די שפּאַס זאכן וועגן פּיטהאָן כאָטש, איז אַז איר טאָן ניט דאַרפֿן צו נוצן דעם פּעראַדיים, און איר קענען נוצן אַ אַ ביסל מער עלעגאַנט איינער. איר זאָגן פֿאַר אַ אין אַרי. אזוי גאַנץ ווי געגאנגען דאָ און פליסנדיק איבער די ינדיסיז, און דעמאָלט פּולינג אויס יחיד יסודות, איר זאָגן די פֿאַר צו אַקטשאַוואַלי נאָר לויפן איבער די יסודות זיך. און דעריבער וועלכער איר ניטאָ טאן ין קענען אַרבעטן גלייַך אויף די יסודות, וואָס איז שיין שפּאַס. און מיר וועט סעע-- מיר וועט נוצן אַז ידיאָם ווידער און ווידער ווי מיר גיין דורך קאָד. דאס איז, ווידער, אַ בייַשפּיל פון עפּעס וואָס איך וועט רוף פּיטהאָן מאַגיש, כאָטש עס זענען זייער טעכניש סיבות וואָס עס אַרבעט. און עס זענען טעכניש זאכן וואָס דאַרפֿן צו זיין אמת וועגן מענגע אין סדר פֿאַר דעם צו אַרבעטן הינטער די סינז. די זאַך איז אַז רובֿ טייפּס וואָס איר'ד דערוואַרטן דעם צו אַרבעטן האָבן געהאט דעם ימפּלאַמענאַד פֿאַר איר אין די געבויט-אין שפּראַך. אן אנדער זאַך אַז עס וואָלט זיין סימפּאַטיש אויב דעם געארבעט אין יעדער שפּראַך, אָבער עס זענען עטלעכע סיבות וואָס עס קענען נישט, דרוק דעם שטריקל מאל דעם נומער. טורנס אויס אין פּיטהאָן, דעם טוט פּונקט וואָס איר 'ד ווי, וואָס איז נאָר שפּאַס, און מיטל וואָס מיר קענען אַקטשאַוואַלי רעדוצירן דעם פּראָגראַם, ווידער מאַריאָ.ק. אלא ווי יטעראַטינג אַ פּלאַץ, מיר קענען נאָר זאָגן, איך ווילן עטלעכע נומער פון ספּייסאַז, איך ווילן די נומער פון האַשעס, און עטלעכע האַשעס אין די סוף. און ווידער, מיר נוצן דעם פֿאָרמאַט. דאָ, מיר רע פּאַסינג אין אַ בייַטעוודיק דעם וועג. ווידער, מיר טאָן ניט דאַרפֿן צו זאָגן וואָס טיפּ פון בייַטעוודיק עס איז, און דער נאָר צייַט מיר וועט באַקומען ערראָרס איז ביי לויפן צייַט. ווען עמעצער טרייז צו פאָרן עפּעס אין, עס וועט קומען אין די פֿונקציע נאָר פייַן. אויב מיר וועדזש דאָ ווייַל דאָס איז ניט דער זאַך אַז איר קענען מאַכן ריינדזשאַז איבער, איך וועט באַקומען אַ רונטימע טעות דאָרט, און איך וועט האָבן צו דיבאַג עס אַז וועג. אָבער אין די דערווייל, איך טאָן ניט האָבן צו זיין זייער אָפּגעהיט וועגן וואָס געץ דורכגעגאנגען אין, אַזוי לאַנג ווי אין די פאַקטיש דורכפירונג עס אַלע אַרבעט זייער קלינלי. איך קען אַפֿילו מאַכן דעם אַ ביסל קלינער ניצן אַ באַזונדער געבויט-אין פֿונקציע אויף סטרינגס, וואָס איז רעכט באַרעכטיקן. דאס איז נאָר אַ נוצלעך פונקציאָנירן ליגנעריש אַרום דער ביבליאָטעק. עס ס אין די דאַקיומענטיישאַן אויב איר גיין און קוקן פֿאַר עס. און איך זאָגן, גוט איך בין געגאנגען צו האָבן דעם שטריקל, עטלעכע נומער פון האַשעס, און איך 'ד ווי צו רעכט באַרעכטיקן יט-- בלאָק עס אויס מיט ספּייסאַז צו זיין דעם לענג. ווידער, דעם איז אין די דאַקיומענטיישאַן, וואָס ברענגט וס-- איך וועט אַקטשאַוואַלי גיט דורך טהעסע-- וואָס ברענגט אונדז צו אונדזער רגע הערשן פֿאַר פּיטהאָנ-- נאָרמאַל ביבליאָטעק פֿונקציע מעטהאָדס זענען דיין Friends. און עס ס אָפֿט ווערט דיין בשעת צו גיין קוקן פֿאַר איך ווונדער אויב עס ס אַ זאַך וואָס פּונקט טוט דעם. עס מיסטאָמע איז. אויב איר'ד ווי צו בלאָק אויס אַ שטריקל, אויב איר'ד ווי צו נעמען די צוריק העלפט פון אַ שטריקל, אויב איר'ד ווי צו זוכן דורך אַ שטריקל, אויב איר'ד ווי צו צעברעכן אַ פּאָר פון זאכן צוזאַמען מיט אַ שטריקל מיט קאָמעס צווישן זיי, עס זענען נאָרמאַל ביבליאָטעק פֿעיִקייטן פֿאַר טאן דעם. און עס מאכט דיין לעבן גרינגער אויב איר נוצן זיי אַנשטאָט פון ראָולינג אויס אַלץ אויף דיין אייגן אין פינף שורות פון קאָד דאָ, פינף שורות פון קאָד דאָ. אַז טאַקע סטאַרץ בייַ לייגן אַרויף צו פאַקטיש צייַט. איינער פון די טשיקאַווע זאכן וועגן ווי דעם געץ גערופֿן. איר וועט באַמערקן אַז עס ס אַ פּונקט זאַך. איך האָבן עטלעכע כייפעץ אויף די לינקס, און דעמאָלט איך גערופֿן אַ פּונקט אַ פֿונקציע. דאס איז איינער פון די פּעראַדיימז אַז פּיטהאָן ניצט פֿאַר אַטאַטשינג מעטהאָדס צו אַבדזשעקס. מיר וועט רעדן וועגן וואָס דעם איז זייער בעקיצער אין די סוף, אָבער וויסן אַז מיר קענען ביידע אַרבעטן אויף זאכן דורך גענומען אַז זאַך געזאגט פּינטעלע וועלכער, אָדער דורך פאַך אַ פֿונקציע וואָס נעמט אַז כייפעץ און עטלעכע אנדערע טענות. אַזוי די זענען ביידע וועגן אַז דאס באַקומען געטאן אין פּיטהאָן. און צי אַ באַזונדער פונקטיאָנאַליטי איז ימפּלאַמענטאַד אין דעם נוסח אָדער דעם סטיל איז עפּעס אַז איר זאָל קוקן אַרויף ביז איר באַקומען אַ הענגען פֿאַר וואָס איינער עס ס מסתּמא צו פאַלן אין. עס ס אַ מער אָדער ווייניקער קאָוכיסיוו פֿילאָסאָפֿיע הינטער פּיטהאָן אַז איר אַרייַנציען מערסטנס דורך שרייבן אַ פּלאַץ אין עס. אין עטלעכע פונט, וואָס איינער פון די עפּעס וועט זיין ימפּלאַמענטאַד ווי ווערט נאַטירלעך. פֿאַר איצט, עס ס נאָר עפּעס איר לערנען ווי איר געשטאַלט אויס יעדער יחיד זאַך. אַזוי נאָרמאַל ביבליאָטעק פֿעיִקייטן זענען דיין Friends, און זיי לאָזן איר שרייַבן זאכן וואָס נעמען זיך דאָס פיל פּלאַץ טאַקע באַלד, טאַקע עליגאַנטלי. און דעם איז אַקטשאַוואַלי מיסטאָמע מער לעדזשאַבאַל, איך 'ד זאָגן, ווי די C פּראָגראַם איבער דאָרט. ניט צו דערמאָנען די פאַקט אַז איז אַזוי קורץ איר קענען צופּאַסן אַ גאַנץ העלפאַנד אין די פּלאַץ אַז מיר'ווע געזונט. אן אנדער זאַך, דאָס איז אַ ימפּלאַמענטיישאַן פון מאַריאָ אַז ס פּונקט C, וואָס איך טראַכטן איז די שאָרטיסט איר קענען באַקומען עס. עס טוט נישט האָבן די באַקומען ינט, אָבער עס שווער קאָודז די ווערט פון 10 דער זעלביקער וועג אַז דעם איינער טוט. טורנס אויס אַז דעם איין קלאַקס אין בייַ 84 אותיות, כוועראַז פּיטהאָן איז 64. און דעם איז ינפיניטעלי מער ליינעוודיק ווי דעם מיסט דאָ. אַזוי פּיטהאָן איז מער עפעקטיוו אין פּלאַץ. עס ס אַ ביסל ווייניקער עפעקטיוו אין צייַט, אָבער נישט דורך פיל. רשימות זענען אַ וויכטיק זאַך אין פּיטהאָן. מיר האָבן ניט געזען זיי, אָבער זיי אַרבעטן פיל ווי ערייז טאָן אין סי אזוי דאָ, איר קענען דערקלערן זיי, איר קענען פאָרן זיי אין אַ זאַך. איצט סקווערז האלט אַ מענגע פון ​​די זאכן. ווידער, מיר האָבן ניט דערקלערט ווי טיפּ, אָבער אויב מיר אלץ פּרובירן צו נוצן עס, עפּעס אַז איר'ד דערוואַרטן צו אַרבעט אויף אַ מענגע פון ​​ינטאַדזשערז איז געגאנגען צו אַרבעטן אויף אַ מענגע פון ​​ינטאַדזשערז. דעם איז אַ זאַך וואָס איר לעגאַמרע קענען נישט טאָן אין C, ווייַל די זיקאָרן עס איז אַזוי הענט אויף, אָבער איז זייער גרינג צו טאָן אין פּיטהאָן. אויב איך ווילן מיין מענגע צו זיין גרעסער, איך קענען צוגעבן אַן עלעמענט צו עס און עס ס פייַן. וואָס ס געגאנגען אויף הינטער די סינז? די יבערזעצער וועט גיין אויס און באַקומען עטלעכע זכּרון, און אפֿשר עס וועט באַקומען אַ קליין ביסל פון עקסטרע זכּרון, אַזוי איך טאָן נישט אַזוי איך טאָן ניט האָבן צו רעאַללאָק יעדער מאָל. אבער ווי פיל האָבן מער זיקאָרן טוט עס דאַרפֿן? דאס זענען נישט דיסיזשאַנז אַז איר האָבן צו מאַכן, די ביסט דיסיזשאַנז אַז די יבערזעצער איז געגאנגען צו טאָן. דאָ מיר זען קייט קענען נעמען צוויי טענות, אָבער עס ס נאָך געגאנגען צו זיין ינקלוסיוו פון די שפּיץ אַזוי מיר לייגן 1 דאָרט. דאס איז אַ ידיאָם, וואָס איז אַן אַפֿילו מער קלוג וועג צו שרייַבן זאכן ווי דעם. עס ס גערופֿן רשימה קאַמפּריכענשאַן, און דאָ וואָס מיר ניטאָ זאגן איז איך'ד ווי צו שטעלן אין איך סקווערד פֿאַר יעדער ווערט פון איך אין דעם קייט. דעם זאַך אויף די רעכט קען זיין אן אנדער מענגע, און דעם זאַך אויף די לינקס צו זיין קיין באַזונדער פֿונקציע וואָס וואָלט נעמען אין איך ווי אַ בייַטעוודיק און געבן מיר אויס עטלעכע רעזולטאַט. וואָס איך בין געגאנגען צו טאָן איז, איך בין געגאנגען צו בויען אַ מענגע אַז ס אַלע פון ​​די זאכן פֿאַר יעדער ווערט אין דעם קייט. און דאָס איז סופּער עלעגאַנט, יבער קורץ, און עס ס זייער קלאָר וואָס עס מיטל. דאס איז איינער פון די טהינגס-- דאָס איז ווידער, איין אָפ-- זייער עמבלאַמאַטיק פון די סיבות אַז מענטשן ווי פּיטהאָן. אויב איר ווי פּראָגראַממינג ווי דעם, דעמאָלט פּיטהאָן איז אַ שפּראַך איר זאל ווי צו לערנען. און ווידער, עס זענען טעכניש סיבות וואָס דעם אַרבעט. אבער ווי ווייַט ווי מיר ניטאָ געזארגט, מיר מער אָדער ווייניקער טאָן ניט זאָרגן. אזוי אויב איר ווילן צו דרוקן אויס רשימות, עטלעכע פון ​​די זעלבע ידיאַמז זענען נוצלעך. פֿאַר איך אין דעם קייט, מיר געקענט אינדעקס דורך אַלע די זאכן און דעמאָלט דרוקן זיי אַלע אויס. און איר וועט זען לען דאָ. אויב איר ווע אלץ געוואלט צו באַקומען די לענג פון די מענגע, אַז ס זייער גרינג אין פּיטהאָן, עס ס זייער שווער אין סי דאס וואָלט דרוקן אויס פּונקט וואָס איר 'ד דערוואַרטן עס צו. מיר קען אויך, ווי מיר ווע געזען פריער, יטעראַטע איבער די יסודות אין מענגע גלייַך, און דעמאָלט נאָר רעדן וועגן זיי, אלא ווי בעת דער אינדעקס צוריק אין די מענגע יעדער מאָל. און דאָס איז אַ זאַך וואָס איר קענען טאָן. אַזוי אין C, אויב איר פרעגן פֿאַר עפּעס ווי דעם, דרוקן וואָלט זאָגן, אַז ס אַ מענגע פון ​​ינטאַדזשערז. אַז ס באשטימט ניט אַ שטריקל, איך קען נישט דרוקן עס. פּיטהאָן מער אָדער ווייניקער טוט ניט זאָרגן. עס ס ווי, איז עס אַ וועג אַז איך קען דרייען דעם אין צו אַ שטריקל? יאָ, איך וועט טאָן אַז. און אַזוי איך וועט נאָר דרוקן אַז אויס. דעם מיטל אַז איר קענען טאָן זאכן ליקע-- די זענען רובֿ פון די שווער טיילן פון שפּיל פון פופצן, געשריבן זייער בעקיצער אין פּיטהאָן. איר וועט זען אַז עס ס אַ קליין ביסל אָפ-- דאָ איך'ווע וואַרפן אַ ינטאַדזשער צו אַ שטריקל, און איך האָבן צו טאָן וואָס מאַניואַלי. און איך בין געגאנגען צו לייגן עס צו אנדערן שטריקל, אָדער אַנדערש פּיטהאָן געץ צעמישט. אבער צי ווען איר ניטאָ אַדינג אַ שטריקל צו אַ ינטאַדזשער, בין איך רעכן צו באַקומען אַ ינטעגער צוריק אָדער אַ שטריקל צוריק? אבער ווידער, אויב איר נאָר רוף סטר אויף אַ זאַך, און עס קען אין קיין מעגלעך וועלט זיין קאָנווערטעד אין אַ שטריקל, עס וועט מיסטאָמע זיין קאָנווערטעד אין אַ שטריקל. דאָ, מיר זען נוצן פון נעסטעד רשימה קאַמפּריכענשאַן אויף די לינקס, עטלעכע ינדעקסינג, וואָס איז פּונקט ווי איר 'ד ווערן געניצט צו אים, און עטלעכע דרוקן אויס פון זאכן. ווידער, מיר ווע Defined עטלעכע פֿעיִקייטן און מיר וועט רופן זיי אַראָפּ אין הויפּט ווען מיר אַקשלי באַקומען די טעקע. צוריקקומען אַרבעט פּונקט ווי איר'ד דערוואַרטן פון ארבעטן מיט סי געפֿינען, מיר קענען שטעלן אַרויף זאכן ווי טהיס-- דאָ ס רשימה קאַמפּריכענשאַן עס ס אַ אַסיינמאַנט צו אַ בייַטעוודיק, און מיר קענען טאקע טאָן עס אַפֿילו גרינגער. מיר טאָן ניט דאַרפֿן צו שרייַבן זוכן, ווייַל געבויט-אין צו די שפּראַך איז אויב דאָס זאַך איז אין דעם מענגע. צוריקקומען אמת, אַנדערש צוריקקומען פאַלש. אַזוי אַז ס די ינטייערטי פון געפֿינען. די ינטייערטי פון סאָרט ינוואַלווז פאַך סאָרט, וואָס יס-- עס זענען ימפּלעמענטאַטיאָנס פון דעם געבויט אין זיכער C לייברעריז. אויב איר'ד ווי דעם סאָרט פון קאַפּויער, איר קענען אָווועררייד דעם אַפּשאַנאַל אַרגומענט אין פאַרקערט מיט אַ אמת. און אויב איר 'ד ווי צו סאָרט איבער סטרינגס, אַז ס געבויט-אין ווי געזונט. אזוי דעם איז ניט צו זאָגן די ביסט זאכן וואָס איר דאַרפֿן צו טאָן יעדער טאָג, אָבער דער געדאַנק איז אַז דעם איז די פֿילאָסאָפֿיע פון ​​פּיטהאָן, אַז אַלע די זאכן וואָס איר 'ד סאָרט פון ווילן צו טאָן זענען געבויט-אין. און רובֿ נאָרמאַל פֿעיִקייטן, אַזוי סאָרט, לענג, וועלכער, שטיצן רובֿ לאַדזשיקלי פיליק ינפּוט. איר רופן לען אויף אַ מענגע דער זעלביקער וועג איר רופן לען אויף אַ שטריקל. איר מולטיפּלי-- איר סאָרט סטרינגס דער זעלביקער וועג איר סאָרט ערייז. רובֿ נאָרמאַל פֿעיִקייטן אַז מען בויען, און רובֿ דריט-פּאַרטיי לייברעריז אַז מען בויען, ווייַל זיי ניטאָ עמיאַלייטינג דער פּלאַן פון דער נאָרמאַל ביבליאָטעק, קענען זיין גערופֿן אויף אַלץ וואָס איר ניטאָ ווי, וואָס טוט ניט דעם נאָר אַרבעט, אין סי מער אָדער ווייניקער, עס וועט אַרבעטן אין פּיטהאָן ווייַל מענטשן אַרבעט הינטער צו רעכענען אויס וואָס אַ זאַך איז און דעמאָלט אַרבעטן אַפּראָופּרייטלי אויף עס. אַזוי ווידער, טעכניש הינטערגרונט, אָבער עס מאכט אונדזער לעבן גרינגער ווי פּראָוגראַמערז. אַזוי דאָ ס טעקע איך / אָ. טעקע איך / אָ האט גורל פון ביסל זאכן וואָס מאַכן עס קאָמפּליצירט, און אַזוי עס זענען רעסורסן אָנליין, אָבער אין אַ נאַטשעל, איר רופן עפענען אויף אַ טעקע נאָמען מיט אַ באַזונדער טיפּ. אַזוי אַז ס לייענען, לייענען און שרייַבן, שרייַבן אָדער צוגעבן. איר לייענען אַ זיכער נומער פון אותיות אויס און איר דרוקן יענע, איר וועט באַקומען העלא! איך מיינען, ווי דעם טעקע האט העלא! אין עס, רופן צו לייענען, און וואָס איר וועט באַקומען צוריק איז אַ שטריקל וואָס האט אַלע פון די מנוחה פון די מענגע, אָדער אַלע פון ​​די מנוחה פון דער טעקע. אויב איר רופן לייענען ווידער, איר ניטאָ אין די סוף פון דער טעקע, און אַזוי איר טאָן ניט באַקומען עפּעס און אַזוי איר וועט נאָענט. ווידער, דעם איז .קלאָסע אלא ווי נאָענט טעקע, ווי עס וואָלט זיין אין סי דאס איז מער אָדער ווייניקער ווייַל ו איז אַ זאַך, און איר'ד ווי פֿאַר ו צו נאָענט. אבער יקערדיק טעקע איך / אָ איז ניט הויפּט קאָמפּליצירט. ווידער, אויב איר'ד ווי צו עפענען אַ טעקע, אויב איר'ד ווי צו לייענען אַ באַזונדער שורה, איר קענען באַקומען אויס פון באַזונדער לינע-- עס ס געבויט-ינס פֿאַר אַז. אויב איר'ד ווי צו שרייַבן אַ זאַך, איר קענען שרייַבן דעם. אויב איר'ד ווי צו שרייַבן אויס יחיד ביטעס, איר קענען שרייַבן די. און אויב איר 'ד ווי צו יטעראַטע איבער די שורות פון אַ טעקע ינדיווידזשואַלי, ווי מיר האבן אין אַ שטיק פון אַ ביסל וואָכן צוריק, איר קענען טאָן אַז צו. ווידער, רובֿ אַבדזשעקס אַז איר'ד ווי צו קענען צו יטעראַטע איבער שטיצן יטעראַטינג איבער זיי. אין פּיטהאָנס, אַ טעקע איז אפֿשר אַ זאַך וואָס איך'ד ווי צו יטעראַטע איבער שורה דורך שורה. אויב עס איז אַ ווערטערבוך פון ווערטער און איך איז געווען טריינג צו באַקומען די יחיד ווערטער אויס, דעריבער, ין דעם שלייף, שורה עס ס געגאנגען צו זייַן יעדער וואָרט אין דרייען און דעם איז געגאנגען צו זיין עקסאַקיוטאַד פֿאַר יעדער שורה אין דער טעקע ביז דעם סוף פון דער טעקע. און ווידער, אויב איך געדרוקט אויס יעדער שורה, די שורות קומען מיט נייַ שורות, אַזוי איך בין באַשטעטיקן די סוף צוריק צו אַ זאַך ווי דעם. דעמאָלט איך 'ד באַקומען די אינהאַלט פון מיין טעקע. די רגע זאַך וואָס אַפּערייץ אין עטלעכע וועגן ווי רשימות, און אין עטלעכע וועגן ווי עפּעס סאַבסטאַנשאַלי מער שטאַרק, זענען דיקשאַנעריז, וואָס זענען טאַקע קיל צו נוצן אָבער זענען בייסיקלי האַש טישן אין פאַרשטעלונג. איר מאַכן איין ניצן פּונקט צוויי אותיות, וואָס איז אָסאַם אויב איר פּרובירן צו ינסטרומענט די האַש טיש פֿאַר דיין פּראָבלעם שטעלן, איר וויסן פיל ווייטיק אַז קענען זיין. אבער מען האָבן געטאן עס, און געטאן עס אַזוי גוט, אַז איר טאָן ניט האָבן צו זאָרג וועגן עס ענימאָר. דעמאָלט איר קענען אַרייַנלייגן יחיד זאכן. האַש טאַבלעס-- אָדער דיקשאַנעריז טאָן ניט דער הויפּט זאָרגן וואָס איר ניטאָ סטאָרינג אין זיי. אַזוי אויב עטלעכע איינסן זענען נומערן, און עטלעכע איינסן זענען רשימות, אויב עטלעכע ערטער זענען אנדערע דיקשאַנעריז, און עטלעכע איינסן זענען סטרינגס, פּיטהאָן טוט ניט פיל זאָרג. ווידער, אויב איר גיין אין עס יקספּעקטינג אַ שטריקל און וואָס איר באַקומען צוריק איז אַ מענגע, אַז ס אייער פּראָבלעם. און אפֿשר עס ס שולד פון ווער געדאַנק עס איז געווען פּאַטינג זאכן אין דער ווערטערבוך, אפֿשר אַז איז איר. אויב אַז איז עמעצער אַנדערש, אַלעווייַ זיי האבן געזונט ביכייווד וועגן וואָס איז געגאנגען אין דער ווערטערבוך און האט נישט לאָזן קיין פּיטפאַללס פֿאַר איר צו פאַלן אין. אבער דער נאָרמאַל פֿעיִקייטן וועט געבן איר צוריק געזונט-ביכייווד זאכן. אזוי זיי זאָגן דעם קערט צוריק אַ ווערטערבוך פון סטרינגס, דעריבער אַלץ איר ניטאָ געגאנגען צו באַקומען אויס פון אַ שטריקל. אויב איר טאָן עטלעכע פון ​​דעם און עס טריפּס איר אַרויף, געזונט, אַז זאל זיין אויף איר. פּיטהאָן זיכער גיט איר גענוג שטריק צו הענגען זיך, אויב איר'ד ווי. איצט מיר קענען דרוקן אויס יחיד עלעמענטן פון דעם און דעם קערט פּונקט וואָס איר 'ד דערוואַרטן. פּונקט וואָס איר 'ד דערוואַרטן, איך טרעפן, איז אַ פראַזע אַז איך בין ניצן אַ פּלאַץ, אָבער אַז ס מער אָדער ווייניקער ווי פּיטהאָן אַרבעט. אויב איר פרעגן פֿאַר אַ זאַך וואָס איז ניט עס, פּיטהאָן וועט וואַרפן אויס אַ טעות און עס וועט פאַרלאָזן איר אויס פון וועלכער פּראָגראַם איר זענען אין. עס וועט טאקע דרוקן אויס מער אינפֿאָרמאַציע ווי אַז, עס וועט פונט יאָו-- עס וועט לייגן אַ שורה, און אַזוי. און, ווידער, אפֿשר מיר ווילן צו יטעראַטע איבער דיקשאַנעריז און געפֿינען אַלע די זאכן אין עס. דאָ מיר זענען יטעראַטינג איבער צוויי זאכן אין דער זעלביקער צייַט. און אַזוי מיר וועט טאָן עס מיט אַ שליסל, ווערט, אָבער דעמאָלט דרוקן אויס אַלע פון ​​די. און אויב מיר געוואלט צו קאַסט-- אויב מיר אַקטשאַוואַלי געלאָפֿן דעם, מיר וואָלט האָבן עטלעכע קאָנפליקט ווייַל אָנ-- ווען מיר געגאנגען אין מיט דוד, עס קען ניט אַדד-- אויב מיר האבן נישט וואַרפן עס צו אַ שטריקל ערשטער, מיר קען נישט לייגן אַז מענגע פון סטרינגס אַנטו אַ שטריקל. אבער אויב מיר וואַרפן עס צו אַ שטריקל, מיר באַקומען עפּעס ווי דעם, וואָס איז אפֿשר וואָס מיר 'ד ווי צו לייענען. און דעם איז ספּעללער. מיר נאָר לייענען אין זאכן. אַזוי מיר קענען לייענען אין יחיד ווערטער ווי שורות. מיר צעהאַקן אַוועק די לעצטע זאַך, אַזוי קאָלאָן מינוס 1 טשאָמפּס אַוועק די לעצטע זאַך אַז ווע-- די לעצטע כאַראַקטער פון אַ שטריקל. מיר וועט זאָגן. גוט, יעדער איינער פון די געץ ינסערטאַד אין דעם ווערטערבוך, מאַפּינג צו אַ ווערט פון 1. מיר טאָן ניט דער הויפּט זאָרג וועגן אַז איינער, אָבער עס ס נאָר עס צו זאָגן, טאַקע געזונט, דעם זאַך איך וועט שטעלן אין די ווערטערבוך. ווייַל שפּעטער וואָס מיר ניטאָ געגאנגען צו טאָן איז מיר רע געגאנגען צו זאָגן, נו, אויב עס ס אין דער ווערטערבוך אין אַלע. ווידער, דעם טשעק פֿאַר מיטגלידערשאַפט איז אַרויף אַפּערייטינג ניצן אַ גאָר אַנדערש אַלגערידאַם ווי עס וועט אין אַ רשימה, אָבער מיר רופן עס די זעלבע וועג, וואָס איז עטלעכע פון ​​וואָס פּיטהאָן צוקער קאָוטינג זאכן אַזוי אַז זיי ניטאָ גרינגער צו נוצן. און ווידער, מיר ווע געזען זאכן ווי דעם איידער. דעם איז בייסיקלי געפינען, אָדער עס ס פּונקט דער זעלביקער סינטאַקס ווי געפֿינען, אָבער איז אַפּערייטינג איבער אַ גאָר אַנדערש ביניען. און מיר טאָן ניט דער הויפּט זאָרג. אַזוי יענע זענען די זאכן אַז איר האבן געבעטן צו ינסטרומענט פֿאַר ספּעללער. אין דעם קורס, מיר רע געגאנגען צו באַקומען מער אָדער ווייניקער אַלע פון ​​די פּסעץ געטאן. וילעם: אזוי אַז בייסיקלי פּונקט קומט צוריק ווי ינקערעקטלי ספּעלד אויב עס גייט נישט גלייַכן עפּעס אין די ווערטערבוך? ראַס רהעינגאַנס-Yoo: יא, יאָ. און אַזוי, דאָס איז אַ אַדאַפּטיישאַן פון אַ פּראָבלעם שטעלן וואָס בעט איר צו טאָן פּונקט וואָס. וילעם: וואָס איז די שורה מינוס 1 דאָרט? ראַס רהעינגאַנס-Yoo: אזוי ווען איר ניטאָ יטעראַטינג איבער אַ טעקע אַסקינג פֿאַר דורך שורות, די שורות קומען מיט אַ נייַ שורה כאַראַקטער אין די סוף פון יט-- די מינוס 1 איז נאָר צו קראָם די אַוועק. און דעם איז אַ הויפּט Flexible וועג פון ינדעקסינג זיך זאכן. אַזוי אויב איר האָבן אַ שטריקל, און איר 'ד ווי, געזונט איך בין געגאנגען צו אָנהייבן בייַ כאַראַקטער דרייַ און איך בין געגאנגען צו גיין צו די סוף. 3 קאָלאָן וועט טאָן אַז פֿאַר איר. אויב איר ניטאָ ווי, איך ווילן צו אָנהייב אין די אָנהייב און גיין צו די לעצטע מינוס 1 כאַראַקטער, צווייפּינטל מינוס 1. און אויב איר געוואלט צו גיין פון די דריט צו די מינוס ערשטער, דעמאָלט איר 'ד זאָגן 3 מינוס 1. אַדדיטיאָנאַללי, אויב איר ווילן צו אינדעקס זיך זאכן קאַונטינג פון די צוריק, איר נאָר אינדעקס אין מיט מינוס נומערן. און ווייַל, ווו C וואָלט ופרייַסן אָדער אפֿשר קאָרמען איר אנדערע זיקאָרן איר האט ניט האָבן צוטריט צו, הערן איר קענען זאָגן מינוס 1 מיטל די לעצטע אָבער 1 כאַראַקטער אין אַ שטריקל. מאַדזשולז זענען ווערסיאָנ-- זענען אַנאַלאָגס צו ליבראַריעס אין C און זענען נוציק פֿאַר אַ פּלאַץ פון זאכן. א פּלאַץ פון זאכן איר'ד ווי צו טאָן אין פּיטהאָן, אויסערדעם פּשוט מאַניפּיאַליישאַן פון וועריאַבאַלז, איר ווילן צו פאַרטשעפּען אין די גרעסערע ליבראַריעס מיט גרעסערע Interfaces און מער קייפּאַבילאַטיז פֿאַר ינעראַקטינג מיט אנדערע טיילן פון דער וועלט. סיס איז איינער פון די מיט אַ בינטל פון מכשירים אַז ביסט נוצלעך פֿאַר ינעראַקטינג מיט די סיסטעם זיך און וועט אַרייַנפיר עס ווי אַרייַנפיר סיס. עס ס מער דאַקיומענטיישאַן פון וואָס, וואָס איר קען גיין דאָ, אָדער איר געקענט געפינען אויף גוגל דורך גאָאָגלינג פּיטהאָן סיס. איר דרוקן אין קומען. דער ערשטער לינק איז געגאנגען צו זיין די דאַקיומענטיישאַן אין פּיטהאָן 2, די רגע לינק איז געגאנגען צו זייַן די דאַקיומענטיישאַן פּיטהאָן 3. און אויב מיר געשריבן אויס אַ טעקע אַז געקוקט ווי טהיס-- אויב אין באַזונדער, מיר ניטאָ איר זוכט אין אַפּערייטינג אויף באַפֿעלן שורה טענות, ווי מיר געלערנט צו טאָן זייער פרי אויף אין דעם קלאַס. דעם איז ניט שווער. איר קענען באַקומען אויס אַרגוו, וואָס איז איינער פון די זאכן וואָס איז ימפּלאַמענטאַד דורך סיס. עס ס ניט געבויט-אין צו די באַזע פּעקל, אָבער ווידער, איר קענען גרייכן עס דורך ימפּאָרטינג אַז פונקטיאָנאַליטי פון סיס. איר וועט רופן עס סיס. וועלכער. דאָ דאָרט ס אַרגוו. עס ס אַקטשאַוואַלי ניט אַרגק אין סיס, מחמת איר קענען באַקומען עס אַזוי לייכט דורך פאַך לען. מיר דעמאָלט געדרוקט אַז אויס, דעמאָלט מיר געלאָפֿן אויף אונדזער וואָקזאַל echo-args.py. מיר באַקומען צוריק אַ מענגע, וואָס איז דאָס ערשטער אַרגומענט. ווידער, דעם איז אַרגוו 0, וואָס איז די נאָמען פון די זאַך וואָס גאַט גערופֿן. אויב מיר גערופֿן עס מיט נאָך טענות, מיר'ד באַקומען די צוריק. דעם איז איין וועג פון געטינג באַפֿעלן שורה טענות. אויב איר ווילן flags ווו איר אומקערן באַזונדער זאכן אויף אָדער אָווועררייד אַ באַזונדער ניט ויסצאָלן, אַרגפּאַרסע איז דיין פרייַנד. און ווידער איר געפֿינען אַז אָנליין ביי פּיטהאָן אַרגפּאַרסע ביי גוגל. עס זענען אַ פּאָר פון נוצן מאַדזשולז אַז איר געפֿינען זיך ניצן און ווידער, אויב איר פאַרברענגען קיין צייַט פון דעם לשון ימפּאָרטינג דזשסאָנס פֿאַר לייענען אין און אויס פון דזשסאָן טעקעס, ניט אַז קאָמפּליצירט. איר עפענען זיך אַ טעקע, איר גערופֿן דזשסאָנ.לאָאַד אויף אַז טעקע און איר באַקומען צוריק אַ זאַך. וואָס איז אַז זאַך? עס ס אַ דזשסאָן כייפעץ. ווו אַז דזשסאָן האט מענגע, די פּיטהאָן האט ערייז. ווו אַז דזשסאָן האט אַססאָסיאַטיווע ערייז, פּיטהאָן ס דיקשאַנעריז, סטרינגס, און נומערן, און אַזוי אויף. איר ווילן צו דאַמפּ אַז אויס, איר עפענען זיך אַ נייַ טעקע, איר רופן דאַמפּ, און לאָודז און דאַמפּס צו גיין אין און אויס פון סטרינגס. סימילאַרלי, זויערע וגערקע געץ גערופֿן אין בייסיקלי דער זעלביקער צובינד. עס ס אַ ביסל מער נוצלעך אויב איר ניטאָ דאַמפּינג פּיטהאָן אַבדזשעקס. אַזוי אויב איר ווע אלץ געוואלט צו ראַטעווען אַ ווערסיע פון ​​די קראַנט סטאַטוס פון אַ בייַטעוודיק פֿאַר אַ צוקונפֿט לויפן פון דיין פּראָגראַם, זויערע וגערקע איז פּיטהאָן ס ביבליאָטעק פֿאַר טאן אַז. אויב איר האָבן קיין סאָרט פון בייַטעוודיק אַז קענען זיין געשריבן אויס אין ווי ווערטער און אותיות און ביטעס-- ווי דעם ווערטערבוך, מיר קען שרייַבן אַראָפּ, מיר קען שרייַבן עס אַראָפּ ווי ווי אַ דזשסאָן כייפעץ, וואָס איז געווען ממש די אותיות. און דעמאָלט עס וואָלט זיין זייער גרינג פֿאַר אַ מענטש צו עפענען עס ופּ-- עפענען אַרויף און לייענען עס. אויב מיר האבן ניט דער הויפּט זאָרגן וועגן יומאַנז לייענען עס, מיר קען פּעקל אַפֿילו מער עפפיסיענטלי זיך Forms אַז קען שפּעטער זיין אַנפּאַקט אָדער וואָס קען שפּעטער ווערן ינפלאַטעד. און דעם סאַוועס 80% פון די פּלאַץ אַז אייער אַבדזשעקס זאל נעמען אויב איר געשריבן זיי אויס לאָנגהאַנד. איר רופן זויערע וגערקע זייער פיל דער זעלביקער ווייַ-- דאַמפּ, מאַסע, און דעמאָלט איר באַקומען דיין זאכן צוריק. אזוי אויב איר זענען שרייבן זייער קורץ פּיטהאָן מגילה אַז ווילן צו ראַטעווען שטאַט, און דעמאָלט לייענען זיי צוריק שפּעטער, זאכן ווי דעם זענען אייער Friends. אַז איר קען זייער לייכט דאַמפּ זיי ווי דזשסאָן. רובֿ פּיטהאָן אַבדזשעקס קענען דאַמפּ אויס די דזשסאָן אויב עס ס קיין האָפֿן אַז סטראַקטשעראַלי זיי קען זיין רעפּריזענטיד אַז וועג. דאס זענען נאָר די שפּיץ פון די ייַזבאַרג אויף מאַדזשולז וואָס זענען נוצלעך. אַזוי סיס, אַס, מולטיפּראָסעססינג, זענען סאָרט פון יקערדיק וואָרכאָרסעס פֿאַר זאכן מיר דאַרפֿן צו ינעראַקט מיט דער טעקע סיסטעם אַס., ווי אָס.יספילע, אָס.יסדירעקטאָרי, אָס.מאַקעפילע, די ביסט דיין Friends. אויב איר ווילן צו ינטעראַקט מיט אַ באַזונדער טעקע טיפּ, דזשסאָן, זויערע וגערקע, קסוו. אויב איר ווילן צו ינטעראַקט מיט וועב בלעטער, די ורלליב פֿאַר געטינג הטטפּ בלעטער. בס4-- בעאַוטיפולסאָופּ-- עס ס אַ ווונדערלעך פּאַרסער פֿאַר HTML. איר לויפן עס אויף אַ HTML און איר באַקומען דעם נעסטעד מענגע כייפעץ איצט, וואָס איר קענען דורך איבער לאָאָקין, מיט ווי נאָר קוקן פֿאַר אויב, איז, אין, וואָס איז פאַנטאַסטיש. עס ס אַ בינטל פון פּאַקאַדזשאַז פֿאַר רוננינג-- פֿאַר טאן הויפּט מאַטהי זאכן. אזוי אויב איר ווילן צו מערן, יבערקערן, יבערמאַכן מייטריסיז, נומפּי איז געניצט דורך מענטשן אַלע איבער די וועלט פֿאַר אַז. ססיפּי איז אַפֿילו מער נוצלעך מכשירים אין אַז ריכטונג. סקלעאַרנ-- מאַשין וויסן, נאַטירלעך שפּראַך פּראַסעסינג, יבער נוצלעך שטאָפּן, געץ ימפּלאַמענאַד אין פּיטהאָן אַלע די צייַט. און ווידער, נעמט אַ ביסל מער צו ווריטע-- נעבעכדיק, נעמט אַ ביסל מער צו לויפן, אָבער די סיבה אַז פאַקטיש ענדזשאַנירז טענד נוצן פּיטהאָן איז ווייַל איר טענד צו זיין בלאַקט אויף איר שרייבן די קאָד, אלא ווי דיין קאָמפּיוטער פליסנדיק די קאָד. אַזוי אויב איר ניטאָ געגאנגען צו שרייַבן אַ פּראָגראַם, וואָס גורל פון אנדערע מענטשן זענען געגאנגען צו נוצן אויף אייביק, ווי לינוקס, איר זאל שרייַבן עס אין סי אויב איר זענען געגאנגען צו שרייַבן אַ קאַמפּיאַטיישאַן מאָטאָר, איר זאל שרייַבן אין פּיטהאָן אויב איר דארף צו טוישן עס יעדער פּאָר חדשים. עטלעכע מענטשן וואָלט שרייַבן עס אין C ווייַל זיי ניטאָ ווי אַז. אַזוי מיר ווע געזען אַרייַנפיר סיס ווי אַ וועג פון געטינג טהינגס פון געטינג מאָדולע אין דיין פּראָגראַם. איר קענען אויך אַרייַנפיר עס ווי אַ צונעמעניש, אויב איר'ד ווי. ווידער מולטיפּראָסעססינג איז אַ ווייטיק צו טיפּ אויס יעדער צייַט, אַזוי אַרייַנפיר ווי מפּ און דעמאָלט עניטיים איר נוצן עס אין דער פּראָגראַם, איר וועט זאָגן מפּ.פּראָסעסס, אָדער וואָס האָבן איר. אויב איר'ד ווי אַרייַנפיר בלויז אַ איין זאַך, אַזוי ורלליב האט אַ זאַך גערופֿן בעטן, אַזוי איר קענען נאָר אַרייַנפיר אַז. שפּעטער אויף, איר וועט נישט ינוואָוק עס ווי ורלליב.רעקוועסט, אָבער פּונקט ווי בעטן דורך זיך. און איר קענען אַרייַנפיר אַלץ פון אַ מאָדולע אויב איר'ד ווי. דאס איז טייל מאָל ניט אַ גוט ידעאַ-- דעם יוזשאַוואַלי ניט אַ גוט געדאַנק, אַקטשאַוואַלי. מחמת איר ווערי-- ווייַל אויב עפּעס אין אַז מאָדולע האט אַ נאָמען אַז איר געוואלט צו נוצן ערגעץ אַנדערש אין דיין פּראָגראַם, איר קענען ניט. און עס איז ניט שטענדיק קלאָר ווי דער טאָג אַז אַז ס די קאַסטן. אין סדר צו מאַכן זיכער אַז וואָס איר זענען טאן איז געווען זיכער, איר דאַרפֿן צו עפענען אַרויף די מאָדולע און זען אַלע פון די נעמען אַז סוף אַרויף אין טהערע-- אַלע פון ​​די פֿעיִקייטן, אַלע פון ​​די וועריאַבאַלז וואָס לעבן אין אַז מאָדולע, ווייַל איר ניטאָ ברענגען אַלע פון זיי אין אייער היגע נאָמענטייל. אַזוי מען טאָן דעם. עס איז בכלל רעקאַמענדיד אַז איר טאָן ניט טאָן דעם. אָבער מען טאָן דעם אַלע די צייַט ווייַל זיי ניטאָ פויל און טאָן נישט וועלן צו דרוקן אויס מפּ. עפּעס, אלץ. אַלע דעם רעדן וועגן מאַדזשולז ברענגען מיר אַרום צו אַ קליין רעדן אויף ווי איר פּלאַן מגילה אין פּיטהאָן. דער ערשטער שריט איז צו טשעק צו זען אויב ווער עס יז אַנדערש האט שוין געטאן די זאַך, אָדער געטאן 90% פון די זאַך. גיכער זענען זיי מיסטאָמע האָבן, און איר זאָל גיין באַקומען זייער זאַך און לויפן אַז. אָדער שרייַבן אַ ראַפּער אַרום עס צו אַדאַפּט עס צו דיין ציל. עס ס נאָר נאָך וואָס האט אַנדערש אַז איר'ד דעמאָלט גיין אויף און ווריטע-- נעמען טראכטן וועגן ווי איר וואָלט שטעלן דעם זאַך צוזאַמען. עס ס גורל פון שטאָפּן אויס דאָרט, און אַז ס איינער פון די מערסט נוציק זאכן וועגן פּיטהאָן. ווי דער לשון איז עלעגאַנט, די שפּראַך איז גרינג צו נוצן, אָבער אויך ווייַל עס ס אַזוי עלעגאַנט און גרינג צו נוצן, מענטשן האָבן שוין ניצן עס פֿאַר אַ לאַנג און עס ס אַ פּלאַץ פון שטאָפּן אויס עס אַז איר קענען כאַרניס פֿאַר אייער אייגן נוצן. אַזוי לעצטע הערשן פון פּיטהאָן איז, עמעצער אַנדערש האט שוין מיסטאָמע געשריבן אַ מאָדולע פֿאַר וואָס, עמעצער אַנדערש האט שוין מיסטאָמע געשריבן אַ ביבליאָטעק פֿאַר וואָס. איידער איר פּרובירן צו טאָן אַ זאַך, קוקן צו זען אויב עס ס 'שוין ימפּלאַמענטאַד. עס ס נישט אַז שווער. אַלע די מאַדזשולז אַז איך שטעלן אַרויף איידער, מיט טאָמער איינער ויסנעם, קומען פֿאַר-אינסטאַלירן אין יעדער נאָרמאַל פּיטהאָן ינסטאַלירונג. און אַזוי מיט אַ רוף צו אַרייַנפיר וועלכער, איר האָבן אַלע פון ​​אַז פונקטיאָנאַליטי אין דיין פינגערטיפּס. אָנהייב צו ייַנוויקלען אַרויף דעם רעדן, עס זענען אַ ביסל זאכן אַז איך ווע לינקס ווי שוואַרץ באָקסעס און סאָרט פון גלאָססעד איבער, און עס ס אַ ביסל ווייַס ליגט אַז איך ווע דערציילט אַז פֿאַר די צוליב פון ערלעכקייַט, איך וועט לפּחות פונט ביי דאָ, אַפֿילו אויב איך וועל נישט גיין סופּער טיף אין אַלע פון ​​זיי און זייער טעכניש דערקלערונגען. א פּלאַץ פון די זאכן אַז איך ווע גערופֿן מאַגיש איז וואָס אנדערע מענטשן וואָלט רופן כייפעץ אָריענטיד פּראָגראַממינג. אזוי עס זענען גורל פון טהינגס-- אַזוי וועריאַבאַלז זענען זייער אָפֿט ניט פּשוט בייטן זיצן אין, זכּרון, אָבער זענען זייער קאָמפּליצירט אַבדזשעקס אַז האָבן ינערלעך שטאַט וועגן פֿעיִקייטן און גורל פון פאַרבאָרגן וועריאַבאַלז, גורל פון פאַרבאָרגן פונקטיאָנאַליטי, וואָס לעץ איר קער זיי אין סטרינגס, וואָס לעץ איר יטעראַטע איבער זיי. און אויב איר ניטאָ ווריטינג-- און די סיבה אַז זיי האָבן אַלע פון ​​דעם רייַך פונקטיאָנאַליטי איז ווייַל די פּעאָפּלע-- די אַרקאַטעקץ פון די לאַנגואַגע-- האָבן ניטאָ דורך און פֿאַר יעדער נאָרמאַל כייפעץ, שטעלן אין די פונקטיאָנאַליטי צו זאָגן דעם איז ווי דעם איז ווי דעם איז געגאנגען צו אַרבעטן אויב עמעצער וויל צו יטעראַטע איבער אים. אַזוי אַלץ אַז עמעצער זאל עפשער ווילן צו יטעראַטע איבער, האט לאָגיק געשריבן אין מאַניואַלי אויף ווי איר ניטאָ געמיינט צו יטעראַטע איבער אַז כייפעץ. אלץ אַז איר זאל עפשער ווילן דאַמפּט אין אַ שטריקל האט לאָגיק געשריבן. דאס איז די פֿונקציע אַז איר רופן אויב איר ווילן צו דאַמפּ דעם אויס צו אַ שטריקל. דאס איז וואָס איר קענען רוף לען אויף זאכן, דעם איז וואָס איר קענען רופן פֿאַר אין, דאָס איז וואָס איר קענען רופן אויב אין אויף אַלץ אַז איר'ד ווילן צו, ווייַל די אַלע זענען קעריינג מיט זיי, די טעכניש וויסן-ווי צו טאָן אַז. דאס איז עפּעס אַז איך בין יבער נישט געגאנגען צו גיין אין. אבער פֿאַר זאַך אין רשימה איז סאַטאַלי אַנדערש פֿון C נוסח פֿאַר לופּס, און איר קענען לייענען אַלע וועגן אַז אויף די אינטערנעט אויב איר ניטאָ אינטערעסירט. עס איז אַ טונקל זייַט צו אַלע פון דעם, אַז איך דערמאנט, אַזוי עס ס צוויי זאכן. דער ערשטער איז אַז דעם כייפעץ אָריענטאַד פּראָגראַממינג מוסיף אַ פּלאַץ פון אָוווערכעד צו ראַנדאָם זאכן, אַזוי איר סוף אַרויף ניצן אַ פּלאַץ מער זכּרון; איר סוף אַרויף ניצן אַ ביסל מער צייַט ווי איר וואָלט אַנדערש. די אָטהער-- אָבער די מער ינסידיאַס פינצטער זייַט צו דעם איז, אויב דאס נאָר אַקט ווי איר ווילן זיי צו אָן איר געהאט צו טראַכטן יבער שווער וועגן צי דעם זאָל זיין אַ ינט אָדער צי עס זאָל זיין אַ לאָזנ שווימען, עס זאל זיין אַז איבער דאָ איר פּראָדוצירן אַ ינט אָבער איבער דאָ איר טראַכטן אָבער זיי וועט אַלווייַס-- נעבעכדיק, עס זאל זיין אַז דאָ איר פּראָדוצירן אַ לאָזנ שווימען, אבער ווען איר באַקומען צו די רגע טייל פון דיין פּראָגראַם, איר ניטאָ טראכטן, טאַקע געזונט, אָבער זיי וועט שטענדיק פאָרן מיר אַ ינט. און אויב זיי טאָן ניט, עס ס מעגלעך אַז איר וועדגעד ערגעץ, אויב איר פּרובירן צו נוצן אַז צו אינדעקס אין אַ מענגע, אָדער וואָס האָבן איר. אזוי איינער פון די פאַקטיש נוציק זאכן וועגן C איז עס כוחות איר צו טראַכטן טאַקע שווער איידער איר מאַכן אַני-- איידער איר ברענגען קיין בייַטעוודיק אין עקזיסטענץ, ווי וואָס איז דער טיפּ פון דעם בייַטעוודיק. און עס ס געגאנגען צו האָבן אַז טיפּ פֿאַר אַלע מאָל. דאס איז ניט אמת פּיטהאָן, און אין פאַקט, איר קאַנ-- אויב איר ניטאָ נאָר סאָרט פון געגאנגען דורך אויער, און איר מאַכן עטלעכע דיסיזשאַנז איין וועג אין איין אָרט, און עטלעכע דיסיזשאַנז איין וועג אין די אנדערע פּלאַץ אָן פּאַטינג גענוג שטאָפּן הינטער די סינז אין די אנדערע אָרט צו כאַפּן זאכן רעכט, איר קענען באַקומען עטלעכע זייער מאָדנע ערראָרס. און דער פּראָגראַם קענען האַלטן פליסנדיק פֿאַר אַ זייער לאַנג צייַט, ווייַל עס ס טאן אַ פּלאַץ פון אַרבעט צו זאָגן, געזונט דעם זאַך קען אַרבעטן דעם וועג, אַזוי איך בין געגאנגען צו לויפן אַז וועג. און אין פאַקט, די פאַקט אַז עס פּושאַז פאָרויס דורך אַ פּלאַץ פון קליין ערראָרס מיטל אַז, אָפֿט ווען אַ טעות איז אַקטשאַוואַלי שלעכט און איר טאָן אַקטשאַוואַלי ווילן צו פאַרריכטן עס, עס ענדס אַרויף מייל אַווייַ-- די פּראָגראַם ענדס אַרויף סטאָפּפּינג מייל אַוועק פון ווען איר האט דיין טעות. און אַזוי איין זאַך אַז מיר וואָלט ווי מגילה צו טאָן, סאָמעטימעס-- איין זאַך אַז מיר וואָלט ווי מגילה צו טאָן ווען מיר ניטאָ דיבאַגינג איז פאַרלאָזן הילכיק און פאַרלאָזן זייער געשווינד ווען עפּעס גייט אומרעכט. פּיטהאָן איז זייער שלעכט בייַ אַז. פּיטהאָן איז זייער גוט אין ניט פאַילינג און ראָולינג פאָרויס דורך אומגעריכט זאכן. אזוי דעם איז נוצלעך פֿאַר ווען איר ניטאָ שרייבן קליין מגילה. ווען איר באַקומען קאָמפּליצירט באַגז עס מאל נעמט אַ לאַנג צייַט צו רייצנ זיי אויס. אַזוי עס ס אַ טונקל זייַט צו אַלע פון דעם, ווי עס פּונקט אַרבעט. עס נאָר אַרבעט ווי איר'ד דערוואַרטן עס צו. חוץ אַז ווען עס טוט ניט, איר סוף זיך אין אַ גאָר אַנדערש אָרט און טריינג צו רעכענען אויס ווו עס איז געווען אַז איר געגאנגען אומרעכט. מיסט זאַמלונג יס-- אַזוי איין זאַך אַז איר וועט באַמערקן איז אַז קיין פון די זאכן וואָס איך'ווע געבראכט אין עקסיסטענסע-- די ערייז, די דיקשאַנעריז, די אַבדזשעקס, די פילעס-- קיינמאָל באַקומען פרעעד. עס איז ניט רופן צו פּאָטער אין קיין פון דעם רעדן. און וואָס איז געווען אויף די C-זייַט, ווייַל מיר קיינמאָל גאַט אין די זאכן. אבער אין פּיטהאָן-זייַט, עס איז נישט אַ פּאָטער. דאס באַקומען אויטאָמאַטיש פרעעד ווען פּיטהאָן מיינט איר ניטאָ ניט קוקן בייַ זיי. עס ס טאַקע גוט ניט פרעעינג זאכן וואָס איר זאל נאָך עפשער זיין קוקן בייַ, אָבער דעם מיטל אַז אויב איר זענען געגאנגען צו אַלאַקייט דעם גרויס זאַך, און איר ניטאָ ווי, אָה איך בין געטאן מיט עס איצט, עס ס שווער צו זאָגן פּיטהאָן אַז איר ניטאָ געטאן מיט עס איצט. איר קענען מאל שטעלן אַז בייַטעוודיק צו זיין קיין, און דעריבער האָפֿן אַז יווענטשאַוואַלי די מיסט קאַלעקטער קומט דורך און קלינז עס אויס. אבער ווידער, איר טאָן ניט האָבן קאָנטראָל איבער אַז. און איינער פון די סיבות אַז מענטשן נוצן C פֿאַר טאַקע פאָרשטעלונג קריטיש זאכן, איז דעם פיייקייַט צו טאַקע וויסן ווען זכּרון איז אַלאַקייטיד און ווען עס ס פרעעד, און האָבן אַ פּלאַץ פון קאָנטראָל איבער און געזאגט, איך בין ניצן קיין מער זכּרון ווי איך דאַרפֿן. וואָס איז עפּעס וואָס פּיטהאָן איז נישט אַז גרויס בייַ. וילעם: קען איך פרעגן איר אַ קשיא? וואָס האט איר מיינען דורך פאַרלאָזן הילכיק? ראַס רהעינגאַנס-Yoo: אזוי אויב עפּעס ס געגאנגען אומרעכט און איר ניטאָ אין דיבאַגינג מאָדע, איר וואָלט זייער אָפֿט ווילן אייער פּראָגראַם צו דערציילן איר ווו פּונקט עס ס ניטאָ אומרעכט, און ניט נאָר שטיל האַלטן פליסנדיק. אבער איר'ד אַקטואַללי עס צו דרוקן אויס אַלע סאָרץ פון אינפֿאָרמאַציע וועגן ווי, דאָ איז דעם. דאס זאַך געשען אויב איר ניטאָ דרוקן אַ ווענ-- אויב איר ניטאָ פליסנדיק אַ וועב סערווער-- וילעם: [ינאָדאַבאַל] ראַס רהעינגאַנס-Yoo: יאָ, אויב איר ניטאָ פליסנדיק אַ וועב סערווער, עס ס מאל שלעכט אויב איר ניטאָ שטענדיק דיסקאַרדינג ערראָרס, און איר ניטאָ געזאגט, גוט אַז האט נישט אַרבעטן. איך בין געגאנגען צו האַלטן. איך בין נאָר געגאנגען צו איגנאָרירן עס און האַלטן געגאנגען אויף. ווייַל דעמאָלט איר קענען באַקומען אין הונדערטער פון די ערראָרס און נישט זען זיי. עס וואָלט זיכער זיין נוצלעך פֿאַר דיבאַגינג צוועקן אויב יעדער צייַט אייער וועב סערווער געמאכט אַ טעות, איר האט דוראַבאַל רעקאָרדס פון אַז. אפֿשר איר אַפֿילו ווילן די פּראָגראַם צו האַלטן, אַזוי אַז די רעקאָרדס טאָן ניט באַקומען בעריד אונטער זאכן. אבער ווידער, אַז ס אין דיבאַגינג מאָדע. אָפֿט אין פּראָדוקציע מאָדע, די וועלט איז אַ ביסל אַנדערש. און אין קליינטשיק סקריפּס אַז איך בין פליסנדיק, ווו די זאַך וואָס איך האָב געזאָגט צו טאָן זאל זיין בלויז אַ קליין ביסל אַוועק פון וואָס איך וואָלט ווי עס צו טאָן, דעמאָלט סאָרט פון פּושינג דורך ערראָרס איז עפּעס איר זאל וועלן. און אין די קאַסעס, אַוואַדע פּיטהאָן טאַקע ערנז זייַן סטאַרץ. די לעצטע זאַך אַז איך האט ניט רעדן אין טהיס-- אַז איך האט ניט רעדן וועגן אָבער קענען זיין טאַקע ינפוריאַטינג דער ערשטער צייַט איר האָבן איין פון די ערראָרס, און די רגע און דריט און פערט צייַט איר האָבן איין די ערראָרס. פּיטהאָן, איך דערמאנט אַז עס ניצט ווייַס פּלאַץ צו זאָגן איר וואָס מדרגה פון ינדענטיישאַן און וואָס Functional בלאָק איר ניטאָ אין, עס טריץ טאַבס און ספּייסיז אנדערש. אַזוי אויב איר קוויטל איבער פיר, און דעמאָלט די ווייַטער שורה האט פיר ספּייסאַז, אַפֿילו אויב זיי ווייַזן אַרויף ווי די זעלביקער סומע אין אייער רעדאַקטאָר, פּיטהאָן טוט נישט מייַכל זיי די זעלבע. אין פאַקט, פּיטהאָן טריץ טאַבס און ספּייסאַז ווי בוימל און וואַסער. זיי זענען נאָר פאַרשידענע זאכן. עס איז קיין באַזונדער לענג אַז אַ קוויטל איז, אַזוי עס ס ניט ווי אַ קוויטל יקוואַלז 8 ספּייסיז, און אַזוי איר וואָלט באַקומען אַרום אים אַז וועג. ווי, ווען עס זאגט, וואָס מדרגה פון ווייַס פּלאַץ איך בין אין, עס איז אַקטשאַוואַלי קוקן פֿאַר אַ מוסטער פון ספּייסאַז און טאַבס. און אַזוי, דער בעסטער וועג צו האַנדלען מיט דעם איז צו שטענדיק נוצן ספּייסאַז אַלע די צייַט. און אין פאַקט, אין די קלאָוד9 ייד און די קס50 ייד, דיין טאַב שליסל ינסערץ פיר ספּייסיז אין אָנשטאָט פון אַ קוויטל, וואָס איז סופּער נוצלעך. כאָטש ווידער, אויב איר געשריבן אַ פּיטהאָן פּראָגראַם מיט טאַבס אַז וואָלט זיין פייַן, עס ס נאָר אויב עמעצער געגאנגען אין און פּרובירן צו לייגן אַ איין שורה צו דיין פּראָגראַם אַז האט פיר ספּייסאַז פֿאַר יעדער קוויטל, עס וואָלט ברעכן. און עס וואָלט ברעכן אין אַ וועג אַז טאַקע איז ניט קענטיק. כאָטש די פאַקטיש טעות אָנזאָג אַז עס טראָוז האט צו טאָן מיט נייַ ינדענט ניט געריכט דאָ, אָר-- אויב עס ס גערעדט וועגן ינדענץ און עס קוקט ווי עס ס אומרעכט, עס ס מיסטאָמע ווייַל עס ס אַ קוויטל-פּלאַץ פּראָבלעם. זיי ניטאָ נאָך ינפוריאַטינג צו דיבאַג. די ביגאַסט גאַנץ אין דעם רעדן, וואָס איך האט ניט באַקומען צו ווייַל עס ס טאַקע אַ קאָמפּליצירט, סאַטאַל טעמע, און איז ניט נייטיק צו טאָן קיין פון די זאכן מיר ווע געטאן אַזוי ווייַט, זענען אַ באַגריף גערופֿן טופּלעס. זיי זענען דאָרט פיל ווי די ערייז אַז איר קענען ניט מאָדיפיצירן. זיי באַקומען געניצט אַלע איבער דעם אָרט ווייַל זיי זענען נוציק פֿאַר גורל פון זאכן אַז ערייז זענען ניט נוצלעך פֿאַר. אבער אויב איר 'ד ווי צו מאַכן אַ מענגע, און דעמאָלט צוזאָגן די יבערזעצער אַז איר זענען קיינמאָל געגאנגען צו ווילן צו מאָדיפיצירן אַז טהינג-- אין פאַקט, אויב איר ווילן צו מאָדיפיצירן, איר וועט מאַכן אַ נייַ איינער מיט די נייַ וואַלועס אין יט-- יענע זענען טופּלעס. אלא ווי פּראַדוסינג זיי מיט קוואַדראַט בראַקאַץ, איר פּראָדוצירן זיי מיט קייַלעכיק בראַקאַץ. וואָס איר וואָלט נוצן די זאכן, איז אַ קליין ביסל פון אַ קשיא. . דער בלויז זאַך אַז איך וועט זאָגן וועגן וואָס איז איר קענען נוצן טופּלעס ווי ינדיסעס פֿאַר דיקשאַנעריז. איר קענען ניט נוצן ערייז ווי ינדיסעס פֿאַר דיקשאַנעריז. און וואָס איז, ווידער, טעכניש און איך בין נישט געגאנגען צו לויפן אין עס. די פּסעט אַז איך האָבן ניט גערירט אויף אין דעם רעדן איז פּסעט6. אזוי דאָ ס ווי איר 'ד ינסטרומענט אַ-- דאָ ס ווי איר וואָלט ינסטרומענט פּסעט6 אין פּיטהאָן. בעכעסקעם אין מיינונג די פּיטהאָן פּלאַן ציקל, דער ערשטער זאַך אַז איר טאָן ווען איר ניטאָ שרייבט מגילה איז טשעק צו זען אויב עמעצער ס געטאן עס שוין. אין פאַקט, אויב איר ווילן צו סערווע-- אַפּאַטשי 50 טוט בעערעך דעם, אַחוץ עס טוט נישט קומען נאָרמאַל אינסטאַלירן אויף לינוקס מאשינען. פּיטהאָן טוט, און דער פּיטהאָן פּשוט הטטפּ סערווירער טוט ווי געזונט. אויב איר ניטאָ אלץ אויף אַ לינוקס מאַשין, אָדער די קלאָוד9 ייד אַרויס פון קס50 און איר 'ד ווי צו דינען דעם איצטיקן Directory צו אַ באַזונדער פּאָרט, פּיטהאָן-עם סימפּלעהטטפּסערווער פּאָרט באדינט אַז. איר קענען אויך אַרייַנפיר די פּשוט הטטפּ סערווירער און עס ס גאַט אַ פּלאַץ פון פונקטיאָנאַליטי אויב איר ווילן צו קאַסטאַמייז עס, אָדער טוישן עס, אָדער זענען לויפן יט-- כאַרנאַס עס צו לויפן דיין אייגן סערווירער באַדינונגען. אַזוי אַז ס פּיטהאָן אין אַ נאַטשעל. און דעם האט שוין קס50. דאנק איר.