ΠžΠ±Ρ˜Π°Π²ΡƒΠ²Π°ΡšΠ΅ Π½Π° програмскиот јазик Python 3.8

По Π³ΠΎΠ΄ΠΈΠ½Π° ΠΈ ΠΏΠΎΠ» Ρ€Π°Π·Π²ΠΎΡ˜ ΠΏΡ€Π΅Π·Π΅Π½Ρ‚ΠΈΡ€Π°Π½ΠΈ Π³Π»Π°Π²Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° програмски јазик ΠŸΠ°Ρ˜Ρ‚ΠΎΠ½ 3.8. ΠšΠΎΡ€Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΈ Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ° Π·Π° Π³Ρ€Π°Π½ΠΊΠ°Ρ‚Π° Π½Π° Python 3.8 ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½ΠΈ ΠΎΡΠ»ΠΎΠ±ΠΎΠ΄ΡƒΠ²Π°ΡšΠ΅ Π²ΠΎ Ρ€ΠΎΠΊ ΠΎΠ΄ 18 мСсСци. ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΈΡ‚Π΅ пропусти ќС Π±ΠΈΠ΄Π°Ρ‚ ΠΏΠΎΠΏΡ€Π°Π²Π΅Π½ΠΈ 5 Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π΄ΠΎ ΠΎΠΊΡ‚ΠΎΠΌΠ²Ρ€ΠΈ 2024 Π³ΠΎΠ΄ΠΈΠ½Π°. ΠšΠΎΡ€Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΈΡ‚Π΅ Π°ΠΆΡƒΡ€ΠΈΡ€Π°ΡšΠ° Π·Π° Π³Ρ€Π°Π½ΠΊΠ°Ρ‚Π° 3.8 ќС сС ΠΎΠ±Ρ˜Π°Π²ΡƒΠ²Π°Π°Ρ‚ Π½Π° сСкои Π΄Π²Π° мСсСци, Π° ΠΏΡ€Π²ΠΎΡ‚ΠΎ ΠΊΠΎΡ€Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Python 3.8.1 Π΅ Π·Π°ΠΊΠ°ΠΆΠ°Π½ΠΎ Π·Π° Π΄Π΅ΠΊΠ΅ΠΌΠ²Ρ€ΠΈ.

