1 00:00:00,000 --> 00:00:05,426 2 00:00:05,426 --> 00:00:06,800 ROSS RHEINGANS-YOO: Hi, mimi nina Ross. 3 00:00:06,800 --> 00:00:08,570 Na hii ni CS50 semina. 4 00:00:08,570 --> 00:00:12,100 Itachukua wewe kutoka programu katika C na programu katika Python. 5 00:00:12,100 --> 00:00:15,120 >> Chatu ni lugha scripting. 6 00:00:15,120 --> 00:00:17,870 Ni kwa kiasi kikubwa kama C katika syntax, ingawa baadhi 7 00:00:17,870 --> 00:00:20,390 ya maelezo ya kiufundi ya jinsi syntax anapata kunyongwa 8 00:00:20,390 --> 00:00:22,240 ni tofauti kidogo. 9 00:00:22,240 --> 00:00:24,780 Ni chini ya nguvu kuliko C katika baadhi ya njia. 10 00:00:24,780 --> 00:00:28,130 Ni chini expressive kwa ambapo hasa katika kompyuta yako 11 00:00:28,130 --> 00:00:30,030 kumbukumbu anapata kuweka nje, jinsi anapata kuweka nje, 12 00:00:30,030 --> 00:00:32,030 wakati anapata uhuru, na wale aina ya mambo. 13 00:00:32,030 --> 00:00:36,150 >> Ni muhimu zaidi kuliko C katika baadhi ya njia, kwa sababu ni rahisi kwa mpango katika. 14 00:00:36,150 --> 00:00:39,920 Lugha ni, kwa baadhi watu, zaidi Intuitive. 15 00:00:39,920 --> 00:00:44,820 Na kwa kweli, lengo ni kwa kuwa ni kwa kasi kwa mpango 16 00:00:44,820 --> 00:00:46,490 na uwezekano wa polepole kutekeleza. 17 00:00:46,490 --> 00:00:48,198 >> Sasa kama unadhani kuhusu kiasi cha muda 18 00:00:48,198 --> 00:00:50,514 alitumia juu ya mwisho yako tatizo kuweka maandishi 19 00:00:50,514 --> 00:00:52,430 kanuni yako dhidi ya kiasi cha muda wanatumia 20 00:00:52,430 --> 00:00:55,310 juu ya tatizo lako mwisho kuweka utekelezaji kanuni yako, 21 00:00:55,310 --> 00:00:58,300 d kufikiria kwamba lugha ambayo ilikuwa mara mbili kwa haraka kuandika, 22 00:00:58,300 --> 00:01:02,170 na mara mbili kama mwepesi wa kutekeleza, ili kuwa kuboresha zaidi C katika baadhi ya njia. 23 00:01:02,170 --> 00:01:05,730 Hakika wakati wewe ni kujaribu kuandika programu ndogo kufanya mambo kidogo, 24 00:01:05,730 --> 00:01:08,520 Chatu ni lugha muhimu ya uchaguzi. 25 00:01:08,520 --> 00:01:10,620 >> Na mwishoni mwa hii semina hiyo, natumaini utasikia 26 00:01:10,620 --> 00:01:12,950 kuwa na uwezo wa kufanya uchaguzi katika miradi ya baadaye 27 00:01:12,950 --> 00:01:17,710 kuhusu ambayo ni lugha sahihi kwa kutumia, si wazo 28 00:01:17,710 --> 00:01:21,405 kwamba lugha moja ni zaidi kusahihisha wakati wote. 29 00:01:21,405 --> 00:01:23,030 Mambo machache kuhusu nini semina ni. 30 00:01:23,030 --> 00:01:25,910 Semina hii si nia ya kufundisha chatu kutoka mwanzo. 31 00:01:25,910 --> 00:01:28,310 Chatu ni sawa kwa C, na mimi nina kuchukua 32 00:01:28,310 --> 00:01:34,056 kwamba wewe ni CS50 mwanafunzi, au mtu na uzoefu sawa na C. 33 00:01:34,056 --> 00:01:36,700 >> Kama uko CS50 mwanafunzi karibu tatizo kuweka 6, 34 00:01:36,700 --> 00:01:38,866 hivyo wameweza kuona mengi ya mambo katika C, Mimi nitakupa 35 00:01:38,866 --> 00:01:40,740 tofauti kubwa, na baadhi ya mambo 36 00:01:40,740 --> 00:01:42,840 kwamba kufanya chatu tofauti na maalum na muhimu, 37 00:01:42,840 --> 00:01:45,256 lakini mimi si kwenda na kwenda kwa nini lugha ya programu ni 38 00:01:45,256 --> 00:01:46,920 na jinsi ya kuandika mipango. 39 00:01:46,920 --> 00:01:49,820 Hata hivyo, semina hii kufundisha kuandika mipango chatu 40 00:01:49,820 --> 00:01:52,310 kama wewe ni mmoja wa wale makundi kadhaa. 41 00:01:52,310 --> 00:01:54,820 Tena tutaangalia jinsi ungependa kutekeleza psets-- 42 00:01:54,820 --> 00:01:57,550 kwamba lazima 1-6 katika Python-- na kutoa kuyatumia 43 00:01:57,550 --> 00:02:00,322 kwa nyaraka rasmi kwa matumizi ya baadae. 44 00:02:00,322 --> 00:02:03,030 Jambo jingine hayo ni muhimu kuhusu jinsi majadiliano hayo ni kwa ajili, 45 00:02:03,030 --> 00:02:05,360 video hii itakuwa online, kwa heshima ya CS50, 46 00:02:05,360 --> 00:02:07,550 hivyo unapaswa kujisikia kama unahitaji kuchukua maelezo. 47 00:02:07,550 --> 00:02:11,180 Unaweza daima kurudi nyuma na kuangalia saa hiyo baadaye kama kumbukumbu. 48 00:02:11,180 --> 00:02:13,340 Zaidi ya hayo slides zinapatikana sasa hivi 49 00:02:13,340 --> 00:02:16,480 katika tovuti hii, ambayo lazima kuchukua wewe kufanya doc Google. 50 00:02:16,480 --> 00:02:21,010 Ni toleo kidogo Abridged nini mimi nina kuonyesha kwenye screen. 51 00:02:21,010 --> 00:02:24,850 >> Moja caveat makini kabla sisi kuruka katika, chatu 3 52 00:02:24,850 --> 00:02:26,700 ni lugha tofauti na chatu 2. 53 00:02:26,700 --> 00:02:30,020 Wao kuangalia mengi sawa; kuna kidogo sana tofauti kiufundi 54 00:02:30,020 --> 00:02:32,530 ambayo kusababisha mipango yaliyoandikwa katika Python 2 55 00:02:32,530 --> 00:02:37,140 si kuwa na uwezo wa wauawe katika Python 3 mazingira. 56 00:02:37,140 --> 00:02:41,969 >> Appliance CS50 kuja na Chatu, na msingi anatumia chatu 2. 57 00:02:41,969 --> 00:02:44,010 Unaweza kuangalia hili kwa kuandika katika mstari amri yako 58 00:02:44,010 --> 00:02:51,310 chatu --version, ambayo lazima pato 2.7.6 juu ya appliance sasa. 59 00:02:51,310 --> 00:02:53,580 Jaribu chatu 3, ambayo haina kazi katika appliance, 60 00:02:53,580 --> 00:02:58,500 kama chatu defaults kwa 2.X.Y, ama kwenye appliance au kwenye mashine yako mwenyewe. 61 00:02:58,500 --> 00:03:03,730 Unapaswa kuchukua nafasi ya chatu 3 wowote katika majadiliano hayo kwamba mimi kuandika chatu. 62 00:03:03,730 --> 00:03:05,760 Kama mashine yako ni mbio 2 na msingi, aina 63 00:03:05,760 --> 00:03:09,770 Chatu 3 ili kuwa na uwezo wa kweli kufuata pamoja na kutekeleza mambo hayo. 64 00:03:09,770 --> 00:03:12,280 >> Zaidi ya hayo, mimi itabidi kumweka wewe katika rasilimali rasmi sasa. 65 00:03:12,280 --> 00:03:16,082 docs.python.org/3--~~V makini kwamba hiyo ni 3 na si 2-- 66 00:03:16,082 --> 00:03:17,030 ina marejeo muhimu. 67 00:03:17,030 --> 00:03:19,280 Mafunzo itachukua wewe kupitia sehemu kubwa ya mambo sawa 68 00:03:19,280 --> 00:03:21,460 kwamba mimi nina kufanya sasa, isipokuwa katika fomu asilia. 69 00:03:21,460 --> 00:03:23,725 Kumbukumbu ni muhimu kama rejea kwa lugha, 70 00:03:23,725 --> 00:03:26,100 na maktaba Standard inatoa wewe baadhi ya upanuzi 71 00:03:26,100 --> 00:03:27,770 na kazi zaidi. 72 00:03:27,770 --> 00:03:31,300 >> Hivyo kwanza kabisa chatu mpango. 73 00:03:31,300 --> 00:03:34,410 Upande wa kushoto tuna kiwango C, juu ya haki, tuna chatu. 74 00:03:34,410 --> 00:03:36,780 Unaweza kuwa na kutambuliwa tatizo hili, ni 75 00:03:36,780 --> 00:03:40,760 moja ya tatizo la kwanza seti katika CS50, na hizi 76 00:03:40,760 --> 00:03:42,677 kulitatua kutumia ufumbuzi huo. 77 00:03:42,677 --> 00:03:45,010 Sasa, sababu tuko kuangalia upande hizo kwa upande 78 00:03:45,010 --> 00:03:46,830 ni ili tuweze kuangalia kisintaksia tofauti. 79 00:03:46,830 --> 00:03:49,580 Moja ya tembo katika chumba kwamba unaweza kuwa niliona haki 80 00:03:49,580 --> 00:03:56,350 mbali bat, ni kwamba chatu hana kuu kazi wrapping karibu kificho. 81 00:03:56,350 --> 00:03:59,170 Hivyo katika C, wewe kuandika rundo la mafaili, wewe kuwaunganisha pamoja, 82 00:03:59,170 --> 00:04:02,590 na mpango wa kuanza utekelezaji katika jambo hili aitwaye int kuu. 83 00:04:02,590 --> 00:04:04,930 >> Katika chatu, kuandika faili wewe, nitafanya faili, 84 00:04:04,930 --> 00:04:07,882 Mpango kuanza utekelezaji juu ya faili. 85 00:04:07,882 --> 00:04:09,590 Hivyo ni kwenda kuanza juu ya faili 86 00:04:09,590 --> 00:04:11,280 kwenda chini mpaka kupata kitu kingine chochote. 87 00:04:11,280 --> 00:04:14,440 Kama anaona ufafanuzi kazi, itakuwa si kweli nitafanya kwamba kanuni, 88 00:04:14,440 --> 00:04:15,940 itakuwa tu kufafanua kazi. 89 00:04:15,940 --> 00:04:18,459 Lakini hapa, wakati wa kwanza mpango huo ni n sawa na 10, 90 00:04:18,459 --> 00:04:21,273 Jambo la kwanza kwamba mpango huu kufanya ni kuchukua thamani hii ya 10 91 00:04:21,273 --> 00:04:24,120 na kuliweka katika variable kuitwa n. 92 00:04:24,120 --> 00:04:27,690 >> Akizungumza ya kwamba mstari, mmoja wa wengine things-- sorry-- hii 93 00:04:27,690 --> 00:04:31,040 maana yake ni kwamba mipango C, wewe utakuwa kuandika yao, 94 00:04:31,040 --> 00:04:34,899 itabidi kufanya nao, ambayo itakuwa waomba baadhi ya amri Clang, 95 00:04:34,899 --> 00:04:36,690 na kisha utasikia kukimbia kusababisha kutekelezwa. 96 00:04:36,690 --> 00:04:41,030 Mipango chatu, kukimbia Nakala file-- mario.py hii huenda 97 00:04:41,030 --> 00:04:44,900 kuwa faili hili kwamba mimi tu ilionyesha you-- utasikia kukimbia kwamba faili 98 00:04:44,900 --> 00:04:47,450 na wewe utakuwa kutekeleza, na yaliyomo yake 99 00:04:47,450 --> 00:04:50,390 itakuwa imetekelezwa na chatu mkalimani. 100 00:04:50,390 --> 00:04:52,470 Unaweza kufanya hivyo katika IDE yako. 101 00:04:52,470 --> 00:05:02,260 >> Hivyo kama nina Habari file, ambayo tu ina yaliyomo hii. 102 00:05:02,260 --> 00:05:04,840 Hii ni kweli chatu 2, si chatu 3, hivyo si 103 00:05:04,840 --> 00:05:06,600 wasiwasi kuhusu syntax kwa sasa. 104 00:05:06,600 --> 00:05:14,230 Lakini mimi itabidi kukimbia chatu, juu ya hello.py, na ni anaendesha. 105 00:05:14,230 --> 00:05:18,890 >> Njia nyingine kwamba naweza kutumia chatu kwamba Mimi si kukabiliana na mambo mengi katika majadiliano hayo, 106 00:05:18,890 --> 00:05:21,840 ni kama mimi aina tu chatu, ni matone yangu ndani ya mazingira ambapo 107 00:05:21,840 --> 00:05:24,370 Siwezi kulisha ni chatu mstari kwa mstari. 108 00:05:24,370 --> 00:05:31,260 Hivyo hapa, kama mimi aina katika magazeti nafasi 'hello, dunia'. 109 00:05:31,260 --> 00:05:32,360 Aina kuingia. 110 00:05:32,360 --> 00:05:37,430 Itakuwa mate yangu kwamba kuunga matokeo kuwa mstari wa mtu binafsi mara moja. 111 00:05:37,430 --> 00:05:38,470 >> Hii ni inaweza kuwa na manufaa. 112 00:05:38,470 --> 00:05:40,700 Katika majadiliano hayo nitafanya mambo juu ya slides. 113 00:05:40,700 --> 00:05:43,940 Na hivyo wewe utakuwa na uwezo wa kufuata pamoja ama katika hapa, au kwa kuandika 114 00:05:43,940 --> 00:05:45,725 mafaili halisi na kisha utekelezaji wao. 115 00:05:45,725 --> 00:05:48,340 116 00:05:48,340 --> 00:05:50,995 >> Lakini, kurejea huu kanuni, jambo lingine 117 00:05:50,995 --> 00:05:53,230 kwamba unaweza kuwa noticed-- vizuri, kuna 118 00:05:53,230 --> 00:05:55,980 mambo mawili ambayo waweza taarifa kuhusu vitalu haya. 119 00:05:55,980 --> 00:05:59,280 Kwanza, badala zaidi mundane, ni kwamba chatu hana semicolon trailing. 120 00:05:59,280 --> 00:06:02,630 >> Semicolons ni hiari kila mahali na wapole kila mahali. 121 00:06:02,630 --> 00:06:03,722 Unaweza kuongeza yao. 122 00:06:03,722 --> 00:06:06,430 Inaweza kufanya watu ambao kuandika Chatu kwa snicker hai saa wewe 123 00:06:06,430 --> 00:06:08,860 nyuma yako, kwa sababu wao siyo lazima. 124 00:06:08,860 --> 00:06:13,497 Wao ni mara nyingi ishara ya anashikiliwa zaidi kutoka C. wabunifu wa lugha 125 00:06:13,497 --> 00:06:16,580 kuhisi kuwa ni wazi zaidi kwa njia hii na kwamba siyo muhimu kwa kutangaza 126 00:06:16,580 --> 00:06:18,700 kila wakati wewe kumaliza line. 127 00:06:18,700 --> 00:06:21,799 >> Kitu kingine cha ajabu kuhusu n huu ni haina aina masharti. 128 00:06:21,799 --> 00:06:24,590 Moja ya vipande uchawi wa Python-- na mimi nina kwenda kumwita uchawi, 129 00:06:24,590 --> 00:06:26,381 lakini kuna sana sababu za kiufundi kwa nini 130 00:06:26,381 --> 00:06:28,560 works-- moja ya vipande uchawi wa chatu 131 00:06:28,560 --> 00:06:32,700 ni kwamba vigezo wanaweza kupanua au kuogopa vyenye data chochote 132 00:06:32,700 --> 00:06:34,530 aina ungependa unataka yao. 133 00:06:34,530 --> 00:06:35,580 >> Hivyo hii ni 10. 134 00:06:35,580 --> 00:06:40,060 Kama baadaye chini mimi ajili ya hii n 0.5, itachukua kwamba 0.5. 135 00:06:40,060 --> 00:06:43,770 Hakuna jambo kwamba ni int hapa na kuelea huko, kitu chochote ambayo inatumia n huu 136 00:06:43,770 --> 00:06:47,057 itakuwa, zaidi au chini, kuwa na uwezo wa chug pamoja kama anapata ama ya wale. 137 00:06:47,057 --> 00:06:49,640 Isipokuwa kuna baadhi ni za kweli sababu ni kwa nini hawawezi kutumia data 138 00:06:49,640 --> 00:06:52,170 aina hiyo n kwa sasa ina, ambapo kiwango kutakuwa na kupata 139 00:06:52,170 --> 00:06:54,490 wedged na kutupa makosa, na wale aina ya mambo. 140 00:06:54,490 --> 00:06:57,050 >> Lakini hapa, chatu kweli haina huduma ya kile 141 00:06:57,050 --> 00:06:59,140 ni kwamba mimi nina kwenda kwa fimbo katika hii adhabu, kama, unataka kuwa jambo hili? 142 00:06:59,140 --> 00:06:59,840 Jambo hili kwa kuwa? 143 00:06:59,840 --> 00:07:00,640 Yeah, ni aina ya kitu. 144 00:07:00,640 --> 00:07:01,810 Mimi itabidi fimbo yake katika mwisho. 145 00:07:01,810 --> 00:07:04,740 Ni utakuwa tatizo baadaye, ikiwa mtu ambaye anataka kutumia kufikia lengo hilo 146 00:07:04,740 --> 00:07:05,710 hawezi kushughulikia hilo. 147 00:07:05,710 --> 00:07:08,500 Hii ni moja ya kubwa tofauti kati ya chatu na C 148 00:07:08,500 --> 00:07:10,790 kwamba inafanya kuwa rahisi kuandika kubwa sana mipango C 149 00:07:10,790 --> 00:07:15,120 na inafanya kuwa rahisi kuandika ndogo sana chatu mpango. 150 00:07:15,120 --> 00:07:19,564 >> Kwa syntax siyo sana tofauti katika kile yake. 151 00:07:19,564 --> 00:07:21,480 Ni tofauti kidogo katika jinsi gani walionyesha. 152 00:07:21,480 --> 00:07:25,370 Hivyo hii ni sana, kile kinachoitwa Pythonic, njia ya kuandika hayo. 153 00:07:25,370 --> 00:07:28,969 kwa mstari katika mbalimbali (n), hii ni mbalimbali ya idadi kutoka 0 kwa n, 154 00:07:28,969 --> 00:07:31,010 umoja juu ya chini na ya kipekee juu. 155 00:07:31,010 --> 00:07:34,790 Hivyo ni kutoka 0 kwa N-1, ambayo ni nini hasa C kificho anafanya, 156 00:07:34,790 --> 00:07:38,690 isipokuwa ni rahisi sana kuangalia labda. 157 00:07:38,690 --> 00:07:42,710 >> Kuzuia husika ni si kuweka mbali na braces, 158 00:07:42,710 --> 00:07:44,540 badala ni kuweka mbali na indentation hii. 159 00:07:44,540 --> 00:07:47,580 Basi wote wa mistari haya ni nafasi nne juu ya upande wa kulia, 160 00:07:47,580 --> 00:07:50,410 au kama kuhusu tembo upana. 161 00:07:50,410 --> 00:07:54,570 Na hao ndio walio kwenda wauawe katika hii kwa. 162 00:07:54,570 --> 00:07:57,020 Kama mimi fujo up indentation juu ya hili na mimi 163 00:07:57,020 --> 00:08:01,420 kushinikiza kwamba magazeti nyuma indentation awali, 164 00:08:01,420 --> 00:08:04,320 kwamba magazeti kuondoka kwa kitanzi. 165 00:08:04,320 --> 00:08:08,560 Tofauti na C, ambapo hapa mimi kwa kweli haja ya hoja kwamba kufungwa mabao mawili kote. 166 00:08:08,560 --> 00:08:11,820 >> Hii ina maana kwamba huwezi kupata makosa kwamba kuruka nje saa wewe kwa sababu wewe 167 00:08:11,820 --> 00:08:13,580 kuweka brace katika mahali sahihi. 168 00:08:13,580 --> 00:08:16,460 Haina maana kwamba kupata makosa kwamba kuruka nje saa wewe kwa sababu wewe 169 00:08:16,460 --> 00:08:17,620 indented mstari sahihi. 170 00:08:17,620 --> 00:08:19,290 Hivyo inafanya indentations super makini. 171 00:08:19,290 --> 00:08:22,123 Hopefully walikuwa kuwa super makini na indentation yako anyway, 172 00:08:22,123 --> 00:08:25,300 na hivyo hii si kwamba zaidi ya mzigo. 173 00:08:25,300 --> 00:08:28,762 >> Lakini utawala wa msingi kwa chatu, na tutaweza kuwa wanandoa wa haya 174 00:08:28,762 --> 00:08:30,970 kwamba tutaweza kwenda kupitia kupitia kozi ya majadiliano, 175 00:08:30,970 --> 00:08:33,840 ni kujaribu syntax asili kabla ya kuangalia kitu chochote juu. 176 00:08:33,840 --> 00:08:37,610 Hivyo syntax hii, kwa idadi hii katika mbalimbali, 177 00:08:37,610 --> 00:08:41,460 ni tofauti sana katika suala la mtindo. 178 00:08:41,460 --> 00:08:45,260 Kura ya mambo katika Python tutaona kuchukua fomu hii. 179 00:08:45,260 --> 00:08:47,420 >> Na hivyo kama wewe kuja na kitu kipya kwamba 180 00:08:47,420 --> 00:08:50,870 kufikiri unapaswa kuwa na uwezo wa iterate juu ya hii, katika muundo huu, 181 00:08:50,870 --> 00:08:53,720 zamu nje pengine inasaidia muundo huo. 182 00:08:53,720 --> 00:08:56,990 Sisi siyo kwenda super kina katika sababu za kiufundi kwa nini hiyo ni kweli. 183 00:08:56,990 --> 00:09:00,167 >> Lakini ni muhimu kuwa na Intuition wakati wewe ni inakaribia mipango chatu, 184 00:09:00,167 --> 00:09:01,750 kwamba jambo hili ni kwenda tu kufanya kazi. 185 00:09:01,750 --> 00:09:03,020 Kujaribu. 186 00:09:03,020 --> 00:09:06,480 Boot juu amri Line Mkalimani, kuona kama ni kazi, 187 00:09:06,480 --> 00:09:09,827 kuendelea na mambo, kabla ya hata haja ya kufungua Google na kusema, 188 00:09:09,827 --> 00:09:11,660 nini syntax kwa Jambo hili hasa? 189 00:09:11,660 --> 00:09:14,740 Kura ya chatu ungeweza kugundua tu kwa kujaribu. 190 00:09:14,740 --> 00:09:19,005 >> Hii ikiwa ni hata zaidi kama C kisha fors ni. 191 00:09:19,005 --> 00:09:20,380 Kumbuka kwamba hakuna mabano. 192 00:09:20,380 --> 00:09:23,490 Mabano ni, tena, wapole lakini lazima. 193 00:09:23,490 --> 00:09:25,750 Kuna matumbo mwishoni kama kwa tanzi, 194 00:09:25,750 --> 00:09:30,800 na tena, vitalu jamaa ni indented badala ya kuweka mbali na braces. 195 00:09:30,800 --> 00:09:33,080 Kingine Hii ni katika awali Kiwango cha indentation, 196 00:09:33,080 --> 00:09:35,930 na muhimu kuzuia wake indented tena. 197 00:09:35,930 --> 00:09:41,720 Wale kazi hasa kama wanavyofanya katika C. 198 00:09:41,720 --> 00:09:44,520 >> Hii ni kweli sana sawa. 199 00:09:44,520 --> 00:09:49,430 Tena, magazeti hupoteza tabia moja mbali ya printf Wewe kupita baadhi ya masharti. 200 00:09:49,430 --> 00:09:51,520 Ni zinageuka masharti yanaweza ama kuwa alama mbali 201 00:09:51,520 --> 00:09:53,562 na quotes moja au quotes mbili. 202 00:09:53,562 --> 00:09:55,270 Hakuna tofauti, isipokuwa ndani ya kwamba 203 00:09:55,270 --> 00:09:57,722 ya quotes moja unaweza kutumia quotes mbili kwa kuachana, 204 00:09:57,722 --> 00:09:59,430 badala ya kuwa na kutoroka wote. 205 00:09:59,430 --> 00:10:01,480 Na ndani ya quotes mbili, wewe Unaweza kutumia quotes moja na kuachana 206 00:10:01,480 --> 00:10:02,420 bila ya kuwa na kutoroka kwao. 207 00:10:02,420 --> 00:10:04,253 Kama alitaka kuchanganya nao, unaweza hakika 208 00:10:04,253 --> 00:10:06,100 kuangalia juu online jinsi ya kufanya hivyo. 209 00:10:06,100 --> 00:10:09,581 >> Utagundua kuwa zaidi ya hapa, Nimekuwa kupita katika mwisho = jambo hili. 210 00:10:09,581 --> 00:10:12,580 Huu ni mfano wa hiari Hoja, ambayo ni moja ya mambo 211 00:10:12,580 --> 00:10:14,990 kuwa chatu inasaidia kwamba inafanya kuwa muhimu kabisa. 212 00:10:14,990 --> 00:10:18,240 Hivyo magazeti kweli ina mengi ya hoja, ambayo ni kawaida 213 00:10:18,240 --> 00:10:20,140 kuweka default yao thamani, lakini hapa nimekuwa 214 00:10:20,140 --> 00:10:21,924 aliamua kupuuza mtu mmoja aitwaye mwisho. 215 00:10:21,924 --> 00:10:24,340 Sababu kwamba nina kuipuuza kwa kamba tupu 216 00:10:24,340 --> 00:10:26,756 ni kwamba magazeti katika Python, na msingi, Prints nje mstari mpya 217 00:10:26,756 --> 00:10:28,630 baada ya jambo kwamba wewe aliiambia hiyo pia. 218 00:10:28,630 --> 00:10:31,462 >> Hivyo hash hii ni kweli kwenda magazeti nje hash katika mstari mpya. 219 00:10:31,462 --> 00:10:34,670 Na kama Sitaki hash magazeti nje mstari mpya baada ya hayo, basi mimi kusema 220 00:10:34,670 --> 00:10:35,340 wala magazeti moja. 221 00:10:35,340 --> 00:10:37,980 222 00:10:37,980 --> 00:10:43,690 Lakini, hata hivyo, jambo moja la mwisho kwamba mpango huu ni kukosa kwamba mtu ana ni 223 00:10:43,690 --> 00:10:44,960 an ni pamoja na juu. 224 00:10:44,960 --> 00:10:48,120 Magazeti ni Motoni katika Python hivyo kimsingi kwamba hakuna kichwa au moduli 225 00:10:48,120 --> 00:10:49,869 kwamba unahitaji pamoja, ingawa kama alitaka 226 00:10:49,869 --> 00:10:52,029 ni pamoja na mambo mengine katika Python script, 227 00:10:52,029 --> 00:10:55,320 Napenda kufanya hivyo katika format-- sawa maneno ni kidogo tu tofauti. 228 00:10:55,320 --> 00:10:58,840 229 00:10:58,840 --> 00:11:01,360 >> Mimi alieleza kuwa sisi hawana haja kuu hapa, 230 00:11:01,360 --> 00:11:03,372 kwa sababu chatu kuanza utekelezaji juu. 231 00:11:03,372 --> 00:11:05,080 Kama nilitaka wa kufuta huu katika kazi, mimi 232 00:11:05,080 --> 00:11:07,667 bila kufanya hivyo kama hii mimi kusema def jina kazi, 233 00:11:07,667 --> 00:11:10,500 hoja wanaweza kwenda katika hapa na tutaweza kuona baadhi ya wale baadaye, matumbo, 234 00:11:10,500 --> 00:11:13,040 na kisha tena, hii nzima kuweka mbali na jingo 235 00:11:13,040 --> 00:11:16,810 ni nini kazi kuzuia kwa kazi hiyo. 236 00:11:16,810 --> 00:11:18,560 Hivyo hii ni ufafanuzi ya kazi. 237 00:11:18,560 --> 00:11:21,587 Na kuna tamko, basi chini hapa, naweza tu kuwaita kazi. 238 00:11:21,587 --> 00:11:23,920 Na tena, mpango mkalimani, kuanzia juu, 239 00:11:23,920 --> 00:11:25,280 utaona hii ni ufafanuzi. 240 00:11:25,280 --> 00:11:27,960 Itakuwa si kutekeleza hii mpaka kupata hapa, na kisha ni kama, loo 241 00:11:27,960 --> 00:11:30,860 sasa umetumia hilo, mimi nadhani ni lazima nitafanya hivyo. 242 00:11:30,860 --> 00:11:33,850 >> Jambo hilo ni la kawaida sana kuona katika Python mafaili, 243 00:11:33,850 --> 00:11:36,700 hasa chatu mafaili kwamba ni iliyotolewa kwa umma 244 00:11:36,700 --> 00:11:41,650 na maendeleo by-- na maendeleo na iimarishwe, ni kitu cha aina hii. 245 00:11:41,650 --> 00:11:44,540 Hii ni basically-- hivyo kwa sababu Chatu, kuanza juu 246 00:11:44,540 --> 00:11:50,310 na kisha kutekeleza chini kwa chini, Mimi kama mimi tu alikuwa Mario walioitwa hapa, 247 00:11:50,310 --> 00:11:54,190 kisha wakati wowote mimi ni pamoja na faili hii katika faili jingine, kwa sababu nilitaka kutumia 248 00:11:54,190 --> 00:11:58,580 ni Mario kazi, kwamba faili wengine ingekuwa pia kuwa wito huu kwa Mario ndani yake. 249 00:11:58,580 --> 00:12:01,000 Na wakati mimi mbio faili kwamba, ingekuwa kuwaita Mario. 250 00:12:01,000 --> 00:12:04,520 >> Hivyo inawezekana kwamba mimi tu unataka kukimbia huu ikiwa nimepata kweli 251 00:12:04,520 --> 00:12:07,290 kunyongwa faili hili fulani. 252 00:12:07,290 --> 00:12:11,520 Na hivyo siwezi kufuta hii katika nahau kama hii, ambapo nasema, 253 00:12:11,520 --> 00:12:14,820 kama jina la utekelezaji huu mazingira ni kuu, 254 00:12:14,820 --> 00:12:16,200 kisha nataka kufanya mambo haya. 255 00:12:16,200 --> 00:12:18,710 Vinginevyo mtu mwingine anaweza use-- ni pamoja na function-- yangu 256 00:12:18,710 --> 00:12:22,510 faili yangu, na tu kupata upatikanaji wa kazi hizo 257 00:12:22,510 --> 00:12:25,552 bila ya kuwa na kuendesha mambo kuwa nataka kutekeleza katika faili hii. 258 00:12:25,552 --> 00:12:27,260 Hii ni mara ya pili, hiari lakini kawaida sana. 259 00:12:27,260 --> 00:12:30,450 260 00:12:30,450 --> 00:12:33,840 >> Mambo hayo ni entirely-- ni sawa kati ya C na chatu, 261 00:12:33,840 --> 00:12:35,100 hakika katika 3. 262 00:12:35,100 --> 00:12:38,610 Nadhani katika 2, mgawanyo operator wakati mwingine anatoa nyuma ikifungwa wakati 263 00:12:38,610 --> 00:12:41,450 wewe upasuaji ints, na ama alitaka kuwa au wewe hakufanya hivyo. 264 00:12:41,450 --> 00:12:44,777 Lakini plus, bala, na mara kazi hasa kama wewe d kutarajia, 265 00:12:44,777 --> 00:12:46,110 ila juu ya aina kidogo zaidi. 266 00:12:46,110 --> 00:12:49,740 Hivyo unaweza kuzidisha ikifungwa na ints, na wale aina ya mambo. 267 00:12:49,740 --> 00:12:52,480 >> kuweka kazi sawa. 268 00:12:52,480 --> 00:12:54,310 Unaweza kutumia ishara mbili sawa. 269 00:12:54,310 --> 00:12:59,000 inequals-- mkubwa kuliko, chini kuliko, aina hii ya things-- 270 00:12:59,000 --> 00:13:02,580 kuwa na maana kwamba wewe ni ukoo na wao. 271 00:13:02,580 --> 00:13:05,770 >> Ambapo C anatumia waendeshaji hao, Chatu anatumia kidogo zaidi Kiingereza 272 00:13:05,770 --> 00:13:06,390 someka ndio. 273 00:13:06,390 --> 00:13:09,348 Hivyo badala ya mbili, ampersands, wewe halisi aina ya neno "na", "au," 274 00:13:09,348 --> 00:13:10,740 au "si." 275 00:13:10,740 --> 00:13:13,420 Kama katika if-- yako katika yako kauli masharti, 276 00:13:13,420 --> 00:13:17,670 tuliona mapema kwamba syntax hii katika C sambamba na syntax hii katika Python. 277 00:13:17,670 --> 00:13:21,010 Na si kuna mengi tofauti hapo, ila kwa kidogo 278 00:13:21,010 --> 00:13:24,780 ya uandishi kuzunguka pande zote. 279 00:13:24,780 --> 00:13:28,890 Tena, ambapo C ingekuwa mwingine kama, chatu anatumia elif, 280 00:13:28,890 --> 00:13:33,960 lakini hizi ni zaidi kiwango cha uso mabadiliko. 281 00:13:33,960 --> 00:13:38,450 >> Iteration kama hii ni mara nyingi Imeandikwa katika idiom hii katika Python. 282 00:13:38,450 --> 00:13:42,350 Unaweza kutengeneza aina hii ya Jambo kwa kitanzi wakati juu ya nje 283 00:13:42,350 --> 00:13:46,387 kama alitaka, lakini wewe hakika si lazima. 284 00:13:46,387 --> 00:13:48,970 Na tena, kama alitaka magazeti nje vipengele katika safu ya 285 00:13:48,970 --> 00:13:50,560 unaweza kufanya hivyo kwa njia hii. 286 00:13:50,560 --> 00:13:52,927 Moja ya mambo ya kujifurahisha kuhusu chatu ingawa, 287 00:13:52,927 --> 00:13:54,760 ni kwamba huna haja kutumia dhana hii, 288 00:13:54,760 --> 00:13:57,290 na unaweza kutumia kidogo zaidi ya kifahari moja. 289 00:13:57,290 --> 00:13:59,370 Unaweza kusema kwa ary katika. 290 00:13:59,370 --> 00:14:02,980 >> Hivyo badala ya kwenda hapa na bomba zaidi fahirisi, 291 00:14:02,980 --> 00:14:05,630 na kisha kuunganisha nje mambo ya mtu binafsi, 292 00:14:05,630 --> 00:14:08,644 kumweleza kwa kweli tu kukimbia juu ya mambo wenyewe. 293 00:14:08,644 --> 00:14:11,060 Na kisha chochote ni kufanya ndani ya wanaweza kufanya kazi moja kwa moja 294 00:14:11,060 --> 00:14:13,260 juu ya mambo, ambayo ni pretty furaha. 295 00:14:13,260 --> 00:14:16,710 Na tutaweza see-- tutaweza kutumia kwamba idiom tena na tena 296 00:14:16,710 --> 00:14:18,050 kama sisi kutembea kwa njia ya kificho. 297 00:14:18,050 --> 00:14:20,091 >> Hii ni, tena, mfano wa kitu ambacho mimi itabidi 298 00:14:20,091 --> 00:14:23,300 piga chatu uchawi, ingawa kuna sababu za kiufundi sana kwa nini ni kazi. 299 00:14:23,300 --> 00:14:26,340 Na kuna mambo ya kiufundi kwamba haja ya kuwa kweli kuhusu safu ili 300 00:14:26,340 --> 00:14:28,340 kwa hii kazi nyuma ya pazia. 301 00:14:28,340 --> 00:14:31,390 Suala hapa ni kwamba aina ya ambayo wewe d kutarajia hii kazi 302 00:14:31,390 --> 00:14:36,610 wamekuwa na hii kutekelezwa kwa wewe katika kujengwa katika lugha. 303 00:14:36,610 --> 00:14:40,030 >> Kitu kingine kwamba itakuwa nzuri kama hii kazi katika kila lugha, 304 00:14:40,030 --> 00:14:45,460 lakini kuna baadhi ya sababu kwa nini hawawezi, magazeti kamba huu mara idadi hii. 305 00:14:45,460 --> 00:14:48,860 Zamu nje katika Python, hii gani hasa nini Ningependa, ambayo ni tu kujifurahisha, 306 00:14:48,860 --> 00:14:52,840 na maana yake ni kwamba tunaweza kweli kupunguza mpango huu, tena mario.c. 307 00:14:52,840 --> 00:14:57,150 Badala ya iterating mengi, tunaweza tu kusema, nataka baadhi idadi ya nafasi, 308 00:14:57,150 --> 00:15:01,120 Nataka idadi ya hashes, na baadhi hashes mwishoni. 309 00:15:01,120 --> 00:15:02,640 Na tena, sisi kutumia muundo huu. 310 00:15:02,640 --> 00:15:05,340 >> Hapa, sisi ni kupita katika kutofautiana kwa njia hii. 311 00:15:05,340 --> 00:15:08,050 Tena, hatuna haja ya kusema ni aina gani ya kutofautiana ni, 312 00:15:08,050 --> 00:15:11,322 na wakati tu tutaweza kupata makosa ni wakati kukimbia. 313 00:15:11,322 --> 00:15:13,030 Wakati mtu anajaribu kupita kitu katika, 314 00:15:13,030 --> 00:15:14,860 kutakuwa na kuja katika kazi nzuri tu. 315 00:15:14,860 --> 00:15:18,240 Kama sisi kabari hapa kwa sababu hii si Jambo kwamba unaweza kujenga safu juu, 316 00:15:18,240 --> 00:15:22,100 Mimi itabidi kupata Runtime kosa pale, na mimi itabidi Debug kwa njia hiyo. 317 00:15:22,100 --> 00:15:25,050 Lakini wakati huo huo, sina kuwa makini sana kuhusu nini 318 00:15:25,050 --> 00:15:32,800 anapata kupita katika, hivyo muda mrefu kama katika halisi utekelezaji yote kazi cleanly sana. 319 00:15:32,800 --> 00:15:35,080 >> Mimi naweza hata kufanya hii kidogo safi 320 00:15:35,080 --> 00:15:41,770 kutumia hasa kujengwa katika kazi juu ya masharti, ambayo ni Right Justify. 321 00:15:41,770 --> 00:15:45,250 Hii ni kazi muhimu amelala karibu maktaba. 322 00:15:45,250 --> 00:15:47,660 Ni katika nyaraka kama wewe kwenda na kuangalia kwa ajili yake. 323 00:15:47,660 --> 00:15:51,650 Na nasema, vizuri mimi nina kwenda na kamba hii, baadhi ya idadi ya hashes, 324 00:15:51,650 --> 00:15:56,390 na Ningependa haki kuhalalisha it-- pedi ni nje na nafasi ya kuwa urefu huu. 325 00:15:56,390 --> 00:16:00,584 >> Tena, hii ni katika nyaraka, ambayo huleta us-- 326 00:16:00,584 --> 00:16:03,500 Mimi itabidi kweli click kupitia these-- ambayo inatuleta utawala wetu wa pili 327 00:16:03,500 --> 00:16:06,990 kwa Python-- kiwango maktaba mbinu kazi ni rafiki yako. 328 00:16:06,990 --> 00:16:09,880 Na ni mara nyingi wakati thamani yako kwenda kuangalia kwa Nashangaa 329 00:16:09,880 --> 00:16:12,310 kama kuna jambo kwamba tu hana huu. 330 00:16:12,310 --> 00:16:13,830 Kuna pengine. 331 00:16:13,830 --> 00:16:15,990 Kama Ningependa kwa pedi nje kamba, kama wewe d 332 00:16:15,990 --> 00:16:17,470 kama kuchukua nyuma nusu ya kamba, kama wewe d 333 00:16:17,470 --> 00:16:20,370 kama kutafuta njia kamba, ikiwa Ningependa smash michache ya mambo 334 00:16:20,370 --> 00:16:22,420 pamoja na kamba kwa koma baina yao, 335 00:16:22,420 --> 00:16:24,640 kuna kiwango maktaba kazi kwa kufanya hivyo. 336 00:16:24,640 --> 00:16:27,190 >> Na inafanya maisha yako rahisi kama wewe kuzitumia 337 00:16:27,190 --> 00:16:29,240 badala ya rolling nje kila kitu juu yako mwenyewe 338 00:16:29,240 --> 00:16:31,650 katika mistari mitano ya kificho hapa, mistari mitano ya kificho hapa. 339 00:16:31,650 --> 00:16:34,430 Kwamba kweli kuanza saa kuongeza hadi muda muafaka. 340 00:16:34,430 --> 00:16:37,430 >> Moja ya mambo ya kuvutia kuhusu jinsi hii anapata kuitwa. 341 00:16:37,430 --> 00:16:39,980 Utagundua kwamba kuna nukta kitu ni. 342 00:16:39,980 --> 00:16:43,490 Mimi na baadhi ya kitu upande wa kushoto, na kisha mimi kuitwa nukta kazi. 343 00:16:43,490 --> 00:16:49,780 Hii ni moja ya dhana kwamba chatu anatumia kwa attaching mbinu za vitu. 344 00:16:49,780 --> 00:16:54,410 Tutaweza majadiliano juu ya jambo hili ni kwa ufupi sana mwishoni, 345 00:16:54,410 --> 00:16:58,510 lakini tunajua kwamba tunaweza wote kazi juu ya mambo kwa kuchukua kwamba kitu akisema nukta 346 00:16:58,510 --> 00:17:01,690 chochote, au kwa kupiga kazi ambayo inachukua 347 00:17:01,690 --> 00:17:04,339 kwamba kitu na baadhi hoja nyingine. 348 00:17:04,339 --> 00:17:07,450 >> Basi hizi ni kwamba njia zote mbili kufanya mambo katika Python. 349 00:17:07,450 --> 00:17:09,780 Na kama fulani utendaji huo unatekelezwa 350 00:17:09,780 --> 00:17:14,230 kwa mtindo huu au huu mtindo ni kitu ambacho 351 00:17:14,230 --> 00:17:19,990 lazima atafute mpaka kupata hutegemea ambayo moja ni uwezekano wa kuanguka katika. 352 00:17:19,990 --> 00:17:22,660 Kuna zaidi au chini ya kushikamana falsafa nyuma chatu 353 00:17:22,660 --> 00:17:24,930 kwamba kunyonya zaidi kwa kuandika mengi ndani yake. 354 00:17:24,930 --> 00:17:28,190 Wakati fulani, ambayo mmoja wa haya kitu utatekelezwa kama 355 00:17:28,190 --> 00:17:29,470 inakuwa asili. 356 00:17:29,470 --> 00:17:32,420 Kwa sasa, ni kitu wewe kujifunza kama wewe kufikiri 357 00:17:32,420 --> 00:17:34,140 kila kitu binafsi. 358 00:17:34,140 --> 00:17:36,420 >> Hivyo kiwango cha maktaba kazi ni rafiki yako, 359 00:17:36,420 --> 00:17:41,320 na wao basi wewe kuandika mambo ambayo kuchukua nafasi hii kiasi kweli muda mfupi, 360 00:17:41,320 --> 00:17:42,040 kweli elegantly. 361 00:17:42,040 --> 00:17:45,670 Na hii ni kweli pengine zaidi legible, ningesema, kuliko mpango C 362 00:17:45,670 --> 00:17:46,780 kule. 363 00:17:46,780 --> 00:17:49,730 Bila kutaja ukweli kwamba ni hivyo short unaweza fit tembo nzima 364 00:17:49,730 --> 00:17:52,250 katika nafasi hiyo tumekuwa kuokolewa. 365 00:17:52,250 --> 00:17:56,270 >> Kitu kingine, hii ni utekelezaji ya Mario hiyo ni nukta C, ambayo nadhani 366 00:17:56,270 --> 00:17:57,890 ni fupi unaweza kupata hiyo. 367 00:17:57,890 --> 00:18:00,757 Haina kupata int, lakini ni ngumu codes thamani ya 10 368 00:18:00,757 --> 00:18:02,090 njia ile ile kwamba hii mtu gani. 369 00:18:02,090 --> 00:18:06,080 Zinageuka kuwa hii moja Clocks katika saa Wahusika 84, ambapo chatu ni 64. 370 00:18:06,080 --> 00:18:11,490 Na hii ni kubwa zaidi someka kuliko huu takataka hapa. 371 00:18:11,490 --> 00:18:14,610 Hivyo chatu ni ufanisi zaidi katika nafasi. 372 00:18:14,610 --> 00:18:17,260 Ni kidogo kidogo ufanisi katika muda, lakini si kwa kiasi. 373 00:18:17,260 --> 00:18:18,890 >> Orodha ni jambo muhimu katika Python. 374 00:18:18,890 --> 00:18:21,540 375 00:18:21,540 --> 00:18:24,587 Hatujaona yao, lakini kazi kiasi kama arrays kufanya katika C. 376 00:18:24,587 --> 00:18:27,170 Hivyo hapa, unaweza kutangaza yao, unaweza kupita yao katika jambo. 377 00:18:27,170 --> 00:18:29,810 Sasa viwanja ana safu ya mambo haya. 378 00:18:29,810 --> 00:18:33,480 Tena, sisi si alitangaza kama aina, lakini kama sisi milele kujaribu kuitumia, 379 00:18:33,480 --> 00:18:36,260 chochote ambacho wewe d kutarajia kwa kazi ya safu ya integers 380 00:18:36,260 --> 00:18:40,130 ni kwenda kufanya kazi kwenye safu ya integers. 381 00:18:40,130 --> 00:18:42,030 >> Hii Ni jambo ambalo wewe kabisa hawezi 382 00:18:42,030 --> 00:18:47,390 kufanya katika C, kwa sababu kumbukumbu ni hivyo mikono juu, 383 00:18:47,390 --> 00:18:48,950 lakini ni rahisi sana kufanya katika Python. 384 00:18:48,950 --> 00:18:55,310 Kama nataka safu yangu kuwa kubwa, siwezi append kipengele nalo na ni faini. 385 00:18:55,310 --> 00:18:57,150 >> Nini kinaendelea nyuma ya pazia? 386 00:18:57,150 --> 00:18:59,150 Mkalimani kwenda nje na kupata baadhi ya kumbukumbu, 387 00:18:59,150 --> 00:19:00,860 na labda kutakuwa na kupata kidogo ya kumbukumbu ya ziada, 388 00:19:00,860 --> 00:19:03,090 hivyo mimi si hivyo sina kwa realloc kila wakati. 389 00:19:03,090 --> 00:19:04,897 Lakini ni kiasi gani na zaidi kumbukumbu gani haja? 390 00:19:04,897 --> 00:19:06,730 Hii si maamuzi kwamba una kufanya, 391 00:19:06,730 --> 00:19:10,540 hizi ni maamuzi ambayo mkalimani ni kwenda kufanya. 392 00:19:10,540 --> 00:19:12,270 >> Hapa tunaona mbalimbali Unaweza kuchukua hoja mbili, 393 00:19:12,270 --> 00:19:16,430 lakini bado kwenda kuwa umoja ya juu hivyo sisi kuongeza 1 huko. 394 00:19:16,430 --> 00:19:21,970 Hii ni namna ya neno, ambayo ni hata zaidi njia wajanja kuandika mambo kama haya. 395 00:19:21,970 --> 00:19:25,980 Ni wito orodha ufahamu, na hapa ni nini sisi ni kusema 396 00:19:25,980 --> 00:19:32,560 ni Ningependa kuweka katika i mraba kwa kila thamani ya i katika mbalimbali huu. 397 00:19:32,560 --> 00:19:35,770 Jambo hili juu ya haki inaweza kuwa mwingine safu, na jambo hili upande wa kushoto 398 00:19:35,770 --> 00:19:40,740 kuwa kazi yoyote ile ambayo ingeweza kuchukua katika i kama kutofautiana 399 00:19:40,740 --> 00:19:42,250 na kunipa nje baadhi matokeo. 400 00:19:42,250 --> 00:19:43,480 >> Nini mimi kwenda kufanya ni, Mimi nina kwenda kujenga 401 00:19:43,480 --> 00:19:46,200 safu hiyo ni mambo yote haya kwa kila thamani katika mbalimbali huu. 402 00:19:46,200 --> 00:19:48,960 403 00:19:48,960 --> 00:19:55,670 Na hii ni super kifahari, super mfupi, na ni wazi kabisa nini maana yake. 404 00:19:55,670 --> 00:19:59,190 Hii ni moja ya things-- hii ni mara ya pili, 405 00:19:59,190 --> 00:20:03,860 moja of-- nembo sana ya sababu ya kuwa watu kama chatu. 406 00:20:03,860 --> 00:20:05,900 Kama wewe kama programu kama hii, basi chatu 407 00:20:05,900 --> 00:20:07,830 ni lugha unaweza kama kujifunza. 408 00:20:07,830 --> 00:20:10,950 >> Na tena, kuna kiufundi sababu kwa nini hii kazi. 409 00:20:10,950 --> 00:20:14,730 Lakini mbali kama sisi ni wasiwasi, sisi zaidi au chini hawajali. 410 00:20:14,730 --> 00:20:18,500 >> Hivyo kama unataka magazeti nje orodha, baadhi ya Nahau huo ni muhimu. 411 00:20:18,500 --> 00:20:20,940 Kwa i katika mbalimbali huu, tunaweza ripoti kwa mambo yote 412 00:20:20,940 --> 00:20:23,140 na kisha magazeti wote nje. 413 00:20:23,140 --> 00:20:24,650 Na wewe utakuwa kuona Len hapa. 414 00:20:24,650 --> 00:20:27,150 Kama wameweza milele alitaka kupata urefu wa safu, hiyo ni 415 00:20:27,150 --> 00:20:31,150 rahisi sana katika Python, ni vigumu sana katika C. 416 00:20:31,150 --> 00:20:33,720 Hii itakuwa magazeti nje hasa nini d kutarajia kwa. 417 00:20:33,720 --> 00:20:36,986 Tunaweza pia, kama tumeona kabla, iterate juu ya vipengele katika safu 418 00:20:36,986 --> 00:20:39,860 moja kwa moja, na kisha tu majadiliano juu ya nao, kuliko kuwa na ripoti 419 00:20:39,860 --> 00:20:43,190 nyuma katika safu ya kila wakati. 420 00:20:43,190 --> 00:20:45,990 >> Na hili ni jambo kwamba unaweza kufanya. 421 00:20:45,990 --> 00:20:49,984 Hivyo katika C, kama wewe kuuliza kwa kitu kama hii, magazeti kusema, 422 00:20:49,984 --> 00:20:51,150 hiyo ni safu ya integers. 423 00:20:51,150 --> 00:20:53,456 Hiyo ni dhahiri si kamba, siwezi magazeti hayo. 424 00:20:53,456 --> 00:20:54,830 Chatu zaidi au chini haina huduma. 425 00:20:54,830 --> 00:20:57,496 Ni kama, kuna njia ya kuwa mimi inaweza kugeuka hii katika kwa kamba? 426 00:20:57,496 --> 00:20:58,500 Naam, mimi itabidi kufanya hivyo. 427 00:20:58,500 --> 00:21:01,600 Na hivyo mimi itabidi tu magazeti kwamba nje. 428 00:21:01,600 --> 00:21:03,640 Hii ina maana kwamba unaweza kufanya mambo haya like-- 429 00:21:03,640 --> 00:21:06,530 ni zaidi ya sehemu ngumu ya mchezo wa kumi na tano, imeandikwa 430 00:21:06,530 --> 00:21:08,930 sana kwa ufupi katika Python. 431 00:21:08,930 --> 00:21:11,320 >> Utaona kwamba kuna kidogo of-- hapa 432 00:21:11,320 --> 00:21:14,441 Nimekuwa kutupwa integer kwa kamba, na mimi kuwa kufanya hivyo manually. 433 00:21:14,441 --> 00:21:16,190 Na mimi nina kwenda kuongeza kwa kamba nyingine, 434 00:21:16,190 --> 00:21:17,590 au vinginevyo chatu anapata kuchanganyikiwa. 435 00:21:17,590 --> 00:21:19,840 Lakini kama wakati uko kuongeza kamba kwa integer, 436 00:21:19,840 --> 00:21:22,630 am nadhani ya kupata integer nyuma au kamba nyuma? 437 00:21:22,630 --> 00:21:24,480 Lakini tena, kama wewe tu piga str juu ya jambo, 438 00:21:24,480 --> 00:21:27,240 na ni inaweza uwezekano wowote katika dunia kuwa waongofu katika kamba, 439 00:21:27,240 --> 00:21:30,390 pengine itakuwa waongofu katika kamba. 440 00:21:30,390 --> 00:21:33,120 >> Hapa, tunaona matumizi ya Furushi orodha ya ufahamu 441 00:21:33,120 --> 00:21:38,690 upande wa kushoto, baadhi Indexing, ambayo ni hasa kama wewe d kuwa kutumika yake, 442 00:21:38,690 --> 00:21:40,060 na baadhi uchapishaji nje ya mambo. 443 00:21:40,060 --> 00:21:42,560 Baadhi tena, tumekuwa inavyoelezwa kazi na tutaweza kuwaita chini 444 00:21:42,560 --> 00:21:45,820 katika kuu wakati sisi kweli kupata faili. 445 00:21:45,820 --> 00:21:52,004 kurudi kazi hasa kama wewe d kutarajia kutoka kufanya kazi na C. Kupata, 446 00:21:52,004 --> 00:21:54,420 tunaweza kuanzisha mambo kama Haya hapa ni orodha ya ufahamu 447 00:21:54,420 --> 00:21:59,245 kuna zoezi kwa kutofautiana, na tunaweza kweli kufanya hivyo hata rahisi. 448 00:21:59,245 --> 00:22:01,870 Hatuna haja ya kuandika utafutaji, kwa sababu kujengwa katika lugha 449 00:22:01,870 --> 00:22:04,230 ni kama jambo hili ni katika safu hii. 450 00:22:04,230 --> 00:22:05,680 Kurudi kweli, pengine kurudi uongo. 451 00:22:05,680 --> 00:22:08,830 Hivyo hiyo ni ukamilifu wa kupata. 452 00:22:08,830 --> 00:22:12,230 >> Ukamilifu wa aina inahusisha wito aina, 453 00:22:12,230 --> 00:22:15,462 ambayo is-- kuna utekelezaji ya hii kujengwa katika maktaba fulani C. 454 00:22:15,462 --> 00:22:17,170 Kama Ningependa huu aina ya nyuma, wewe 455 00:22:17,170 --> 00:22:20,450 Unaweza kupuuza hii hiari Hoja kwa kinyume na kweli. 456 00:22:20,450 --> 00:22:23,350 457 00:22:23,350 --> 00:22:27,860 Na kama Ningependa kutatua juu ya masharti, hiyo ni kujengwa katika kama vile. 458 00:22:27,860 --> 00:22:31,950 >> Hivyo hii si kusema hivi ni mambo ambayo unahitaji kufanya kila siku, 459 00:22:31,950 --> 00:22:34,280 lakini wazo ni kwamba hii ni falsafa ya chatu, 460 00:22:34,280 --> 00:22:37,530 kwamba mambo haya yote ambayo wewe d aina ya kutaka kufanya ni kujengwa katika. 461 00:22:37,530 --> 00:22:42,410 Na kazi zaidi ya kiwango, hivyo aina, urefu, chochote, 462 00:22:42,410 --> 00:22:44,380 kusaidia pembejeo zaidi kifikra busara. 463 00:22:44,380 --> 00:22:49,020 Wewe wito Len juu ya safu hiyo njia wito Len juu ya kamba. 464 00:22:49,020 --> 00:22:55,785 Wewe multiply-- wewe kutatua masharti njia hiyo hiyo aina arrays. 465 00:22:55,785 --> 00:22:58,930 466 00:22:58,930 --> 00:23:00,740 >> Wengi kazi ya kiwango kwamba watu kujenga, 467 00:23:00,740 --> 00:23:03,000 na zaidi ya tatu maktaba kwamba watu 468 00:23:03,000 --> 00:23:06,980 kujenga, kwa sababu wao ni emulating mpango wa maktaba standard, 469 00:23:06,980 --> 00:23:10,190 anaweza kuitwa juu ya kila kitu ambayo uko kama, kwa nini haina hii tu kazi, 470 00:23:10,190 --> 00:23:12,800 katika C. Zaidi au chini, itakuwa kazi katika Python 471 00:23:12,800 --> 00:23:15,930 kwa sababu watu kazi nyuma ya takwimu nini jambo ni na kisha kazi 472 00:23:15,930 --> 00:23:17,510 ipasavyo juu yake. 473 00:23:17,510 --> 00:23:22,760 Hivyo tena, historia ya kiufundi, lakini hufanya maisha yetu rahisi kama programmers. 474 00:23:22,760 --> 00:23:26,820 >> Hivyo hapa ni faili I / O. faili I / O ina kura ya mambo madogo kwamba kufanya hivyo ni ngumu, 475 00:23:26,820 --> 00:23:29,890 na hivyo kuna rasilimali online, lakini kwa kifupi, 476 00:23:29,890 --> 00:23:33,010 wewe piga wazi kwenye faili la jina na aina fulani. 477 00:23:33,010 --> 00:23:37,640 Hivyo hiyo ni kusoma, kusoma na kuandika, kuandika au append. 478 00:23:37,640 --> 00:23:41,790 Kusoma idadi fulani ya wahusika nje na magazeti hayo, 479 00:23:41,790 --> 00:23:42,595 utasikia kupata Hello! 480 00:23:42,595 --> 00:23:43,970 I mean, kama faili hili alikuwa Hello! 481 00:23:43,970 --> 00:23:46,480 Katika barua hiyo, piga kusoma, na nini itabidi kupata nyuma 482 00:23:46,480 --> 00:23:49,520 ni kamba ambayo ina kila ya mapumziko ya safu, 483 00:23:49,520 --> 00:23:50,860 au yote ya mapumziko ya faili. 484 00:23:50,860 --> 00:23:53,805 485 00:23:53,805 --> 00:23:56,055 Kama wito kusoma tena, uko mwishoni mwa faili, 486 00:23:56,055 --> 00:23:58,138 na hivyo huwezi kupata chochote na hivyo itabidi karibu. 487 00:23:58,138 --> 00:24:02,510 Tena, hii ni .close badala ya faili karibu, kama itakuwa katika C. 488 00:24:02,510 --> 00:24:07,190 Hii ni zaidi au chini kwa sababu f ni Jambo, na Ningependa kwa f kwa karibu. 489 00:24:07,190 --> 00:24:12,092 Lakini faili msingi I / O ni si hasa ngumu. 490 00:24:12,092 --> 00:24:15,300 Tena, kama Ningependa kufungua faili, ikiwa Ningependa kusoma mstari fulani, 491 00:24:15,300 --> 00:24:17,870 unaweza kupata nje ya fulani line-- kuna kujengwa-ins kwa ajili hiyo. 492 00:24:17,870 --> 00:24:19,995 Kama Ningependa kuandika Jambo, unaweza kuandika hii. 493 00:24:19,995 --> 00:24:23,412 Kama Ningependa kuandika binafsi kuumwa, unaweza kuandika hizo. 494 00:24:23,412 --> 00:24:25,620 Na kama Ningependa iterate juu ya mistari ya faili 495 00:24:25,620 --> 00:24:29,557 mmoja mmoja, kama tulivyofanya katika kipande kutoka Wiki chache zilizopita, unaweza kufanya hivyo kwa. 496 00:24:29,557 --> 00:24:32,140 Tena, vitu zaidi kwamba wewe d kama kuwa na uwezo wa iterate juu ya 497 00:24:32,140 --> 00:24:33,780 msaada iterating juu yao. 498 00:24:33,780 --> 00:24:37,430 Katika chatu, faili ni labda jambo ambalo Ningependa iterate juu ya mstari kwa mstari. 499 00:24:37,430 --> 00:24:39,138 Kama ilivyokuwa kamusi ya maneno na mimi nilikuwa 500 00:24:39,138 --> 00:24:42,181 kujaribu kupata wale mtu binafsi Maneno nje, basi, ndani ya kitanzi hii, 501 00:24:42,181 --> 00:24:44,180 mstari ni kwenda kuwa kila neno kwa upande na hii 502 00:24:44,180 --> 00:24:47,880 kinaenda wauawe kwa kila mstari katika faili mpaka mwisho wa faili. 503 00:24:47,880 --> 00:24:52,280 Na tena, kama mimi kuchapishwa kila mstari, mistari kuja na mistari mpya, 504 00:24:52,280 --> 00:24:54,740 hivyo mimi nina kuweka mwisho nyuma kwa jambo kama hili. 505 00:24:54,740 --> 00:24:56,580 Kisha Ningependa kupata yaliyomo ya faili yangu. 506 00:24:56,580 --> 00:25:03,610 507 00:25:03,610 --> 00:25:07,480 >> Jambo la pili ambayo inafanya kazi katika baadhi ya njia kama orodha, na katika baadhi ya njia 508 00:25:07,480 --> 00:25:11,870 kama kitu kikubwa nguvu zaidi, 509 00:25:11,870 --> 00:25:16,170 ni Mkwawa, ambayo ni kweli baridi kutumia lakini kimsingi hash 510 00:25:16,170 --> 00:25:17,670 meza katika kujificha. 511 00:25:17,670 --> 00:25:23,330 Wewe kujenga moja kwa kutumia hasa wahusika wawili, ambao ni wa kushangaza 512 00:25:23,330 --> 00:25:25,959 kama wewe walijaribu kutekeleza hash meza kwa tatizo seti yako, 513 00:25:25,959 --> 00:25:27,250 unajua maumivu kiasi kwamba wanaweza kuwa. 514 00:25:27,250 --> 00:25:29,390 Lakini watu wamefanya , na kufanya hivyo vizuri, 515 00:25:29,390 --> 00:25:32,260 kwamba huna kwa wasiwasi kuhusu hilo tena. 516 00:25:32,260 --> 00:25:35,180 >> Basi unaweza kuingiza mambo ya mtu binafsi. 517 00:25:35,180 --> 00:25:38,110 Hash tables-- au Mkwawa si hasa 518 00:25:38,110 --> 00:25:40,240 huduma ya kile wewe ni hifadhi ndani yao. 519 00:25:40,240 --> 00:25:44,210 Hivyo kama baadhi viingilio ni idadi, na baadhi entries ni orodha, 520 00:25:44,210 --> 00:25:47,360 kama baadhi viingilio ni Mkwawa mengine, na baadhi entries ni masharti, 521 00:25:47,360 --> 00:25:49,930 Chatu hana huduma nyingi. 522 00:25:49,930 --> 00:25:53,460 >> Tena, kama wewe kwenda ndani yake wanatarajia kamba na nini kupata nyuma 523 00:25:53,460 --> 00:25:56,269 ni safu, hiyo ni tatizo lako. 524 00:25:56,269 --> 00:25:58,810 Na labda ni kosa la ye yote walidhani ilikuwa kuweka mambo 525 00:25:58,810 --> 00:26:00,476 katika kamusi, labda hiyo ilikuwa yenu. 526 00:26:00,476 --> 00:26:02,350 Kama hiyo ilikuwa mtu mwingine, pengine walikuwa 527 00:26:02,350 --> 00:26:04,520 vizuri tulipokuwa kuhusu nini kinachoendelea katika kamusi 528 00:26:04,520 --> 00:26:07,420 na hakuwa na kuondoka pitfalls yoyote kwa wewe kuanguka katika. 529 00:26:07,420 --> 00:26:10,890 >> Lakini kazi ya kiwango mapenzi kukupa nyuma mambo vizuri tabia. 530 00:26:10,890 --> 00:26:13,500 Hivyo wanasema anarudi hii kuunga kamusi ya masharti, 531 00:26:13,500 --> 00:26:15,860 kisha kila kitu wewe ni kwenda kutoka nje ya ni kamba. 532 00:26:15,860 --> 00:26:20,710 Kama wewe kufanya baadhi ya hii na safari ninyi mahakamani, vizuri, hiyo inaweza kuwa ni juu yenu. 533 00:26:20,710 --> 00:26:25,542 Chatu hakika anatoa kutosha kamba na hutegemea mwenyewe, kama Ningependa. 534 00:26:25,542 --> 00:26:28,250 Sasa tunaweza magazeti nje ya mtu binafsi mambo haya na anarudi hii 535 00:26:28,250 --> 00:26:29,935 nini hasa d kutarajia. 536 00:26:29,935 --> 00:26:32,810 Nini hasa d kutarajia, mimi nadhani, ni maneno kwamba mimi nina kutumia mengi, 537 00:26:32,810 --> 00:26:35,070 lakini hiyo ni zaidi au chini jinsi chatu kazi. 538 00:26:35,070 --> 00:26:39,880 Ukiuliza kwa jambo ambalo si hivyo, chatu kutupa nje makosa 539 00:26:39,880 --> 00:26:43,194 na itakuwa kuacha wewe nje ya chochote mpango ungekuwa katika. 540 00:26:43,194 --> 00:26:45,360 Ni itabidi kweli magazeti nje Maelezo zaidi ya hapo, 541 00:26:45,360 --> 00:26:49,110 kutakuwa na uhakika you-- ni itabidi kuongeza line, na hivyo. 542 00:26:49,110 --> 00:26:52,190 >> Na, tena, labda tunataka iterate juu Mkwawa 543 00:26:52,190 --> 00:26:54,410 na kupata mambo yote ndani yake. 544 00:26:54,410 --> 00:26:57,440 Hapa sisi ni iterating juu mambo mawili kwa wakati mmoja. 545 00:26:57,440 --> 00:27:03,040 Na hivyo tutaweza kufanya hivyo kwa ufunguo, thamani, lakini kisha magazeti nje yote haya. 546 00:27:03,040 --> 00:27:06,300 >> Na kama sisi alitaka cast-- kama sisi kweli mbio hivyo, 547 00:27:06,300 --> 00:27:10,840 tunataka kuwa baadhi ya matatizo kwa sababu on-- wakati sisi aliingia pamoja na Daudi, 548 00:27:10,840 --> 00:27:13,920 haikuweza add-- kama hatukuwa kuwatupia kamba ya kwanza, 549 00:27:13,920 --> 00:27:17,802 sisi hakuweza kuongeza kwamba safu ya masharti kwenye kamba. 550 00:27:17,802 --> 00:27:19,760 Lakini kama sisi kuwatupia kamba, sisi kupata kitu 551 00:27:19,760 --> 00:27:22,590 kama hii, ambayo ni labda nini tunatarajia kusoma. 552 00:27:22,590 --> 00:27:27,000 553 00:27:27,000 --> 00:27:30,500 >> Na hii ni speller. 554 00:27:30,500 --> 00:27:32,460 Sisi tu kusoma katika mambo. 555 00:27:32,460 --> 00:27:35,770 Ili tuweze kusoma katika maneno ya mtu binafsi kama mistari. 556 00:27:35,770 --> 00:27:38,240 Sisi Night mbali mwisho Jambo, hivyo matumbo bala 1 557 00:27:38,240 --> 00:27:41,651 chomps mbali jambo la mwisho kwamba we-- tabia mwisho wa kamba. 558 00:27:41,651 --> 00:27:42,150 Tutaweza kusema. 559 00:27:42,150 --> 00:27:44,730 OK, kila mmoja wa wale anapata kuingizwa katika kamusi hii, 560 00:27:44,730 --> 00:27:45,810 ramani ya thamani ya 1. 561 00:27:45,810 --> 00:27:48,006 Sisi si hasa huduma kuhusu kwamba mmoja, 562 00:27:48,006 --> 00:27:51,130 lakini ni tu pale kusema, oh vizuri, jambo hili mimi itabidi kuweka katika kamusi. 563 00:27:51,130 --> 00:27:53,182 Kwa sababu baadaye nini tuko kwenda kufanya ni tuko 564 00:27:53,182 --> 00:27:55,390 kwenda kusema, vizuri, ikiwa ni katika kamusi hata kidogo. 565 00:27:55,390 --> 00:27:57,650 >> Tena, kuangalia hii kwa taarifa ni juu ya uendeshaji 566 00:27:57,650 --> 00:28:00,940 kutumia tofauti kabisa algorithm kuliko mapenzi katika orodha, 567 00:28:00,940 --> 00:28:05,709 lakini sisi kuiita njia hiyo hiyo, ambayo ni baadhi ya kwamba chatu sukari mipako 568 00:28:05,709 --> 00:28:07,250 mambo ili wao uko rahisi kutumia. 569 00:28:07,250 --> 00:28:10,230 Na tena, tumeona mambo kama haya kabla. 570 00:28:10,230 --> 00:28:12,940 Hii ni kimsingi kupata, au ni hasa syntax sawa 571 00:28:12,940 --> 00:28:16,480 kama kupata, lakini ni kazi juu ya muundo tofauti kabisa. 572 00:28:16,480 --> 00:28:20,170 Na sisi si hasa huduma. 573 00:28:20,170 --> 00:28:25,540 Basi hizo mambo ambayo walitakiwa kutekeleza kwa speller. 574 00:28:25,540 --> 00:28:29,278 Katika kiwango hiki, sisi ni kwenda kupata zaidi au chini wote wa psets kufanyika. 575 00:28:29,278 --> 00:28:31,474 >> Watazamaji: Hivyo kwamba kimsingi tu anakuja nyuma 576 00:28:31,474 --> 00:28:34,852 kama kimakosa yameandikwa kama hana mechi kitu katika kamusi? 577 00:28:34,852 --> 00:28:36,060 ROSS RHEINGANS-YOO: Ndiyo, ndiyo. 578 00:28:36,060 --> 00:28:38,964 579 00:28:38,964 --> 00:28:40,880 Na hivyo, hii ni kukabiliana na hali ya tatizo kuweka 580 00:28:40,880 --> 00:28:43,150 ambayo anauliza kufanya hasa kwamba. 581 00:28:43,150 --> 00:28:46,357 >> Watazamaji: Kwa nini ni mstari bala 1 huko? 582 00:28:46,357 --> 00:28:48,190 ROSS RHEINGANS-YOO: Kwa hiyo wakati wewe ni iterating 583 00:28:48,190 --> 00:28:50,300 zaidi ya faili kuomba na mistari, mistari 584 00:28:50,300 --> 00:28:53,900 kuja na mpya mstari tabia mwishoni wa hili bala 1 585 00:28:53,900 --> 00:28:55,260 ni kwa duka wale mbali tu. 586 00:28:55,260 --> 00:28:59,549 Na hii ni hasa rahisi njia ya Indexing katika mambo. 587 00:28:59,549 --> 00:29:01,590 Hivyo kama una kamba, na Ningependa, vizuri mimi nina 588 00:29:01,590 --> 00:29:05,340 kwenda kuanza saa tatu tabia na mimi nina kwenda hadi mwisho. 589 00:29:05,340 --> 00:29:07,140 3 matumbo kufanya hivyo kwa ajili yenu. 590 00:29:07,140 --> 00:29:10,570 Kama wewe ni kama, nataka kuanza saa mwanzo na kwenda mwisho bala 1 591 00:29:10,570 --> 00:29:12,400 tabia, matumbo bala 1. 592 00:29:12,400 --> 00:29:14,940 Na kama alitaka kwenda kutoka tatu minus kwanza, 593 00:29:14,940 --> 00:29:16,570 basi d kusema 3 bala 1. 594 00:29:16,570 --> 00:29:19,464 595 00:29:19,464 --> 00:29:22,400 >> Zaidi ya hayo, kama unataka ripoti ndani ya vitu kuhesabu kutoka nyuma, 596 00:29:22,400 --> 00:29:24,470 wewe tu ripoti katika na namba bala. 597 00:29:24,470 --> 00:29:26,980 Na kwa sababu, ambapo C ingekuwa kulipuka au labda 598 00:29:26,980 --> 00:29:31,090 kulisha wewe kumbukumbu wengine hawakuwa na upatikanaji wa, kusikia unaweza kusema bala 1 599 00:29:31,090 --> 00:29:34,104 ina maana mwisho lakini 1 tabia katika kamba. 600 00:29:34,104 --> 00:29:36,950 601 00:29:36,950 --> 00:29:43,590 >> Modules ni version-- ni milinganisho kwa maktaba katika C 602 00:29:43,590 --> 00:29:45,119 na ni muhimu kwa ajili ya mambo mengi. 603 00:29:45,119 --> 00:29:46,910 Mambo mengi wewe d kama kwa kufanya katika Python, 604 00:29:46,910 --> 00:29:50,040 badala rahisi matumizi mabaya ya vigezo, 605 00:29:50,040 --> 00:29:52,290 unataka kunasa katika maktaba kubwa na kubwa 606 00:29:52,290 --> 00:29:55,910 interfaces na zaidi uwezo kwa ajili ya mazungumzo 607 00:29:55,910 --> 00:29:57,195 na sehemu nyingine za dunia. 608 00:29:57,195 --> 00:29:58,910 sys ni mmoja wa wale pamoja na kundi la zana 609 00:29:58,910 --> 00:30:01,159 ambayo ni muhimu kwa ajili ya mazungumzo na mfumo wenyewe 610 00:30:01,159 --> 00:30:05,050 na kuagiza kama kuagiza sys. 611 00:30:05,050 --> 00:30:07,820 >> Kuna nyaraka zaidi kutoka kwamba, ambayo unaweza kwenda hapa, 612 00:30:07,820 --> 00:30:11,490 au unaweza kupata kwenye Google na googling chatu sys. 613 00:30:11,490 --> 00:30:12,640 Wewe aina katika kuingia. 614 00:30:12,640 --> 00:30:15,140 Kiungo kwanza ni kwenda kuwa nyaraka katika Python 2, 615 00:30:15,140 --> 00:30:19,260 kiungo cha pili ni kwenda kuwa nyaraka chatu 3. 616 00:30:19,260 --> 00:30:24,830 >> Na kama sisi aliandika nje faili kwamba inaonekana kama hii Kama hasa, tuko 617 00:30:24,830 --> 00:30:27,910 kuangalia kazi ya hoja mstari amri, 618 00:30:27,910 --> 00:30:30,040 kama sisi kujifunza kufanya sana mapema katika darasa hili. 619 00:30:30,040 --> 00:30:32,190 Hii si vigumu. Unaweza kupata nje argv, 620 00:30:32,190 --> 00:30:34,565 ambayo ni moja ya mambo hayo ambayo ni kutekelezwa na sys. 621 00:30:34,565 --> 00:30:37,210 Siyo kujengwa katika msingi mfuko, lakini tena, wewe 622 00:30:37,210 --> 00:30:40,080 Unaweza kupanua kwa kuagiza kwamba utendaji kutoka sys. 623 00:30:40,080 --> 00:30:41,090 Itabidi kuiita sys. 624 00:30:41,090 --> 00:30:42,611 chochote. 625 00:30:42,611 --> 00:30:43,360 Hapa kuna argv. 626 00:30:43,360 --> 00:30:45,193 Kuna kweli hakuna argc katika sys, kwa sababu wewe 627 00:30:45,193 --> 00:30:47,880 Unaweza kupata urahisi hivyo kwa kupiga len. 628 00:30:47,880 --> 00:30:55,390 Sisi basi kuchapishwa kwamba nje, basi sisi mbio juu ya wastaafu wetu echo-args.py. 629 00:30:55,390 --> 00:30:58,360 Sisi kupata nyuma safu, ambayo ni hoja hii kwanza. 630 00:30:58,360 --> 00:31:02,240 Tena, hii ni argv 0, ambayo ni jina la kitu kwamba got kuitwa. 631 00:31:02,240 --> 00:31:04,870 Kama sisi kuitwa ni pamoja na ziada hoja, tunatarajia kupata wale nyuma. 632 00:31:04,870 --> 00:31:07,687 633 00:31:07,687 --> 00:31:09,770 Hii ni njia mojawapo ya kupata hoja mstari amri. 634 00:31:09,770 --> 00:31:13,440 Kama unataka bendera ambapo kugeuka mambo fulani juu ya au override 635 00:31:13,440 --> 00:31:16,050 chaguo-msingi hasa argparse ni rafiki yako. 636 00:31:16,050 --> 00:31:21,550 Na tena unakuta online katika chatu argparse katika Google. 637 00:31:21,550 --> 00:31:24,300 >> Kuna michache ya shirika modules kwamba wewe mwenyewe kupata kutumia 638 00:31:24,300 --> 00:31:27,630 na tena, kama wewe kutumia muda wowote ya lugha hii kuagiza jsons 639 00:31:27,630 --> 00:31:33,300 kwa kusoma ndani na nje ya json mafaili, si kuwa ngumu. 640 00:31:33,300 --> 00:31:37,139 Wewe kufungua faili, wewe kuitwa json.load kwenye faili la kuwa na kupata nyuma kitu. 641 00:31:37,139 --> 00:31:37,930 Ni kwamba jambo gani? 642 00:31:37,930 --> 00:31:40,329 Ni json kitu. 643 00:31:40,329 --> 00:31:42,370 Ambapo kwamba json ina safu, chatu ana arrays. 644 00:31:42,370 --> 00:31:44,420 Ambapo kwamba json ina arrays associative, chatu ya 645 00:31:44,420 --> 00:31:48,810 Mkwawa, masharti, na idadi, na kadhalika. 646 00:31:48,810 --> 00:31:53,560 Unataka dampo kwamba nje, kufungua faili mpya, wewe piga dampo, 647 00:31:53,560 --> 00:31:57,590 na mizigo na madampo kwa kwenda ndani na nje ya masharti. 648 00:31:57,590 --> 00:32:02,120 >> Vile vile, kachumbari anapata kuitwa katika kimsingi interface huo. 649 00:32:02,120 --> 00:32:04,740 Ni kidogo muhimu zaidi ikiwa wewe ni utupaji chatu vitu. 650 00:32:04,740 --> 00:32:08,370 Hivyo kama wameweza milele alitaka kuokoa toleo la hali ya sasa 651 00:32:08,370 --> 00:32:11,930 ya kutofautiana kwa siku zijazo kukimbia ya mpango wako, 652 00:32:11,930 --> 00:32:14,740 kachumbari ni chatu ya maktaba kwa kufanya hivyo. 653 00:32:14,740 --> 00:32:19,140 >> Kama una aina yoyote ya kutofautiana ambazo zinaweza kuandikwa nje 654 00:32:19,140 --> 00:32:21,990 kwa maneno kama na wahusika na ka kama kamusi hii, 655 00:32:21,990 --> 00:32:24,230 tunaweza kuandika, sisi inaweza kuandika ni chini kama 656 00:32:24,230 --> 00:32:26,670 kama json kitu, ambayo ilikuwa halisi hizi wahusika. 657 00:32:26,670 --> 00:32:29,420 Na basi itakuwa rahisi sana kwa binadamu kufungua hiyo up-- kufungua 658 00:32:29,420 --> 00:32:30,889 na kuisoma. 659 00:32:30,889 --> 00:32:33,180 Kama hatukuwa hasa huduma kuhusu binadamu kuisoma, 660 00:32:33,180 --> 00:32:38,490 tunaweza kufunga hata kwa ufanisi zaidi katika aina ambazo zinaweza baadaye unpacked 661 00:32:38,490 --> 00:32:42,860 au ambazo zinaweza baadaye kuwa umechangiwa. 662 00:32:42,860 --> 00:32:46,740 Na hii anaokoa 80% ya nafasi kwamba vitu yako nguvu 663 00:32:46,740 --> 00:32:49,390 kuchukua kama wewe aliandika yao nje longhand. 664 00:32:49,390 --> 00:32:52,384 >> Wewe piga kachumbari sana sawa way-- dampo, mzigo, 665 00:32:52,384 --> 00:32:53,800 na kisha kupata vitu yako nyuma. 666 00:32:53,800 --> 00:32:56,880 Hivyo kama wewe ni kuandika sana mipango ya muda chatu kwamba 667 00:32:56,880 --> 00:32:59,952 wanataka kuokoa hali, na kisha kusoma kuwarejesha baadaye, mambo kama haya 668 00:32:59,952 --> 00:33:00,660 ni rafiki yako. 669 00:33:00,660 --> 00:33:02,640 Kwamba unaweza sana urahisi dampo yao kama json. 670 00:33:02,640 --> 00:33:04,550 Wengi chatu vitu Unaweza dampo nje json 671 00:33:04,550 --> 00:33:11,310 kama kuna matumaini yoyote kwamba kimuundo wangeweza kuwa kuwakilishwa kwa njia hiyo. 672 00:33:11,310 --> 00:33:14,410 >> Hizi ni ncha ya barafu juu ya modules ambayo ni muhimu. 673 00:33:14,410 --> 00:33:19,510 Hivyo sys, os, multiprocessing, ni aina ya workhorses msingi kwa mambo 674 00:33:19,510 --> 00:33:23,120 tunahitaji kushirikiana na mfumo wa faili os., 675 00:33:23,120 --> 00:33:28,764 kama os.isfile, os.isdirectory, os.makefile, haya ni rafiki yako. 676 00:33:28,764 --> 00:33:30,930 Kama unataka kiutendaji na hasa aina ya faili, 677 00:33:30,930 --> 00:33:32,190 json, kachumbari, csv. 678 00:33:32,190 --> 00:33:37,160 Kama unataka kiutendaji na mtandao kurasa, urllib kwa ajili ya kupata http 679 00:33:37,160 --> 00:33:41,370 kurasa. bs4-- BeautifulSoup-- ni parser ajabu kwa html. 680 00:33:41,370 --> 00:33:47,047 Wewe kuendesha kwenye html na wewe kupata hii Furushi safu kitu sasa, 681 00:33:47,047 --> 00:33:49,630 ambayo unaweza traverse zaidi Lookin, na kama kuangalia tu kwa 682 00:33:49,630 --> 00:33:52,380 ikiwa, ni, katika, ambayo ni ya ajabu. 683 00:33:52,380 --> 00:33:55,920 >> Kuna kundi la fedha kwa running-- 684 00:33:55,920 --> 00:33:57,960 kwa ajili ya kufanya hasa mambo mathy. 685 00:33:57,960 --> 00:34:01,790 Hivyo kama unataka kuzidisha, Geuza, kubadilisha matrices, 686 00:34:01,790 --> 00:34:05,690 numpy hutumiwa na watu wote duniani kote kwa ajili hiyo. 687 00:34:05,690 --> 00:34:09,620 scipy ni hata muhimu zaidi zana katika upande huo. 688 00:34:09,620 --> 00:34:13,980 sklearn-- kujifunza mashine, usindikaji wa asili ya lugha, 689 00:34:13,980 --> 00:34:17,880 super mambo muhimu, anapata kutekelezwa katika Python wakati wote. 690 00:34:17,880 --> 00:34:21,469 >> Na tena, inachukua kidogo tena kwa write-- pole, 691 00:34:21,469 --> 00:34:26,199 inachukua kidogo tena kukimbia, lakini sababu kwamba wahandisi halisi huwa 692 00:34:26,199 --> 00:34:29,900 matumizi chatu ni kwa sababu wewe huwa na kuwa imefungwa kwenye wewe kuandika kanuni, badala 693 00:34:29,900 --> 00:34:32,699 kuliko kompyuta yako mbio kificho. 694 00:34:32,699 --> 00:34:35,860 Hivyo kama wewe ni kwenda kuandika mpango, ambayo kura ya watu wengine 695 00:34:35,860 --> 00:34:37,699 ni kwenda kutumia milele, kama Linux, wewe 696 00:34:37,699 --> 00:34:41,900 Huenda kuandika ni katika C. Kama ungekuwa kwenda kuandika injini hesabu, 697 00:34:41,900 --> 00:34:46,124 unaweza kuandika katika Python kama wewe unahitajika mabadiliko hayo kila baada ya miezi michache. 698 00:34:46,124 --> 00:34:48,540 Baadhi ya watu bila kuandika katika C kwa sababu wao ni kama hiyo. 699 00:34:48,540 --> 00:34:51,100 700 00:34:51,100 --> 00:34:54,050 >> Hivyo tumeona kuagiza sys kama njia ya kupata mambo 701 00:34:54,050 --> 00:34:57,070 ya kupata moduli katika mpango wako. 702 00:34:57,070 --> 00:35:00,370 Unaweza pia kuagiza kama jina la utani, kama Ningependa. 703 00:35:00,370 --> 00:35:03,660 Tena multiprocessing ni maumivu kwa aina nje kila wakati, hivyo kuagiza kama Mbunge 704 00:35:03,660 --> 00:35:05,900 na kisha wakati wowote matumizi yake katika mpango, 705 00:35:05,900 --> 00:35:09,732 wewe itabidi kusema mp.process, au kitu gani wewe. 706 00:35:09,732 --> 00:35:12,670 Kama Ningependa kuagiza tu jambo moja, 707 00:35:12,670 --> 00:35:19,450 hivyo urllib ina kitu kinachoitwa ombi, hivyo unaweza tu kuagiza kwamba. 708 00:35:19,450 --> 00:35:22,610 Baadaye, huwezi waomba kama urllib.request, lakini tu kama ombi 709 00:35:22,610 --> 00:35:24,590 peke yake. 710 00:35:24,590 --> 00:35:30,110 >> Na unaweza kuagiza kila kitu kutoka moduli kama Ningependa. 711 00:35:30,110 --> 00:35:34,820 Hii ni mara kwa mara si nzuri idea-- hii kwa kawaida si wazo nzuri, kwa kweli. 712 00:35:34,820 --> 00:35:39,080 Kwa sababu wewe very-- kwa sababu kama kitu katika moduli ambayo ina jina kwamba 713 00:35:39,080 --> 00:35:41,640 alitaka kutumia mahali pengine katika mpango wako, huwezi. 714 00:35:41,640 --> 00:35:44,127 >> Na si mara zote wazi kwamba hiyo kesi. 715 00:35:44,127 --> 00:35:46,460 Ili kuhakikisha kuwa nini walikuwa kufanya alikuwa salama, 716 00:35:46,460 --> 00:35:47,920 unahitaji kufungua moduli na kuona yote 717 00:35:47,920 --> 00:35:50,295 majina kwamba kuishia katika there-- yote ya kazi, 718 00:35:50,295 --> 00:35:53,010 wote wa vigezo wanaoishi katika moduli kwamba, 719 00:35:53,010 --> 00:35:57,040 kwa sababu wewe ni kuleta yote ya yao katika namespace lako. 720 00:35:57,040 --> 00:35:58,680 >> Hivyo watu kufanya hivyo. 721 00:35:58,680 --> 00:36:01,322 Ni kwa ujumla ilipendekeza kwamba huna kufanya hivyo. 722 00:36:01,322 --> 00:36:03,280 Lakini watu kufanya yote haya wakati kwa sababu wao ni 723 00:36:03,280 --> 00:36:05,180 wavivu na hawataki aina nje Mbunge. 724 00:36:05,180 --> 00:36:06,310 kitu chochote, milele. 725 00:36:06,310 --> 00:36:09,560 726 00:36:09,560 --> 00:36:13,310 >> Majadiliano haya yote kuhusu modules kuniletea karibu na majadiliano short 727 00:36:13,310 --> 00:36:15,930 juu ya jinsi gani kuandaa programu katika Python. 728 00:36:15,930 --> 00:36:19,860 Hatua ya kwanza ni kuangalia kuona kama mtu mwingine tayari amefanya jambo, 729 00:36:19,860 --> 00:36:22,160 au amefanya 90% ya jambo. 730 00:36:22,160 --> 00:36:26,010 Nafasi ni wao pengine, na wewe anatakiwa kwenda kupata kitu zao na kukimbia huo. 731 00:36:26,010 --> 00:36:28,900 Au kuandika kanga pembezoni kuitumia kwa madhumuni yako. 732 00:36:28,900 --> 00:36:31,250 Ni tu baada ya kuwa ana alishindwa kwamba wewe d kisha 733 00:36:31,250 --> 00:36:35,529 kwenda juu na write-- kuanza kufikiria juu ya jinsi gani kuweka jambo hili kwa pamoja. 734 00:36:35,529 --> 00:36:37,320 Kuna kura ya mambo huko nje, na kwamba 735 00:36:37,320 --> 00:36:39,180 moja ya muhimu sana mambo kuhusu chatu. 736 00:36:39,180 --> 00:36:40,930 Kama lugha ni kifahari, lugha 737 00:36:40,930 --> 00:36:43,800 Ni rahisi kutumia, lakini pia kwa sababu hivyo ni kifahari na rahisi kutumia, 738 00:36:43,800 --> 00:36:47,420 watu wamekuwa wakitumia hayo kwa muda mrefu na kuna mengi ya mambo 739 00:36:47,420 --> 00:36:52,520 huko nje kwamba unaweza kuunganisha kwa ajili ya matumizi yako mwenyewe. 740 00:36:52,520 --> 00:36:58,457 >> Hivyo utawala wa mwisho wa chatu ni, mtu mwingine tayari pengine imeandikwa 741 00:36:58,457 --> 00:37:00,290 moduli kwa kuwa, mtu mwingine tayari 742 00:37:00,290 --> 00:37:02,980 pengine imeandikwa maktaba kwa ajili hiyo. 743 00:37:02,980 --> 00:37:06,579 Kabla ya kujaribu kufanya kitu, angalia ili kuona kama imekuwa ni kutekelezwa. 744 00:37:06,579 --> 00:37:07,370 Siyo kwamba bidii. 745 00:37:07,370 --> 00:37:11,960 Wote wa modules kwamba mimi kuweka kabla, na labda isipokuwa moja, 746 00:37:11,960 --> 00:37:15,220 kuja kabla ya imewekwa katika kila kiwango cha chatu ufungaji. 747 00:37:15,220 --> 00:37:17,769 Na hivyo kwa mwito wa kuagiza chochote, wewe 748 00:37:17,769 --> 00:37:19,852 na yote hayo utendaji fingertips. 749 00:37:19,852 --> 00:37:24,660 750 00:37:24,660 --> 00:37:28,920 >> Mwanzo wa kufuta hii majadiliano, kuna mambo machache 751 00:37:28,920 --> 00:37:32,770 kwamba nimepata kushoto kama masanduku nyeusi na aina ya glossed juu, 752 00:37:32,770 --> 00:37:37,217 na kuna nyeupe chache uongo kwamba nimekuwa aliiambia kuwa ni kwa ajili ya uaminifu, 753 00:37:37,217 --> 00:37:39,050 Mimi itabidi angalau hatua hapa, hata kama mimi si 754 00:37:39,050 --> 00:37:43,980 kwenda super kina katika wote na maelezo yao ya kiufundi. 755 00:37:43,980 --> 00:37:46,010 >> Mambo mengi kwamba nimepata aitwaye uchawi 756 00:37:46,010 --> 00:37:48,980 ni nini watu wengine kuita kitu Programu oriented. 757 00:37:48,980 --> 00:37:52,470 Hivyo kuna kura ya things-- hivyo vigezo ni mara nyingi sana si 758 00:37:52,470 --> 00:37:56,540 ka rahisi kukaa katika, kumbukumbu, lakini ni ngumu sana 759 00:37:56,540 --> 00:38:01,910 vitu mbalimbali vyenye ndani hali kuhusu kazi na kura 760 00:38:01,910 --> 00:38:05,570 vigezo ya siri, kura ya utendaji siri, ambayo 761 00:38:05,570 --> 00:38:09,480 inakuwezesha kurejea kwao katika masharti, ambayo inakuwezesha iterate juu yao. 762 00:38:09,480 --> 00:38:12,260 Na kama wewe ni writing-- na sababu ya kuwa wao 763 00:38:12,260 --> 00:38:15,710 wote wa utendaji hii tajiri ni kwa sababu people-- 764 00:38:15,710 --> 00:38:17,740 wasanifu wa language-- wamekwenda 765 00:38:17,740 --> 00:38:22,420 kupitia na kwa kila kiwango cha kitu, kuweka katika utendaji 766 00:38:22,420 --> 00:38:26,970 kusema hii ni jinsi hii ni jinsi hii ni kwenda kufanya kazi 767 00:38:26,970 --> 00:38:28,470 kama mtu anataka iterate juu yake. 768 00:38:28,470 --> 00:38:31,240 >> Hivyo kila kitu ambacho mtu anaweza uwezekano wanataka iterate juu, 769 00:38:31,240 --> 00:38:34,529 ina mantiki yaliyoandikwa katika manually juu ya jinsi uko 770 00:38:34,529 --> 00:38:36,070 zinatakiwa iterate juu ya kwamba kitu. 771 00:38:36,070 --> 00:38:40,274 Kila kitu kwamba unaweza uwezekano wanataka kutupwa kwenye kamba ina mantiki maandishi. 772 00:38:40,274 --> 00:38:43,440 Hii ni kazi ambayo wewe piga kama unataka dampo hii nje kwa kamba. 773 00:38:43,440 --> 00:38:45,273 Hii ni kwa nini unaweza piga len juu ya mambo, hii 774 00:38:45,273 --> 00:38:49,900 Hii ndiyo sababu unaweza kupiga kwa katika, hii ni nini unaweza kupiga ikiwa katika juu ya kila kitu 775 00:38:49,900 --> 00:38:53,490 kwamba wewe d wanataka, kwa sababu wale wote ni kufanya pamoja nao, 776 00:38:53,490 --> 00:38:55,380 kiufundi know-jinsi ya kufanya hivyo. 777 00:38:55,380 --> 00:38:58,170 778 00:38:58,170 --> 00:39:00,432 >> Hili ni jambo ambalo mimi nina super si kwenda katika. 779 00:39:00,432 --> 00:39:03,140 Lakini kwa kuwa jambo katika orodha ni subtly tofauti na C style kwa tanzi, 780 00:39:03,140 --> 00:39:06,160 na unaweza kusoma yote juu kwamba juu ya biashara kama wewe ni nia. 781 00:39:06,160 --> 00:39:08,930 Kuna upande wa giza kwa wote ya hii, kwamba nilivyoeleza, 782 00:39:08,930 --> 00:39:10,359 hivyo kuna mambo mawili. 783 00:39:10,359 --> 00:39:13,400 Kwanza ni kwamba kitu hicho oriented Programu anaongeza mengi ya uendeshaji 784 00:39:13,400 --> 00:39:16,080 kwa mambo random, hivyo kuishia kwa kutumia kumbukumbu mengi zaidi; 785 00:39:16,080 --> 00:39:18,640 wewe kuishia kutumia zaidi kidogo muda zaidi kuliko wewe ungekuwa vinginevyo. 786 00:39:18,640 --> 00:39:21,300 Other-- lakini zaidi insidious giza upande wa hii 787 00:39:21,300 --> 00:39:24,047 ni, kama mambo kitendo tu kama unataka yao 788 00:39:24,047 --> 00:39:27,130 bila wewe kuwa na kufikiri super ngumu kuhusu kama hii inapaswa kuwa int 789 00:39:27,130 --> 00:39:29,713 au kama kuna haja ya kuwa kuelea, inaweza kuwa kwamba zaidi ya hapa 790 00:39:29,713 --> 00:39:34,240 wewe kuzalisha int lakini hapa wewe kufikiri lakini wao itabidi always-- pole, 791 00:39:34,240 --> 00:39:36,555 inaweza kuwa kwamba hapa wewe kuzalisha kuelea, 792 00:39:36,555 --> 00:39:39,430 lakini wakati kupata sehemu ya pili ya mpango wako, wewe ni kufikiri, 793 00:39:39,430 --> 00:39:41,150 oh vizuri, lakini wao itabidi daima kupita kwangu int. 794 00:39:41,150 --> 00:39:43,608 Na kama hawana, inawezekana kwamba wedged mahali fulani, 795 00:39:43,608 --> 00:39:47,600 kama wewe kujaribu kutumia kwamba kwa ripoti ndani ya safu, au kuwa na nini. 796 00:39:47,600 --> 00:39:51,050 >> Hivyo moja ya kweli mambo muhimu kuhusu C ni 797 00:39:51,050 --> 00:39:54,219 majeshi ya wewe kufikiri kweli ngumu kabla ya kufanya any-- 798 00:39:54,219 --> 00:39:56,510 kabla kuleta kutofautiana yoyote kuwepo, kama yale 799 00:39:56,510 --> 00:39:58,764 ni aina ya kutofautiana hii. 800 00:39:58,764 --> 00:40:00,680 Na itakuja kuwa aina hiyo kwa wakati wote. 801 00:40:00,680 --> 00:40:02,410 >> Hii si kweli Chatu, na kwa kweli, wewe 802 00:40:02,410 --> 00:40:04,740 can-- kama wewe ni tu aina ya kwenda na sikio, 803 00:40:04,740 --> 00:40:07,690 na kufanya maamuzi baadhi moja ya njia katika eneo moja, 804 00:40:07,690 --> 00:40:09,870 na baadhi ya maamuzi moja njia katika sehemu nyingine 805 00:40:09,870 --> 00:40:12,960 bila kuweka mambo nyuma ya kutosha pazia katika sehemu nyingine 806 00:40:12,960 --> 00:40:16,170 kukamata vitu vizuri, wanaweza kupata makosa ya baadhi ya ajabu sana. 807 00:40:16,170 --> 00:40:19,200 Na mpango unaweza kuweka mbio kwa muda mrefu sana, kwa sababu ni 808 00:40:19,200 --> 00:40:23,200 kufanya kazi nyingi za kusema, vizuri Jambo hili linaweza kufanya kazi kwa njia hii, 809 00:40:23,200 --> 00:40:25,070 hivyo mimi nina kwenda kukimbia kwa njia hiyo. 810 00:40:25,070 --> 00:40:30,300 >> Na kwa kweli, ukweli kwamba inasukuma mbele kupitia kura ya makosa madogo 811 00:40:30,300 --> 00:40:33,260 maana yake ni kwamba, mara nyingi wakati kosa ni kweli mbaya 812 00:40:33,260 --> 00:40:38,720 na huna kweli wanataka kurekebisha, inaishia maili away-- mpango 813 00:40:38,720 --> 00:40:41,780 huishia kuacha maili kutoka wakati alikuwa makosa yako. 814 00:40:41,780 --> 00:40:46,590 Na hivyo suala moja ambalo tungependa mipango ya kufanya, sometimes-- jambo moja 815 00:40:46,590 --> 00:40:48,910 kwamba tungependa mipango cha kufanya wakati sisi ni debugging 816 00:40:48,910 --> 00:40:54,160 ni kushindwa kwa sauti kubwa na kushindwa sana haraka wakati kitu fulani kitaenda vibaya. 817 00:40:54,160 --> 00:40:55,510 >> Chatu ni mbaya sana wakati huo. 818 00:40:55,510 --> 00:40:58,820 Chatu ni nzuri sana katika si kushindwa na rolling mbele 819 00:40:58,820 --> 00:41:00,320 kupitia mambo isiyotarajiwa. 820 00:41:00,320 --> 00:41:02,820 Hivyo hii ni muhimu kwa ajili ya wakati wewe ni kuandika mipango ndogo. 821 00:41:02,820 --> 00:41:07,110 Baada ya kupata ngumu mende ni wakati mwingine 822 00:41:07,110 --> 00:41:09,300 inachukua muda mrefu tease yao nje. 823 00:41:09,300 --> 00:41:12,210 >> Hivyo kuna upande wa giza kwa wote ya hii, kama ni kazi tu. 824 00:41:12,210 --> 00:41:13,860 Ni kazi tu kama wewe d kutarajia kwa. 825 00:41:13,860 --> 00:41:18,320 Ila kwa kuwa wakati hana, wewe kuishia up katika sehemu tofauti kabisa 826 00:41:18,320 --> 00:41:21,530 na kujaribu kufikiri ambapo ilikuwa kwamba potoka. 827 00:41:21,530 --> 00:41:25,180 >> Ukusanyaji takataka is-- hivyo jambo moja kwamba utakuwa taarifa 828 00:41:25,180 --> 00:41:28,110 ni kwamba yeyote mambo hayo kuwa Nimekuwa kuletwa katika existence-- 829 00:41:28,110 --> 00:41:34,114 arrays haya, Mkwawa haya, haya vitu, haya files-- kamwe kupata huru. 830 00:41:34,114 --> 00:41:36,030 Hakukuwa na wito kwa bure yoyote ya majadiliano hayo. 831 00:41:36,030 --> 00:41:40,340 Na kwamba alikuwa juu ya C-upande, kwa sababu sisi kamwe got katika mambo hayo. 832 00:41:40,340 --> 00:41:42,220 >> Lakini katika Python-upande, kuna si bure. 833 00:41:42,220 --> 00:41:43,970 Mambo kupata moja kwa moja huru wakati chatu 834 00:41:43,970 --> 00:41:45,386 anadhani wewe si kuangalia yao. 835 00:41:45,386 --> 00:41:49,640 Ni nzuri kwa kweli si kumkomboa mambo ambayo wewe bado wanaweza uwezekano wa kuwa na kuangalia, 836 00:41:49,640 --> 00:41:54,262 lakini hii ina maana kwamba kama ungekuwa kwenda kutenga jambo hili kubwa, 837 00:41:54,262 --> 00:41:55,970 na wewe ni kama, loo Mimi nina kufanyika kwa hayo sasa, 838 00:41:55,970 --> 00:42:00,360 ni vigumu kusema chatu kwamba wewe ni kosa na hivyo sasa. 839 00:42:00,360 --> 00:42:02,986 >> Unaweza wakati mwingine kuweka kwamba kutofautiana kwa kuwa hakuna, 840 00:42:02,986 --> 00:42:05,110 na kisha matumaini kwamba hatimaye ushuru takataka 841 00:42:05,110 --> 00:42:06,720 huja kupitia na cleans nje. 842 00:42:06,720 --> 00:42:10,177 Lakini tena, huna kuwa na udhibiti juu hilo. 843 00:42:10,177 --> 00:42:13,510 Na moja ya sababu ya kuwa watu kutumia C kwa kweli utendaji mambo muhimu, 844 00:42:13,510 --> 00:42:16,570 ni uwezo huu kwa kweli kujua wakati kumbukumbu ni zilizotengwa 845 00:42:16,570 --> 00:42:19,369 na wakati ni huru, na kuwa na mengi ya udhibiti wa kusema, 846 00:42:19,369 --> 00:42:20,910 Mimi nina kutumia hakuna kumbukumbu zaidi kuliko mimi haja. 847 00:42:20,910 --> 00:42:23,632 Ambayo ni kitu ambacho Chatu ni kwamba kubwa katika. 848 00:42:23,632 --> 00:42:25,090 Watazamaji: Je, mimi kuuliza swali wewe? 849 00:42:25,090 --> 00:42:29,800 Je, maana ya kushindwa kwa sauti kubwa? 850 00:42:29,800 --> 00:42:32,070 >> ROSS RHEINGANS-YOO: Hivyo kama kitu kinaendelea vibaya 851 00:42:32,070 --> 00:42:34,950 na uko katika debugging mode, wewe ungekuwa mara nyingi sana 852 00:42:34,950 --> 00:42:38,510 wanataka mpango wako kukuambia ambapo hasa ni gone vibaya, 853 00:42:38,510 --> 00:42:42,360 na si tu kimya kimya kuacha kuendesha. 854 00:42:42,360 --> 00:42:45,085 Lakini wewe d kweli ni kuchapa nje ya kila aina ya habari kuhusu 855 00:42:45,085 --> 00:42:46,972 kama, hapa ilikuwa hii. 856 00:42:46,972 --> 00:42:53,957 Jambo hili lilitokea Kama wewe ni uchapishaji wen-- kama wewe ni mbio mtandao server-- 857 00:42:53,957 --> 00:42:55,390 >> Watazamaji: [inaudible] 858 00:42:55,390 --> 00:42:59,800 >> ROSS RHEINGANS-YOO: Yeah, ikiwa wewe ni mbio mtandao wa kompyuta, 859 00:42:59,800 --> 00:43:02,680 ni wakati mwingine mbaya kama wewe ni daima kutupa makosa, 860 00:43:02,680 --> 00:43:04,530 na wewe ni kusema, vizuri kwamba hakuwa na kazi. 861 00:43:04,530 --> 00:43:05,300 Mimi nina kwenda kuacha. 862 00:43:05,300 --> 00:43:07,680 Mimi tu kwenda kupuuza na kuitunza kinachoendelea. 863 00:43:07,680 --> 00:43:11,260 Kwa sababu basi unaweza kupata katika mamia wa makosa haya na kuona kwao. 864 00:43:11,260 --> 00:43:13,910 >> Bila ya shaka kuwa na manufaa kwa madhumuni debugging 865 00:43:13,910 --> 00:43:20,327 kama kila wakati mtandao wa kompyuta yako alifanya makosa, alikuwa muda mrefu rekodi ya jambo hilo. 866 00:43:20,327 --> 00:43:22,910 Labda hata wanataka mpango kuacha, ili kumbukumbu hizo 867 00:43:22,910 --> 00:43:25,471 hawana kupata kuzikwa chini ya mambo. 868 00:43:25,471 --> 00:43:26,970 Lakini tena, hiyo ni katika debugging mode. 869 00:43:26,970 --> 00:43:31,280 >> Mara nyingi katika hali ya uzalishaji, dunia ni tofauti kidogo. 870 00:43:31,280 --> 00:43:36,380 Na katika maandiko vidogo kwamba mimi nina mbio, ambapo kitu kwamba nilisema kufanya 871 00:43:36,380 --> 00:43:40,680 inaweza kuwa tu kidogo mbali kutokana na kile ungependa kufanya, 872 00:43:40,680 --> 00:43:44,010 kisha aina ya kusukuma kwa njia ya makosa ni kitu unaweza kutaka. 873 00:43:44,010 --> 00:43:49,410 Na katika kesi hizo, hakika Chatu kweli anapata kuanza yake. 874 00:43:49,410 --> 00:43:54,617 >> Jambo la mwisho kwamba sikuwa majadiliano Haya katika kwamba sikuwa kuzungumzia 875 00:43:54,617 --> 00:43:57,700 lakini inaweza kuwa kweli vijimambo kwanza wakati una moja ya makosa haya, 876 00:43:57,700 --> 00:44:00,491 na pili na ya tatu na ya nne wakati una moja makosa hayo. 877 00:44:00,491 --> 00:44:03,490 Chatu, nilivyoeleza kwamba anatumia nafasi nyeupe 878 00:44:03,490 --> 00:44:06,700 kukuambia nini ngazi ya indentation na kile kazi kuzuia uko, 879 00:44:06,700 --> 00:44:08,840 inayotibu tabo na nafasi tofauti. 880 00:44:08,840 --> 00:44:12,780 Hivyo kama wewe tabo juu ya nne, na kisha mstari wa pili, ambaye nafasi nne, 881 00:44:12,780 --> 00:44:16,910 hata kama show up kama sawa kiasi katika mhariri wako, 882 00:44:16,910 --> 00:44:20,160 Chatu hana kutendewa sawa. 883 00:44:20,160 --> 00:44:23,610 >> Kwa kweli, chatu chipsi tabo na nafasi kama mafuta na maji. 884 00:44:23,610 --> 00:44:25,050 Ni mambo tu tofauti. 885 00:44:25,050 --> 00:44:27,264 Hakuna fulani urefu kwamba tabo ni, 886 00:44:27,264 --> 00:44:30,180 hivyo si kama tabo ni sawa na 8 nafasi, na hivyo ungependa kupata karibu yake 887 00:44:30,180 --> 00:44:30,860 kwa njia hiyo. 888 00:44:30,860 --> 00:44:34,110 Kama, wakati anasema, nini kiwango cha nyeupe nafasi mimi nina katika, 889 00:44:34,110 --> 00:44:37,240 ni kweli kuangalia kwa mfano wa nafasi na tabo. 890 00:44:37,240 --> 00:44:43,050 Na hivyo, njia bora ya kukabiliana na hii ni daima kutumia nafasi wakati wote. 891 00:44:43,050 --> 00:44:47,510 >> Na kwa kweli, katika Cloud9 IDE na CS50 IDE, 892 00:44:47,510 --> 00:44:50,610 Tab muhimu yako kuwekeza nafasi nne katika badala 893 00:44:50,610 --> 00:44:53,800 ya tab, ambayo ni super muhimu. 894 00:44:53,800 --> 00:44:57,074 Ingawa tena, kama wewe aliandika chatu Mpango na tabo kwamba itakuwa nzuri, 895 00:44:57,074 --> 00:44:58,990 ni tu kama mtu akaingia na alijaribu kuongeza 896 00:44:58,990 --> 00:45:02,655 line moja kwa mpango wako kwamba alikuwa nafasi nne kwa kila tab, 897 00:45:02,655 --> 00:45:03,280 ingekuwa kuvunja. 898 00:45:03,280 --> 00:45:07,800 Na bila kuvunja kwa njia kwamba kweli ni kutoonekana. 899 00:45:07,800 --> 00:45:12,390 Ingawa makosa halisi ujumbe kwamba huo unatoa 900 00:45:12,390 --> 00:45:15,610 ina nini na mpya Indent si inatarajiwa hapa, 901 00:45:15,610 --> 00:45:18,700 or-- ikiwa ni kuzungumza juu indents na inaonekana kama ni makosa, 902 00:45:18,700 --> 00:45:22,090 pengine ni kwa sababu kuna tatizo tabo-nafasi. 903 00:45:22,090 --> 00:45:24,154 Wao bado uko vijimambo kwa utatuzi. 904 00:45:24,154 --> 00:45:26,070 Zima kubwa katika majadiliano hayo, ambayo sikuwa 905 00:45:26,070 --> 00:45:29,740 kupata kwa sababu ni kweli ngumu, hila mada, 906 00:45:29,740 --> 00:45:34,760 na haikuwa lazima kufanya lolote mambo tumefanya hadi sasa, 907 00:45:34,760 --> 00:45:37,140 ni dhana iitwayo tuples. 908 00:45:37,140 --> 00:45:41,280 Wao ni pale kiasi kama arrays kwamba huwezi kurekebisha. 909 00:45:41,280 --> 00:45:44,700 Wao kupata kutumika kila mahali kwa sababu wao ni muhimu kwa kura ya mambo 910 00:45:44,700 --> 00:45:46,300 kuwa arrays si muhimu kwa ajili ya. 911 00:45:46,300 --> 00:45:49,890 >> Lakini kama Ningependa kufanya safu, na kisha ahadi mkalimani kwamba 912 00:45:49,890 --> 00:45:53,140 ni kamwe kwenda wanataka kurekebisha kwamba thing-- kwa kweli, kama unataka kurekebisha, 913 00:45:53,140 --> 00:45:56,800 itabidi kufanya moja mpya na mpya maadili katika it-- wale ni tuples. 914 00:45:56,800 --> 00:45:58,800 Badala ya kuzalisha hao kwa mabano mraba, 915 00:45:58,800 --> 00:46:00,341 wewe kuzalisha yao kwa mabano pande zote. 916 00:46:00,341 --> 00:46:05,074 Kwa nini ungependa kutumia mambo haya, ni kidogo ya swali. . 917 00:46:05,074 --> 00:46:06,990 Kitu tu kwamba mimi itabidi kusema juu ya hilo ni wewe 918 00:46:06,990 --> 00:46:10,680 Unaweza kutumia tuples kama fahirisi kwa Mkwawa. 919 00:46:10,680 --> 00:46:15,010 Huwezi kutumia arrays kama fahirisi kwa Mkwawa. 920 00:46:15,010 --> 00:46:18,970 Na kwa nini ni, tena, kiufundi na Mimi si kwenda kukimbia ndani yake. 921 00:46:18,970 --> 00:46:23,140 >> Pset kwamba mimi si kuguswa juu ya katika majadiliano hayo ni pset6. 922 00:46:23,140 --> 00:46:25,837 Hivyo hapa ni jinsi you d kutekeleza a-- hapa ni 923 00:46:25,837 --> 00:46:28,140 jinsi gani kutekeleza pset6 katika Python. 924 00:46:28,140 --> 00:46:32,680 Kuweka akilini chatu kubuni mzunguko, jambo la kwanza 925 00:46:32,680 --> 00:46:34,760 kwamba kufanya wakati uko Mipango kuandika ni kuangalia 926 00:46:34,760 --> 00:46:38,030 ili kuona kama mtu amefanya hivyo tayari. 927 00:46:38,030 --> 00:46:42,152 >> Kwa kweli, kama unataka kwa serve-- Apache 50 928 00:46:42,152 --> 00:46:44,110 anafanya takriban hii, isipokuwa haina kuja 929 00:46:44,110 --> 00:46:45,840 kiwango cha imewekwa kwenye mashine ya Linux. 930 00:46:45,840 --> 00:46:50,490 Chatu hana, na chatu rahisi http server gani pia. 931 00:46:50,490 --> 00:46:54,717 Kama wewe ni milele kwenye mashine Linux, au Cloud9 IDE nje ya CS50 932 00:46:54,717 --> 00:46:57,550 na Ningependa kutumikia sasa hii directory kwa bandari fulani, 933 00:46:57,550 --> 00:47:04,610 chatu-m SimpleHTTPServer bandari mtumishi hiyo. 934 00:47:04,610 --> 00:47:07,190 Unaweza pia kuagiza rahisi http server 935 00:47:07,190 --> 00:47:11,240 na ni got mengi ya utendaji kama unataka Customize yake, au mabadiliko hayo, 936 00:47:11,240 --> 00:47:15,860 au ni kukimbia it-- kuunganisha kwa kuendesha huduma yako mwenyewe server. 937 00:47:15,860 --> 00:47:18,032 >> Hivyo hiyo ni chatu kwa kifupi. 938 00:47:18,032 --> 00:47:20,280 Na hii imekuwa CS50. 939 00:47:20,280 --> 00:47:21,980 Asante. 940 00:47:21,980 --> 00:47:23,468