Programavimas

7 puikios „Python“ knygos kiekvienam įgūdžių lygiui

Kuo populiaresnė ar galingesnė programavimo kalba, tuo didesnė tikimybė rasti ne tik daug knygų apie ją, bet ir knygų įvairovę. Kadangi „Python“ populiarumas labai išaugo, išaugo ir knygų, sukurtų padėti žmonėms išmokti kalbą ir įvaldyti jos subtilybes, skaičius ir įvairovė.

Čia yra septynios geriausios knygos apie programavimą naudojant „Python“, pradedant pradedančiųjų vadovais ir baigiant „Power-Python“ įgūdžiais. Nesvarbu, ar jūs tik pradedate, ar jau kurį laiką dirbate su „Python“, greičiausiai čia yra jums skirta knyga. Keletą galima nemokamai įsigyti internetiniuose arba PDF leidimuose.

Automatizuokite „Boring Stuff“ naudodami „Python“

Daugelis programavimo kalbų ar apskritai programavimo įvadų yra konceptualūs. Apie programavimą jie kalba abstrakčiai. Robo SweigartoAutomatizuokite „Boring Stuff“ naudodami „Python“ kalbama apie programavimą konkrečiai: jis naudoja „Python“ kursą kaip būdą išmokti pavargusias užduotis paversti šmaikščiais „Python“ scenarijais.

Automatizuoti yra vertinamas pradedantiesiems „Python“ ir paprastai skaičiuojant. Tai atveria, skaitytojui patogu naudotis paprastu IDE („Mu“ redaktoriumi), tada juos reikia atlikti naudojant įvestį, srauto valdymą, funkcijas, objektų rinkinius (sąrašus, žodynus), patvirtinant įvesties ir šablonų derinimą bei darbą su failus.

Antroji knygos pusė labiau orientuota į užduotis ir į projektą. Tai apima įprastas automatizavimo užduotis: darbą su skaičiuoklėmis ir tekstiniais dokumentais, el. Laiškų siuntimą, vaizdų valdymą ir GUI sąveikos automatizavimą.

Kas daroAutomatizuoti vertinga pradedančiųjų knyga yra tai, kaip ji ištisai eina į projektus, tinkamus dabartiniam pamokos lygiui, pavyzdžiui, paprastą (nors ir žodžiu pagrįstą) žaidimą „roko-popieriaus-žirklės srauto valdymui išmokyti“ arba „Pig Latin“ generatorių. mokyti manipuliuoti stygomis. Taip pat reikia laiko vėl ir vėl susiskaidyti, kaip paversti tai, ką norime padaryti (pirmiausia tai, tada tai, tada tai), į tai, ką daro programa.

Automatizuokite „Boring Stuff“ naudodami „Python“ yra keliais formatais: nemokamas internetinis leidimas, elektroninių ir spausdintų leidimų leidyba ir „Udemy“ kursas (50 vaizdo įrašų).

„Amazon“: //www.amazon.com/Automate-Boring-Stuff-Python-2nd/dp/1593279922

„Python“ baitas

„Nepretenzingas“ yra geriausias žodis, apibūdinantis „Swaroop Chitlur“„Python“ baitas. Tai lengvai paprasčiausias ir prieinamiausias „Python“ vadovas, jei jis taip pat yra mažiausiai papuoštas. Jame nenaudojamos gudrybės, projektai ar mielos iliustracijos, tačiau jų praleidimas taip pat yra viena didžiausių stipriųjų pusių: tarp skaitytojo ir pamokų nieko neatsiranda.

Knyga pirmiausia nurodo skaitytojui nustatant ir konfigūruojant „Python“ egzempliorių, tada naudojant REPL ir redaktorių („PyCharm“ ten gauna didžiausią aprėptį). Toliau pateikiami kintamieji ir tipai, operatoriai, valdymo srautas, funkcijos, moduliai, duomenų struktūros (įskaitant klases, nors yra visas skyrius apie OOP), I / O, išimtys ir greita tokių sąvokų apžvalga kaip sąrašo supratimas ir dekoratoriai.

Knyga turi keletą nedidelių trūkumų. Vienas iš jų yra organizavimas: įvestis ir išvestis tvarkomi gana vėlai, kai dauguma mokymo programų to moko daug anksčiau. Be to, kai kurie elementai, kurie nusipelno būti pateikiami pagrindinėje „Python“ apžvalgoje, pvz., Konteksto valdytojai, apskritai nėra aptarti. Tačiau apskritai knyga yra geras nesuvokiamas kalbos įvadas.

