Python este un limbaj de programare open source, portabil, gratuit, personalizabil, eficient și modern, care oferă o gamă largă de funcționalități atractive și permite dezvoltatorilor de aplicații să creeze proiecte software care sunt pe deplin compatibile cu toate mainstream sisteme de operare.
Opțiuni de linie de comandă
Opțiunile implicite pentru linia de comandă includ optimizarea generatelui bytecode, optimizarea bytecode-ului generat și ștergerea doc-stringurilor, utilizarea formelor non-UNIX de #! cmd prin sărirea primei linii a sursei, protecția de la DoS (Denial of Service ) prin efectuarea unor valori de tip hash () de diferite tipuri imprevizibile, folosind sare pseudo-aleatoare.
În plus, programul vă va permite de asemenea să adăugați diferite opțiuni de divizare, cum ar fi QQarn, Qold și Qwarnall, avertizează despre utilizarea filelor incompatibile, să executați programul în modul verbose, să primiți avertismente despre Python 3.x incompatibilități, precum și pentru a debuga ieșirea din parser și ignora variabilele de mediu PYTHON *.
Începeți cu Python
Limba de programare Python este adesea comparată cu limbile de programare / scriere Java, Perl, Scheme sau Tcl. Este compatibil cu toate distribuțiile GNU / Linux, precum și cu Microsoft Windows, Mac OS X, Solaris, BSD și alte câteva sisteme de operare asemănătoare UNIX. În prezent, este compatibil atât cu arhitecturi pe 32 de biți (x86) cât și pe 64 de biți (x86_64).
Instalarea programului Python pe sistemul dvs. este o sarcină foarte ușoară, deoarece tot ce trebuie să faceți este să accesați managerul de pachete implicit al sistemului GNU / Linux și să căutați "python"; pachet. Instalați-l și apoi interacționați cu el printr-un emulator de terminal Linux.
Utilizatorii Hardcore Linux / UNIX care doresc să optimizeze Python pentru arhitectura hardware pot face acest lucru prin descărcarea ultimei versiuni a proiectului de la Softoware, salvarea fișierului tarball sursă (fișierul tar.xz) pe computer, despachetarea, deschiderea un emulator de terminale și navigați la locația fișierelor arhivate extrase cu "cd & rsquo; comandă.
Folosiți & lsquo; ./ configure & rsquo; comanda pentru a face anumite optimizări și apoi pentru a executa "make"; comanda pentru a compila Python. În cele din urmă, instalați sistemul Python lățime prin rularea & install; comanda ca root sau cu sudo.
Ce este nou în această ediție:
- Library:
- [Securitate] bpo-30730: Împiedicați introducerea variabilelor de mediu în subproces pe Windows. Împiedicați transmiterea altor variabile de mediu și argumente de comandă.
- [Securitate] bpo-30694: Actualizați copia expat de la 2.2.0 la 2.2.1 pentru a obține remedii cu mai multe vulnerabilități de securitate incluzând: CVE-2017-9233 (Entita infinită a entității externe DoS), CVE-2016-9063 overflow, re-fix), CVE-2016-0718 (Fix bug-uri de regresie de la fixarea lui 2.2.0 la CVE-2016-0718) și CVE-2012-0876 (Inundarea hash contra SipHash). Notă: CVE-2016-5300 (Utilizați surse de entropie specifice osului, cum ar fi getrandom) nu afectează Python, deoarece Python devine deja entropia din sistemul de operare pentru a seta secretul expat utilizând XML_SetHashSalt ().
- [Securitate] bpo-30500: Fixați urllib.parse.splithost () pentru a parsa corect fragmente. Spre exemplu, splithost ('// 127.0.0.1#@evil.com/') returnează în mod corect gazda 127.0.0.1, în loc să trateze @ evil.com ca gazdă într-o autentificare (login @ host). >
Ce este nou în versiune:
- Library:
- [Securitate] bpo-30730: Împiedicați introducerea variabilelor de mediu în subproces pe Windows. Împiedicați transmiterea altor variabile de mediu și argumente de comandă.
- [Securitate] bpo-30694: Actualizați copia expat de la 2.2.0 la 2.2.1 pentru a obține remedii cu mai multe vulnerabilități de securitate incluzând: CVE-2017-9233 (Entita infinită a entității externe DoS), CVE-2016-9063 overflow, re-fix), CVE-2016-0718 (Fix bug-uri de regresie de la fixarea lui 2.2.0 la CVE-2016-0718) și CVE-2012-0876 (Inundarea hash contra SipHash). Notă: CVE-2016-5300 (Utilizați surse de entropie specifice osului, cum ar fi getrandom) nu afectează Python, deoarece Python devine deja entropia din sistemul de operare pentru a seta secretul expat utilizând XML_SetHashSalt ().
- [Securitate] bpo-30500: Fixați urllib.parse.splithost () pentru a parsa corect fragmente. Spre exemplu, splithost ('// 127.0.0.1#@evil.com/') returnează în mod corect gazda 127.0.0.1, în loc să trateze @ evil.com ca gazdă într-o autentificare (login @ host). >
Ce este nou în versiunea 3.6.1 / 3.6.2 RC1:
- PEP 441, suport pentru aplicațiile Python zip îmbunătățite
- PEP 448, generalizări suplimentare de despachetare
- PEP 461, "% - formatare" pentru octeți și obiecte bytearray
- PEP 465, un nou operator (@) pentru multiplicarea matricei
- PEP 471, os.scandir (), o funcție rapidă de traversare a directorului
- PEP 475, adăugând suport pentru retrimiterea automată a apelurilor de sistem întrerupte
- PEP 479, modificați manipularea StopIteration în interiorul generatoarelor
- PEP 484, modulul de tastare, un nou standard pentru adnotările de tip
- PEP 485, math.isclose (), o funcție de testare a egalității aproximative
- PEP 486, făcând lansatorul Windows Python conștient de mediile virtuale
- PEP 488, eliminând fișierele .pyo
- PEP 489, un mecanism nou și îmbunătățit pentru încărcarea modulelor de extensie
- PEP 492, corutinele cu asincron și așteaptă sintaxa
Ce este nou în versiunea 3.6.1:
- PEP 441, suport pentru aplicațiile Python zip îmbunătățite
- PEP 448, generalizări suplimentare de despachetare
- PEP 461, "% - formatare" pentru octeți și obiecte bytearray
- PEP 465, un nou operator (@) pentru multiplicarea matricei
- PEP 471, os.scandir (), o funcție rapidă de traversare a directorului
- PEP 475, adăugând suport pentru retrimiterea automată a apelurilor de sistem întrerupte
- PEP 479, modificați manipularea StopIteration în interiorul generatoarelor
- PEP 484, modulul de tastare, un nou standard pentru adnotările de tip
- PEP 485, math.isclose (), o funcție de testare a egalității aproximative
- PEP 486, făcând lansatorul Windows Python conștient de mediile virtuale
- PEP 488, eliminând fișierele .pyo
- PEP 489, un mecanism nou și îmbunătățit pentru încărcarea modulelor de extensie
- PEP 492, corutinele cu asincron și așteaptă sintaxa
Ce este nou în versiunea 3.6.0:
- PEP 441, suport pentru aplicațiile Python zip îmbunătățite
- PEP 448, generalizări suplimentare de despachetare
- PEP 461, "% - formatare" pentru octeți și obiecte bytearray
- PEP 465, un nou operator (@) pentru multiplicarea matricei
- PEP 471, os.scandir (), o funcție rapidă de traversare a directorului
- PEP 475, adăugând suport pentru retrimiterea automată a apelurilor de sistem întrerupte
- PEP 479, modificați manipularea StopIteration în interiorul generatoarelor
- PEP 484, modulul de tastare, un nou standard pentru adnotările de tip
- PEP 485, math.isclose (), o funcție de testare a egalității aproximative
- PEP 486, făcând lansatorul Windows Python conștient de mediile virtuale
- PEP 488, eliminând fișierele .pyo
- PEP 489, un mecanism nou și îmbunătățit pentru încărcarea modulelor de extensie
- PEP 492, corutinele cu asincron și așteaptă sintaxa
Ce este nou în versiunea 3.5.2:
- PEP 441, suport pentru aplicațiile Python zip îmbunătățite
- PEP 448, generalizări suplimentare de despachetare
- PEP 461, "% - formatare" pentru octeți și obiecte bytearray
- PEP 465, un nou operator (@) pentru multiplicarea matricei
- PEP 471, os.scandir (), o funcție rapidă de traversare a directorului
- PEP 475, adăugând suport pentru retrimiterea automată a apelurilor de sistem întrerupte
- PEP 479, modificați manipularea StopIteration în interiorul generatoarelor
- PEP 484, modulul de tastare, un nou standard pentru adnotările de tip
- PEP 485, math.isclose (), o funcție de testare a egalității aproximative
- PEP 486, făcând lansatorul Windows Python conștient de mediile virtuale
- PEP 488, eliminând fișierele .pyo
- PEP 489, un mecanism nou și îmbunătățit pentru încărcarea modulelor de extensie
- PEP 492, corutinele cu asincron și așteaptă sintaxa
Ce este nou în versiunea 3.5.1:
- PEP 441, suport pentru aplicațiile Python zip îmbunătățite
- PEP 448, generalizări suplimentare de despachetare
- PEP 461, "% - formatare" pentru octeți și obiecte bytearray
- PEP 465, un nou operator (@) pentru multiplicarea matricei
- PEP 471, os.scandir (), o funcție rapidă de traversare a directorului
- PEP 475, adăugând suport pentru retrimiterea automată a apelurilor de sistem întrerupte
- PEP 479, modificați manipularea StopIteration în interiorul generatoarelor
- PEP 484, modulul de tastare, un nou standard pentru adnotările de tip
- PEP 485, math.isclose (), o funcție de testare a egalității aproximative
- PEP 486, făcând lansatorul Windows Python conștient de mediile virtuale
- PEP 488, eliminând fișierele .pyo
- PEP 489, un mecanism nou și îmbunătățit pentru încărcarea modulelor de extensie
- PEP 492, corutinele cu asincron și așteaptă sintaxa
Ce este nou în versiunea 3.5.0:
- Python 3.5.0 este cea mai nouă versiune Limba Python și conține multe caracteristici și optimizări noi.
Ce este nou în versiunea 3.4.3:
- Această versiune vine cu peste 300 de bug-uri și alte îmbunătățiri peste 3.4.0. O schimbare notabilă: versiunea OpenSSL inclusă în programul de instalare Windows nu mai are vulnerabilitatea HeartBleed.
Ce este nou în versiunea 3.4.2:
- îmbunătățiri peste 3.4.0. O schimbare notabilă: versiunea OpenSSL inclusă în programul de instalare Windows nu mai are vulnerabilitatea HeartBleed.
Ce este nou în versiunea 3.4.0 RC1:
- PEP 380, sintaxa de delegare la un subgenerator (randament din)
- PEP 393, reprezentarea flexibilă a șirului (care elimină distincția între "lățimea" și "îngusta" construiește unicode)
- Implementarea C a funcției "zecimal" , cu viteză de până la 120x pentru aplicații grele zecimale
- Sistemul de import (__import__) se bazează pe importlib în mod implicit
- noul "lzma" modul cu suport LZMA / XZ
- PEP 397, lansator Python pentru Windows
- PEP 405, suport pentru mediul virtual în bază
- PEP 420, suport pachet namespace
- PEP 3151, redimensionarea ierarhiei excepțiilor OS și IO
- PEP 3155, nume calificat pentru clase și funcții
- PEP 409, suprimând contextul de excepție
- PEP 414, litere explicite Unicode pentru a ajuta la portarea
- PEP 418, ceasuri independente de platformă extinse în timpul "timpului" modulul
- PEP 412, o nouă implementare a dicționarului de distribuire a cheilor, care economisește semnificativ memoria pentru codul orientat pe obiecte
- PEP 362, obiectul de semnătură a funcției
- noul "faulthandler" modul care ajută la diagnosticarea accidentelor
- Noul "unittest.mock" modulul
- Noua adresă "ipaddress" modulul
- "Implementarea sys" atribut
- Un cadru de politică pentru pachetul de e-mail, cu o politică provizorie (vezi politica PEP 411) care adaugă suport mult mai bun pentru unicode pentru parsingul antetului de e-mail
- O "colecții.ChainMap" pentru conectarea mapărilor la o singură unitate
- Ambalaje pentru multe alte funcții POSIX în "os" și "semnal" module, precum și alte funcții utile, cum ar fi "sendfile ()"
- Randomizarea Hash, introdusă în versiunile anterioare de remediere a bug-urilor, este acum activată în mod implicit
Ce este nou în versiunea 3.4.0 Beta 2:
- PEP 428, un "pathlib" modul care furnizează căi de sistem orientate pe obiecte
- PEP 435, un "enum" standardizat modulul
- PEP 436, un accesoriu de construcție care va ajuta la generarea informațiilor de introspecție pentru dispozitivele încorporate
- PEP 442, semantică îmbunătățită pentru finalizarea obiectului
- PEP 443, adăugând funcții generice cu o singură expediere la biblioteca standard
- PEP 445, un nou C API pentru implementarea alocatorilor de memorie personalizată
- PEP 446, schimbarea descriptorilor de fișiere pentru a nu fi moștenit în mod implicit în subprocesele
- PEP 450, o nouă "statistică" modulul
- PEP 451, standardizarea metadatelor modulelor pentru sistemul de import al modulelor Python
- PEP 453, un pachet de instalare pentru managerul de pachete pip
- PEP 454, un nou "tracemalloc" modul pentru urmărirea alocărilor de memorie Python
- PEP 456, un nou algoritm de hash pentru șiruri Python și date binare
- PEP 3154, un protocol nou și îmbunătățit pentru obiectele murate
- PEP 3156, un nou "asyncio" modul, un nou cadru pentru I / O asincron
Ce este nou în versiunea 3.4.0 Beta 1:
- PEP 428, un "pathlib" modul care furnizează căi de sistem orientate pe obiecte
- PEP 435, un "enum" standardizat modulul
- PEP 436, un accesoriu de construcție care va ajuta la generarea informațiilor de introspecție pentru dispozitivele încorporate
- PEP 442, semantică îmbunătățită pentru finalizarea obiectului
- PEP 443, adăugând funcții generice cu o singură expediere la biblioteca standard
- PEP 445, un nou C API pentru implementarea alocatorilor de memorie personalizată
- PEP 446, schimbarea descriptorilor de fișiere pentru a nu fi moștenit în mod implicit în subprocesele
- PEP 450, o nouă "statistică" modulul
- PEP 451, standardizarea metadatelor modulelor pentru sistemul de import al modulelor Python
- PEP 453, un pachet de instalare pentru managerul de pachete pip
- PEP 454, un nou "tracemalloc" modul pentru urmărirea alocărilor de memorie Python
- PEP 456, un nou algoritm de hash pentru șiruri Python și date binare
- PEP 3154, un protocol nou și îmbunătățit pentru obiectele murate
- PEP 3156, un nou "asyncio" modul, un nou cadru pentru I / O asincron
Ce este nou în versiunea 3.4.0 Alpha 4:
- PEP 435, un "enum" standardizat modulul
- PEP 436, un accesoriu de construcție care va ajuta la generarea informațiilor de introspecție pentru dispozitivele încorporate
- PEP 442, semantică îmbunătățită pentru finalizarea obiectului
- PEP 443, adăugând funcții generice cu o singură expediere la biblioteca standard
- PEP 445, un nou C API pentru implementarea alocatorilor de memorie personalizată
- PEP 446, schimbarea descriptorilor de fișiere pentru a nu fi moștenit în mod implicit în subprocesele
- PEP 450, noile "statistici" modulul
- PEP 3156, noul "asyncio" modul, un nou cadru pentru I / O asincron
Ce este nou în versiunea 2.7.6:
Ce este nou în versiunea 3.2.5:
- numeroase îmbunătățiri ale modulului unittesttest
- PEP 3147, suport pentru directoarele repository .pyc
- PEP 3149, suport pentru bibliotecile dinamice marcate cu versiuni
- PEP 3148, o nouă bibliotecă de contracte futuriste
- PEP 384, un ABI stabil pentru modulele de extensie
- PEP 391, configurație de logare bazată pe dicționarul
- o implementare GIL revizuită care reduce conflictul
- un pachet de e-mail extins care gestionează mesajele octeților
- un modul ssl îmbunătățit mult cu suport pentru contexte SSL și potrivire a numelui de gazdă a certificatelor
- un modul sysconfig pentru a accesa informațiile de configurare
- adăugiri la modulul shutil, printre care și suportul de arhivare a fișierelor
- multe îmbunătățiri ale configparserului, printre care și suportul protocolului de cartografiere
- îmbunătățiri pentru pdb, programul de depanare Python
- remedii nenumărate în ceea ce privește problemele octeților / șirurilor; printre care suport complet pentru un mediu de octeți (nume de fișiere, variabile de mediu)
- multe corecții de consistență și comportament pentru operații numerice
Ce este nou în versiunea 3.3.2:
- PEP 380, sintaxa de delegare la un subgenerator (randament din)
- PEP 393, reprezentarea flexibilă a șirului (care elimină distincția între "lățimea" și "îngusta" construiește unicode)
- Implementarea C a funcției "zecimal" , cu viteză de până la 120x pentru aplicații grele zecimale
- Sistemul de import (__import__) se bazează pe importlib în mod implicit
- noul "lzma" modul cu suport LZMA / XZ
- PEP 397, lansator Python pentru Windows
- PEP 405, suport pentru mediul virtual în bază
- PEP 420, suport pachet namespace
- PEP 3151, redimensionarea ierarhiei excepțiilor OS și IO
- PEP 3155, nume calificat pentru clase și funcții
- PEP 409, suprimând contextul de excepție
- PEP 414, litere explicite Unicode pentru a ajuta la portarea
- PEP 418, ceasuri independente de platformă extinse în timpul "timpului" modulul
- PEP 412, o nouă implementare a dicționarului de distribuire a cheilor, care economisește semnificativ memoria pentru codul orientat pe obiecte
- PEP 362, obiectul de semnătură a funcției
- noul "faulthandler" modul care ajută la diagnosticarea accidentelor
- Noul "unittest.mock" modulul
- Noua adresă "ipaddress" modulul
- "Implementarea sys" atribut
- Un cadru de politică pentru pachetul de e-mail, cu o politică provizorie (vezi politica PEP 411) care adaugă suport mult mai bun pentru unicode pentru parsingul antetului de e-mail
- O "colecții.ChainMap" pentru conectarea mapărilor la o singură unitate
- Ambalaje pentru multe alte funcții POSIX în "os" și "semnal" module, precum și alte funcții utile, cum ar fi "sendfile ()"
- Randomizarea Hash, introdusă în versiunile anterioare de remediere a bug-urilor, este acum activată în mod implicit
Ce este nou în versiunea 3.3.0:
- PEP 380, sintaxa de delegare la un subgenerator (randament din)
- PEP 393, reprezentarea flexibilă a șirului (care elimină distincția între "lățimea" și "îngusta" construiește unicode)
- Implementarea C a funcției "zecimal" , cu viteză de până la 120x pentru aplicații grele zecimale
- Sistemul de import (__import__) se bazează pe importlib în mod implicit
- noul "lzma" modul cu suport LZMA / XZ
- PEP 397, lansator Python pentru Windows
- PEP 405, suport pentru mediul virtual în bază
- PEP 420, suport pachet namespace
- PEP 3151, redimensionarea ierarhiei excepțiilor OS și IO
- PEP 3155, nume calificat pentru clase și funcții
- PEP 409, suprimând contextul de excepție
- PEP 414, litere explicite Unicode pentru a ajuta la portarea
- PEP 418, ceasuri independente de platformă extinse în timpul "timpului" modulul
- PEP 412, o nouă implementare a dicționarului de distribuire a cheilor, care economisește semnificativ memoria pentru codul orientat pe obiecte
- PEP 362, obiectul de semnătură a funcției
- noul "faulthandler" modul care ajută la diagnosticarea accidentelor
- Noul "unittest.mock" modulul
- noua adresă "ipaddress" modulul
- "Implementarea sys" atribut
- Un cadru de politică pentru pachetul de e-mail, cu o politică provizorie (vezi politica PEP 411) care adaugă suport mult mai bun pentru unicode pentru parsingul antetului de e-mail
- O "colecții.ChainMap" pentru conectarea mapărilor la o singură unitate
- Ambalaje pentru multe alte funcții POSIX în "os" și "semnal" module, precum și alte funcții utile, cum ar fi "sendfile ()"
- Randomizarea Hash, introdusă în versiunile anterioare de remediere a bug-urilor, este acum activată în mod implicit
Comentariile nu a fost găsit