ΠœΠ΅Ρ“Ρƒ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΈΡ‚Π΅ ΠΈΠ½ΠΎΠ²Π°Ρ†ΠΈΠΈ:

  • ΠŸΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° Π΄ΠΎΠ΄Π΅Π»ΡƒΠ²Π°ΡšΠ΅ Π²ΠΎ слоТСни ΠΈΠ·Ρ€Π°Π·ΠΈ. Π‘ΠΎ Π½ΠΎΠ²ΠΈΠΎΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ β€ž:=β€œ, ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° сС Π²Ρ€ΡˆΠ°Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° Π΄ΠΎΠ΄Π΅Π»ΡƒΠ²Π°ΡšΠ΅ врСдности Π²ΠΎ Π΄Ρ€ΡƒΠ³ΠΈ ΠΈΠ·Ρ€Π°Π·ΠΈ, Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π° Π΄Π° сС ΠΈΠ·Π±Π΅Π³Π½Π°Ρ‚ двојни ΠΏΠΎΠ²ΠΈΡ†ΠΈ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²ΠΎ условни искази ΠΈ ΠΏΡ€ΠΈ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°ΡšΠ΅ Π½Π° јамки:

    Π°ΠΊΠΎ (n := len(a)) > 10:
    ...

    Π΄ΠΎΠ΄Π΅ΠΊΠ° (Π±Π»ΠΎΠΊ := f.read(256)) != ":
    ...

  • ΠŸΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π½ΠΎΠ²Π° синтакса Π·Π° ΠΎΠ΄Ρ€Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ функциски Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈ. Кога Π½Π°Π±Ρ€ΠΎΡ˜ΡƒΠ²Π°Ρ‚Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈ Π·Π° Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π°, сСга ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°Π²Π΅Π΄Π΅Ρ‚Π΅ β€ž/β€œ Π·Π° Π΄Π° сС ΠΎΠ΄Π΄Π΅Π»Π°Ρ‚ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌ сС Π΄ΠΎΠ΄Π΅Π»Π°Ρ‚ врСдности само Π²Ρ€Π· основа Π½Π° рСдослСдот ΠΏΠΎ кој сС Π½Π°Π±Ρ€ΠΎΡ˜ΡƒΠ²Π°Π°Ρ‚ врСдноститС Π·Π° Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΏΠΎΠ²ΠΈΠΊΠΎΡ‚ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π°, ΠΎΠ΄ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ ΡˆΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π΄ΠΎΠ΄Π΅Π»Π°Ρ‚ ΠΏΠΎ кој Π±ΠΈΠ»ΠΎ рСдослСд (ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°=синтакса Π½Π° врСдност) ). Од ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½Π° страна, Π½ΠΎΠ²Π°Ρ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π° ΠΈΠΌ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π²ΠΎ Python цСлосно Π΄Π° Π³ΠΎ Π΅ΠΌΡƒΠ»ΠΈΡ€Π°Π°Ρ‚ ΠΎΠ΄Π½Π΅ΡΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° постоСчкитС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²ΠΎ C, Π° исто Ρ‚Π°ΠΊΠ° Π΄Π° ΠΈΠ·Π±Π΅Π³Π½ΡƒΠ²Π°Π°Ρ‚ Π²Ρ€Π·ΡƒΠ²Π°ΡšΠ΅ Π·Π° ΠΎΠ΄Ρ€Π΅Π΄Π΅Π½ΠΈ имиња, Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π°ΠΊΠΎ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Π°Ρ€ΠΎΡ‚ сС ΠΏΠ»Π°Π½ΠΈΡ€Π° Π΄Π° сС смСни Π²ΠΎ ΠΈΠ΄Π½ΠΈΠ½Π°.

    Π—Π½Π°ΠΌΠ΅Ρ‚ΠΎ β€ž/β€œ Π³ΠΎ Π½Π°Π΄ΠΎΠΏΠΎΠ»Π½ΡƒΠ²Π° ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΎΡ‚ΠΎ Π·Π½Π°ΠΌΠ΅Π½Ρ†Π΅ β€ž*β€œ, ΠΎΠ΄Π²ΠΎΡ˜ΡƒΠ²Π°Ρ˜ΡœΠΈ Π³ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡ‚Π΅ Π·Π° ΠΊΠΎΠΈ сС ΠΏΡ€ΠΈΠΌΠ΅Π½ΡƒΠ²Π° само Π΄ΠΎΠ΄Π΅Π»ΡƒΠ²Π°ΡšΠ΅ Π²ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° β€žΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°=Π²Ρ€Π΅Π΄Π½ΠΎΡΡ‚β€œ. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° β€ždef f(a, b, /, c, d, *, e, f):β€œ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡ‚Π΅ β€žaβ€œ ΠΈ β€žbβ€œ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π΄ΠΎΠ΄Π΅Π»Π°Ρ‚ само ΠΏΠΎ рСдослСдот Π½Π° Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡ‚Π΅ врСдности ,
    ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡ‚Π΅ β€žeβ€œ ΠΈ β€žfβ€œ, само ΠΏΡ€Π΅ΠΊΡƒ Π΄ΠΎΠ΄Π΅Π»ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ β€žΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°=Π²Ρ€Π΅Π΄Π½ΠΎΡΡ‚β€œ ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡ‚Π΅ β€žcβ€œ ΠΈ β€ždβ€œ Π½Π° кој Π±ΠΈΠ»ΠΎ ΠΎΠ΄ слСднивС Π½Π°Ρ‡ΠΈΠ½ΠΈ:

    f(10, 20, 30, 40, e=50, f=60)
    f(10, 20, s=30, d=40, e=50, f=60)

  • Π”ΠΎΠ΄Π°Π΄Π΅Π½ΠΎ Π½ΠΎΠ²ΠΎ C API
    Π΄Π° Π³ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅ Π·Π° ΠΈΠ½ΠΈΡ†ΠΈΡ˜Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π° Π½Π° Python, ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π°Ρ˜ΡœΠΈ цСлосна ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π° Π½Π°Π΄ ситС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ˜Π° ΠΈ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ Π½Π°ΠΏΡ€Π΅Π΄Π½ΠΈ ΠΊΠ°ΠΏΠ°Ρ†ΠΈΡ‚Π΅Ρ‚ΠΈ Π·Π° ΡΠΏΡ€Π°Π²ΡƒΠ²Π°ΡšΠ΅ со Π³Ρ€Π΅ΡˆΠΊΠΈ. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΎΡ‚ API Π³ΠΎ олСснува Π²Π³Ρ€Π°Π΄ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° функционалноста Π½Π° Ρ‚ΠΎΠ»ΠΊΡƒΠ²Π°Ρ‡ΠΎΡ‚ Π½Π° Python Π²ΠΎ Π΄Ρ€ΡƒΠ³ΠΈ C Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ;

  • Π˜ΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ Π½ΠΎΠ² ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Vectorcall Π·Π° ΠΏΠΎΠ±Ρ€Π· пристап Π΄ΠΎ ΠΎΠ±Ρ˜Π΅ΠΊΡ‚ΠΈ напишани Π½Π° јазик C. Π’ΠΎ CPython 3.8, пристапот Π΄ΠΎ Vectorcall сè ΡƒΡˆΡ‚Π΅ Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ Π½Π° Π²Π½Π°Ρ‚Ρ€Π΅ΡˆΠ½Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π°; трансфСрот Π²ΠΎ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° јавно достапни API Π΅ ΠΏΠ»Π°Π½ΠΈΡ€Π°Π½ Π²ΠΎ CPython 3.9;
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½ΠΎ ΠΏΠΎΠ²ΠΈΡ†ΠΈ Π΄ΠΎ Runtime Audit Hooks, ΠΊΠΎΠΈ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π°Π°Ρ‚ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Ρ€Π°ΠΌΠΊΠΈ Π²ΠΎ Python со пристап Π΄ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° ниско Π½ΠΈΠ²ΠΎ Π·Π° Π½Π°ΠΏΡ€Π΅Π΄ΠΎΠΊΠΎΡ‚ Π½Π° скриптата Π·Π° Ρ€Π΅Π²ΠΈΠ·ΠΈΡ˜Π° Π½Π° ΠΈΠ·Π²Ρ€ΡˆΠ΅Π½ΠΈΡ‚Π΅ Π΄Π΅Ρ˜ΡΡ‚Π²Π° (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ слСдитС ΡƒΠ²ΠΎΠ·ΠΎΡ‚ Π½Π° ΠΌΠΎΠ΄ΡƒΠ»ΠΈ, ΠΎΡ‚Π²ΠΎΡ€Π°ΡšΠ΅ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ Ρ‚Ρ€Π°Π³Π°, пристап Π΄ΠΎ ΠΌΡ€Π΅ΠΆΠ½ΠΈ ΠΏΡ€ΠΈΠΊΠ»ΡƒΡ‡ΠΎΡ†ΠΈ, ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅ Π½Π° ΠΊΠΎΠ΄ ΠΏΡ€Π΅ΠΊΡƒ exec, eval ΠΈ run_mod);
  • Π’ΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΠΎΡ‚ кисСла краставица ΠΎΠ±Π΅Π·Π±Π΅Π΄Π΅Π½ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΡ‚ Pickle 5, кој сС користи Π·Π° ΡΠ΅Ρ€ΠΈΡ˜Π°Π»ΠΈΡ€Π°ΡšΠ΅ ΠΈ Π΄Π΅ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ˜Π° Π½Π° ΠΎΠ±Ρ˜Π΅ΠΊΡ‚ΠΈ. Pickle Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° Π³ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Ρ‚Π΅ прСносот Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΊΠΎΠ»ΠΈΡ‡ΠΈΠ½ΠΈ Π½Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ ΠΏΠΎΠΌΠ΅Ρ“Ρƒ процСситС Π½Π° Python Π²ΠΎ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ со повСќС Ρ˜Π°Π΄Ρ€Π° ΠΈ повСќС јазли со Π½Π°ΠΌΠ°Π»ΡƒΠ²Π°ΡšΠ΅ Π½Π° Π±Ρ€ΠΎΡ˜ΠΎΡ‚ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° ΠΊΠΎΠΏΠΈΡ€Π°ΡšΠ΅ Π½Π° ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π° Π½Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ Π·Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ˜Π° ΠΊΠ°ΠΊΠΎ ΡˆΡ‚ΠΎ Π΅ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ Π·Π° ΠΊΠΎΠΌΠΏΡ€Π΅ΡΠΈΡ˜Π° спСцифични Π·Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ. ΠŸΠ΅Ρ‚Ρ‚Π°Ρ‚Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΡ‚ Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠ»ΠΈΠ²Π° ΠΏΠΎ Π΄ΠΎΠ΄Π°Π²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° Ρ€Π΅ΠΆΠΈΠΌ Π½Π° прСнос Π½Π°Π΄Π²ΠΎΡ€ ΠΎΠ΄ опсСгот, Π²ΠΎ кој ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈΡ‚Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС прСнСсуваат ΠΎΠ΄Π΄Π΅Π»Π½ΠΎ ΠΎΠ΄ Π³Π»Π°Π²Π½ΠΈΠΎΡ‚ Ρ‚Π΅ΠΊ Π½Π° кисСли краставички.
  • Π‘Ρ‚Π°Π½Π΄Π°Ρ€Π΄Π½ΠΎ, Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π° Π΅ Ρ‡Π΅Ρ‚Π²Ρ€Ρ‚Π°Ρ‚Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΡ‚ Pickle, која Π²ΠΎ спорСдба со Ρ‚Ρ€Π΅Ρ‚Π°Ρ‚Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ½ΡƒΠ΄Π΅Π½Π° стандардно, ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° повисоки пСрформанси ΠΈ Π½Π°ΠΌΠ°Π»ΡƒΠ²Π°ΡšΠ΅ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π°Ρ‚Π° Π½Π° прСнСсСнитС ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ;
  • Π’ΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΠΎΡ‚ ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ Π’ΠΎΠ²Π΅Π΄Π΅Π½ΠΈ сС Π½Π΅ΠΊΠΎΠ»ΠΊΡƒ Π½ΠΎΠ²ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:
    • Класа TypedDict Π·Π° Π°ΡΠΎΡ†ΠΈΡ˜Π°Ρ‚ΠΈΠ²Π½ΠΈ Π½ΠΈΠ·ΠΈ Π²ΠΎ ΠΊΠΎΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈΡ‚Π΅ Π·Π° Ρ‚ΠΈΠΏΠΎΡ‚ сС Сксплицитно Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈ Π·Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈΡ‚Π΅ ΠΏΠΎΠ²Ρ€Π·Π°Π½ΠΈ со ΠΊΠΎΠΏΡ‡ΠΈΡšΠ°Ρ‚Π° (β€žTypedDict('Point2D', x=int, y=int, label=str)β€œ).
    • Π’ΠΈΠΏ Π‘ΡƒΠΊΠ²Π°Π»Π½ΠΎ, ΡˆΡ‚ΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Π°Ρ€ ΠΈΠ»ΠΈ Π΄Π° ја Π²Ρ€Π°Ρ‚ΠΈΡ‚Π΅ врСдноста Π½Π° Π½Π΅ΠΊΠΎΠ»ΠΊΡƒ ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ врСдности (β€žΠ‘ΡƒΠΊΠ²Π°Π»Π½ΠΎ[β€žΠΏΠΎΠ²Ρ€Π·Π°Π½ΠΎβ€œ, β€žΠΈΡΠΊΠ»ΡƒΡ‡Π΅Π½ΠΎβ€œ]β€œ).
    • Π“Ρ€Π°Π΄Π±Π° "Π€ΠΈΠ½Π°Π»Π΅", ΡˆΡ‚ΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° сС Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π°Ρ‚ врСдноститС Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈΡ‚Π΅, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‚Π΅ ΠΈ класитС ΠΊΠΎΠΈ Π½Π΅ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° сС ΠΌΠ΅Π½ΡƒΠ²Π°Π°Ρ‚ ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π½Π°Π·Π½Π°Ρ‡ΡƒΠ²Π°Π°Ρ‚ ("pi: Final[float] = 3.1415926536").
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½Π° Π΅ моТност Π·Π° Π΄ΠΎΠ΄Π΅Π»ΡƒΠ²Π°ΡšΠ΅ кСш Π·Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°Π½ΠΈ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ со Π±Π°Ρ˜Ρ‚Π΅ΠΊΠΎΠ΄, Π·Π°Ρ‡ΡƒΠ²Π°Π½ Π²ΠΎ посСбно FS Π΄Ρ€Π²ΠΎ ΠΈ ΠΎΠ΄Π²ΠΎΠ΅Π½ ΠΎΠ΄ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡƒΠΌΠΈΡ‚Π΅ со ΠΊΠΎΠ΄ΠΎΡ‚. ΠŸΠ°Ρ‚Π΅ΠΊΠ°Ρ‚Π° Π·Π° Π·Π°Ρ‡ΡƒΠ²ΡƒΠ²Π°ΡšΠ΅ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ со Π±Π°Ρ˜Ρ‚Π΅ΠΊΠΎΠ΄ Π΅ поставСна ΠΏΡ€Π΅ΠΊΡƒ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° PYTHONPYCACHEPREFIX ΠΈΠ»ΠΈ ΠΎΠΏΡ†ΠΈΡ˜Π°Ρ‚Π° β€ž-X pycache_prefixβ€œ;
  • Π˜ΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ способноста Π΄Π° сС ΠΊΡ€Π΅ΠΈΡ€Π°Π°Ρ‚ изданија Π·Π° ΠΎΡ‚ΡΡ‚Ρ€Π°Π½ΡƒΠ²Π°ΡšΠ΅ Π³Ρ€Π΅ΡˆΠΊΠΈ Π½Π° Python ΠΊΠΎΠΈ користат ABI ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π΅Π½ со ΠΈΠ·Π΄Π°Π½ΠΈΠ΅Ρ‚ΠΎ, ΡˆΡ‚ΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° Π²Ρ‡ΠΈΡ‚Π°Ρ‚Π΅ СкстСнзии напишани Π½Π° јазик SI, ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°Π½ΠΈ Π·Π° стабилни изданија, Π²ΠΎ изданија Π·Π° ΠΎΡ‚ΡΡ‚Ρ€Π°Π½ΡƒΠ²Π°ΡšΠ΅ Π³Ρ€Π΅ΡˆΠΊΠΈ;
  • f-strings (Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€Π°Π½ΠΈ Π±ΡƒΠΊΠ²Π°Π»ΠΈ прСфиксирани со 'f') ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π°Π°Ρ‚ ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΡ‚ = (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "f'{expr=}'"), кој Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€Π°Ρ‚Π΅ ΠΈΠ·Ρ€Π°Π· Π²ΠΎ тСкст Π·Π° полСсно ΠΎΡ‚ΡΡ‚Ρ€Π°Π½ΡƒΠ²Π°ΡšΠ΅ Π³Ρ€Π΅ΡˆΠΊΠΈ. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

    β€Ίβ€Ίβ€Ί корисник = 'eric_idle'
    β€Ίβ€Ίβ€Ί Member_since = Π΄Π°Ρ‚ΡƒΠΌ (1975, 7, 31)
    β€Ίβ€Ίβ€Ί f'{user=} {member_since=}'
    "user='eric_idle' Member_since=datetime.date(1975, 7, 31)"

  • Π˜Π·Ρ€Π°Π·ΡƒΠ²Π°ΡšΠ΅ "ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΒ» Π΄ΠΎΠ·Π²ΠΎΠ»Π΅Π½ΠΎ Π΅ Π΄Π° сС користи Π²ΠΎ Π±Π»ΠΎΠΊ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ;
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½ Π΅ Π½ΠΎΠ² ΠΌΠΎΠ΄ΡƒΠ» ΠΌΡƒΠ»Ρ‚ΠΈΠΏΡ€ΠΎΡ†Π΅ΡΠΈΡ€Π°ΡšΠ΅.shared_memory, ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π°Ρ˜ΡœΠΈ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° сподСлСни мСмориски сСгмСнти Π²ΠΎ ΠΏΠΎΠ²Π΅ΡœΠ΅ΠΏΡ€ΠΎΡ†Π΅ΡΠ½ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ;
  • На ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Windows, ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° asyncio Π΅ прСмСстСна Π·Π° Π΄Π° сС користи класата ProactorEventLoop;
  • ΠŸΠ΅Ρ€Ρ„ΠΎΡ€ΠΌΠ°Π½ΡΠΈΡ‚Π΅ Π½Π° ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° LOAD_GLOBAL сС Π·Π³ΠΎΠ»Π΅ΠΌΠ΅Π½ΠΈ Π·Π° ΠΏΡ€ΠΈΠ±Π»ΠΈΠΆΠ½ΠΎ 40% ΠΏΠΎΡ€Π°Π΄ΠΈ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π°Ρ‚Π° Π½Π° Π½ΠΎΠ² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·Π°ΠΌ Π·Π° ΠΊΠ΅ΡˆΠΈΡ€Π°ΡšΠ΅ Π½Π° ΠΎΠ±Ρ˜Π΅ΠΊΡ‚Π½ΠΈΠΎΡ‚ ΠΊΠΎΠ΄.

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€