„Python“ baitas nominaliai yra nemokama kaip internetinė knyga, bet taip pat galima atsisiųsti PDF formatu ir spausdintomis spausdintinėmis kopijomis. Taip pat egzistuoja daugybė vertimų į kitas kalbas nei anglų.

„Amazon“ (tik „Kindle“): //www.amazon.com/Byte-Python-Swaroop-C-H-ebook/dp/B00FJ7S2JU

„Learning Python“, 5 leidimas

Programavimas „Python“, 4-asis leidimas

Dėl visapusiškumo ir „viskas viename“ nieko nepralenkia Marko LutzoMokymasis „Python“ irProgramavimas Python. Abi knygos yra daugiau nei šešiolika šimtų puslapiųkiekvienas, bet neleiskite, kad dydis jus išgąsdintų - jie skirti virškinti vietoje, o ne skaityti nuo galo iki galo.

Apie kiekvieną „Python“ temą, kaip ir „Python 3.3“, yra aprašytaMokymasis „Python“ir padengtas išsamiu gyliu. Pavyzdžiui, jei norite sužinoti viską, ko reikia žinoti apie dekoratorius, skyrius ta tema yra mini kursas šia tema.

Programavimas „Python“ yra apie „Python“ naudojimą kuriant realaus pasaulio programas. Užuot tik iliustruodamas kalbos komponentus, jis tiria sistemos programavimą, GUI, interneto klientus ir serverius, duomenų bazes, integraciją su C ir daug daugiau.

Didžiausias Mokymasis „Python“ ne jo dydis, o amžius. 5-asis leidimas pasirodė 2013 m., Apimantis „Python 3.3“ ir „2.7“, todėl neapima daugelio reikšmingų naujovių, įdiegtų į „Python“ nuo tada. Nuo 2016 m. Lutzas neketino jos atnaujinti, iš dalies dėl dokumentais užfiksuotų sunkumų su leidėju.

„Amazon“: //www.amazon.com/Learning-Python-5th-Mark-Lutz/dp/1449355730; //www.amazon.com/Programming-Python-Powerful-Object-Oriented-dp-0596158106/dp/0596158106/

Didelio našumo „Python“: praktiškas atlikėjų programavimas žmonėms

Kiekvienas nuotoliniu būdu susidomėjęs „Python“ greitesniu ar efektyvesniu veikimu, turėtų įtraukti šią knygą į savo kolekciją.

„Python“ ir „high performance“ nėra dažnai sakomi tuo pačiu kvėpavimu. Tai, ką „Python“ suteikia jums patogiai, atima neapdorotą, mašinos lygio greitį. Bet tai nereiškia, kad greitaeigis „Python“ yra neįmanomas; kaip ir daugeliui „neįmanomų“ dalykų, reikia tik šiek tiek daugiau dirbti.

Didelio našumo „Python“: praktiškas atlikėjų programavimas žmonėms, kurią pateikė Micha Gorelick ir Ian Ozsvald, patyrę „Python“ programuotojai vaikšto visais būdais, kaip galima greičiau sukurti „Python“ kodą, pradedant paprastais „pure-Python“ optimizavimais ir baigiant pritaikytu C kodu. Knyga pradedama pasinerti į programų profiliavimą, pagrindinį įgūdį diagnozuoti ir ištaisyti našumo problemas naudojant bet kurią „Python“ programą, tada paeiliui nagrinėjamos konkrečios optimizacijos:

  • Įvairių duomenų struktūrų, pvz., Sąrašų, palyginti su žodynais ir rinkiniais, prieigos modeliai ir didelis O veikimas.
  • Kaip generatoriai gali būti naudojami taupant atmintį didelėms skaičiavimo problemoms spręsti.
  • Matricų ir vektorių naudojimas - iš esmės įvadas į „NumPy“ ir „Pandas“ naudojimą greitesnei matematikai.
  • „Cython“, „Numba“, „PyPy“ ir kitų trečiųjų šalių kompiliatorių bei vykdymo laiko naudojimas mašinos lygio greičiui. Kiekvieno iš jų aptarimas galėtų užimti visą savo knygą (Cython atveju taip yra), todėl čia aptariami tik patys pagrindiniai ir įprasti naudojimo atvejai. Bet būsite gerai pasirengę tolesniam mokymuisi.
  • Asinchroninio programavimo naudojimas norint pagreitinti kelias nuo įvesties / išvesties priklausomas operacijas.
  • Daugiaprocesinio proceso naudojimas siekiant išvengti GIL, o grupavimas ir darbo eilės - tolesniam darbo pasidalijimui.

