Python 3.9.0

Keluaran stabil baharu bahasa pengaturcaraan Python yang popular telah dikeluarkan.

Python ialah bahasa pengaturcaraan tujuan umum peringkat tinggi yang bertujuan untuk meningkatkan produktiviti pembangun dan kebolehbacaan kod. Ciri-ciri utama ialah menaip dinamik, pengurusan memori automatik, introspeksi penuh, mekanisme pengendalian pengecualian, sokongan untuk pengkomputeran berbilang benang, struktur data peringkat tinggi.

Python ialah bahasa yang stabil dan meluas. Ia digunakan dalam banyak projek dan dalam pelbagai kapasiti: sebagai bahasa pengaturcaraan utama atau untuk mencipta sambungan dan integrasi aplikasi. Bidang utama aplikasi: pembangunan web, pembelajaran mesin dan analisis data, automasi dan pentadbiran sistem. Python kini menduduki tempat ketiga dalam ranking TIOBE.

Perubahan utama:

Penghurai berprestasi tinggi baharu berdasarkan tatabahasa PEG.

Dalam versi baharu, penghurai Python semasa berdasarkan tatabahasa LL(1) (KS-tatabahasa) digantikan dengan penghurai berprestasi tinggi dan stabil baharu berdasarkan PEG (tatabahasa PB). Penghurai untuk bahasa yang diwakili oleh tatabahasa KS, seperti penghurai LR, memerlukan langkah analisis leksikal khas yang memecahkan input mengikut ruang putih, tanda baca dan sebagainya. Ini adalah perlu kerana penghurai ini menggunakan penyediaan untuk memproses beberapa tatabahasa KS dalam masa linear. Tatabahasa RV tidak memerlukan langkah analisis leksikal yang berasingan, dan peraturan untuknya boleh ditetapkan bersama dengan peraturan tatabahasa yang lain.

Pengendali dan fungsi baharu

Dua pengendali baharu telah ditambahkan pada kelas dict terbina dalam, | untuk menggabungkan kamus dan |= untuk mengemas kini.

Dua fungsi baharu telah ditambahkan pada kelas str: str.removeprefix(prefix) dan str.removesuffix(suffix).

Pembayang jenis untuk jenis koleksi terbina dalam

Keluaran ini termasuk sokongan untuk sintaks penjana dalam semua koleksi standard yang tersedia pada masa ini.

def read_blog_tags(tags: list[str]) -> Tiada:
untuk tag dalam tag:
print("Nama Teg", teg)

Perubahan lain

  • PEP 573 Mengakses Keadaan Modul Menggunakan Kaedah Sambungan C

  • PEP 593 Fungsi Fleksibel dan Anotasi Pembolehubah

  • PEP 602 Python beralih ke keluaran stabil tahunan

  • PEP 614 Sekatan Tatabahasa Santai terhadap Penghias

  • Sokongan Pangkalan Data Zon Masa PEP 615 IANA dalam Perpustakaan Standard

  • BPO 38379 Pengumpulan sampah tidak menyekat pada objek yang dipulihkan

  • BPO 38692 os.pidfd_open, untuk mengawal proses tanpa perlumbaan dan isyarat;

  • Sokongan BPO 39926 Unicode dikemas kini kepada versi 13.0.0

  • BPO 1635741, Python tidak lagi bocor apabila memulakan Python beberapa kali dalam proses yang sama

  • Koleksi Python (julat, tuple, set, set beku, senarai, dict) dipercepatkan dengan panggilan vektor PEP 590

  • Beberapa modul Python (_abc, audioop, _bz2, _codecs, _contextvars, _crypt, _functools, _json, _locale, operator, resource, time, _weakref) kini menggunakan permulaan polifasa seperti yang ditakrifkan dalam PEP 489

  • Sebilangan modul perpustakaan standard (audioop, ast, grp, _hashlib, pwd, _posixsubprocess, rawak, pilih, struct, termios, zlib) kini menggunakan ABI stabil yang ditakrifkan oleh PEP 384.

Sumber: linux.org.ru

Tambah komen