Ilgas skyrius taip pat pateikiamas su pastabomis apie realių „Python“ našumo problemų sprendimus, įskaitant mašininio mokymosi vamzdynų diegimą. Antrasis knygos leidimas atnaujina naujausių „Python“ versijų tekstą ir apima medžiagą apie darbą su GPU.

„Amazon“: //www.amazon.com/High-Performance-Python-Performant-Programming/dp/1492055026/

Sklandus pitonas

Įvaldę pagrindus, kas toliau?Sklandus pitonas atsako į šį klausimą.

Programuotojai, kurie jau žino pakankamai „Python“, kad galėtų parašyti savo programas, dažnai stengiasi patekti į kitą etapą: naudodami unikalų „Python“ funkcijų rinkinį, rašo tikrai galingą programinę įrangą.Laisvas „Python“, kurį sukūrė Luciano Ramalho, programuotojas apžvelgia daugelį pagrindinių „Python“ aspektų, kuriuos naudoja ekspertai: „Python“ duomenų modelio ir „nusimetimo metodų“ įvaldymas, pažangus duomenų rinkinių, pvz., rinkinių ir žodynų, naudojimas, objektų, kurie veikia kaip įrašai, kūrimas (ne tik klasės , bet pavadino rinkinius ir duomenų klases), naudojant funkcijas kaip objektus, tipo užuominas ir daug daugiau.

Nors dalis medžiagos (pvz., Lambdas) gali būti naujiena net vidutiniškai patyrusiems „Python“ programuotojams, knyga parodo, kaip šie elementai yra vertingi pažengusiems programuotojams. Net jei anksčiau naudojote šias „Python“ funkcijas, knyga parodys, kaip su jomis kurti patikimesnes programas ir kaip išmintingai pasirinkti tarp panašių alternatyvų (pvz., Struktūrų ir atmintinių), norint atlikti pažangų darbą.

Nuo šio rašymo „Fluent Python“, 2-asis leidimas yra prieinamas kaip išankstinio leidimo projektas su „O’Reilly“ naryste, arba jį galima iš anksto užsisakyti „Amazon“.

„Amazon“: //www.amazon.com/Fluent-Python-Concise-Effective-Programming/dp/1492056359

Pagalvokite apie „Python“

Šios knygos paantraštė yra „Kaip galvoti kaip kompiuterio mokslininkui“, kuri suteikia užuominą apie knygos ketinimus. Pagalvokite apie „Python“, Allen B. Downey, yra „Python“ mokymosi vadovas, skirtas visiškai pradedantiesiems, tačiau didesnis jo tikslas yra padėti skaitytojui suprasti, kas yra programavimas, ką reiškia būti programuotoju ir kodėl kompiuterinės programos veikia taip, kaip jos veikia . „Python“ yra tik arena, kurioje nagrinėjamos tos idėjos. Atsižvelgiant į tai, kaip lengva išmokti „Python“, tai yra protingas pasirinkimas.

Pagalvokite apie „Python“ prasideda formaliomis sąvokomis - kas yra programa, kas yra įvestis ir išvestis, kokie yra tipai ir vertybės ir kaip programos tomis sąvokomis tvarko informaciją. Iš ten knyga pereina prie to, kaip veikia teiginiai ir operacijų tvarka, ir kaip teiginiai gali būti sujungti į išraiškas ir funkcijas. Būklės valdymas ir valdymo srautas, iteracija, rinkinių tipai (eilutės, sąrašai, žodynai), failų įvesties / išvesties, klasės ir paveldėjimas kartu su daugybe naudingų „Python“ funkcijų, pažymėtų „Gėrybės“, visi gauna savo skyrius.

Kas patraukliausiaPagalvokite apie „Python“, be aiškios ir tiesioginės kalbos, yra tai, kaip jis kiekvieną informacijos bitą nuolat sieja su pagrindinėmis temomis, kaip veikia kompiuteriai ir kompiuterinės programos, ir kokie metodai naudojami programuojant, kad būtų pasiekti tikslai. Naujokams tai yra svarbiau, nei jie galėtų iš pradžių suvokti.

Pagalvokite apie „Python“yra nemokama el. knyga PDF arba HTML formatu.

„Amazon“: //www.amazon.com/gp/product/1491939362