2020 telah datang, yang berarti bahwa Python 2 tidak lagi didukung . Tepatnya, pengembang utama sudah berhenti bekerja di cabang, dan rilis rilis 2.7.18, didedikasikan untuk PyCon US pada April 2020, akan menandai penghentian total aktivitas apa pun yang terkait dengan Python 2.
Di sisi lain, rilis terbaru Python 3.8 terjadi, menambahkan sedikit sintaksis bahasa. Python 3.9, bagaimanapun, belum diharapkan segera , namun sepertinya tidak menambahkan sesuatu yang menarik untuk bahasa.
Jadi jika Anda belum tiba-tiba meninggalkan Python 2, maka tidak ada gunanya menarik: dukungan untuk versi kedua sudah berhenti, dan transisi segera ke 3,8 akan memungkinkan Anda untuk menggunakan bahasa dalam keadaan saat ini untuk waktu yang lama.
Nah, untuk membuatnya lebih mudah untuk memutuskan, berikut ini adalah ikhtisar dari inovasi utama Python 3.8, yang akan berguna bagi setiap pythonist.
1. Ekspresi penugasan
Juga dikenal sebagai operator walrus, sintaks baru yang memungkinkan Anda untuk menetapkan nilai ke variabel di dalam ekspresi lain. Ini mungkin yang paling terkenal dan dibahas dari inovasi versi 3.8.
a = 6
Tujuan dari memperkenalkan operator adalah untuk meningkatkan keterbacaan kode, jadi menggunakannya (seperti semua operator lain) tidak diperlukan pada kesempatan pertama, tetapi hanya jika sesuai.
2. Hanya argumen posisi
Fungsinya dapat mengambil dua jenis argumen.
- Posisi - ditransmisikan oleh posisi
- Bernama - melewati nama
Dalam kode di bawah ini, nilai argumen a dan b dapat dilewati dengan posisi dan nama.
def my_func(a, b=1): return a+b my_func(5,2)
Dalam versi baru Python, Anda dapat secara eksplisit membatasi parameter mana yang hanya bisa posisional atau hanya dinamai menggunakan karakter / dan * dalam tanda tangan fungsi (yang terakhir, bagaimanapun, muncul sebelum Python 3.8).
Dalam contoh di bawah ini, dua parameter pertama a dan b hanya posisional, c dan d dapat berupa apa saja, dan dua terakhir e dan f harus dinamai.
def my_func(a, b, /, c, d, *, e, f): return a+b+c+d+e+f my_func(1, 2, 3, 4, 5, 6)
Mengapa membatasi fleksibilitas jenis argumen? Dalam beberapa kasus, menggunakan nama parameter alih-alih posisinya akan sia-sia dan tidak pantas. Pembatasan juga akan menghindari masalah jika Anda berencana untuk mengubah nama argumen posisi di masa depan.
3. f-lines 2.0
Sulit untuk menggambarkan dengan kata-kata betapa lebih mudah dan lebih elegannya format f-line yang muncul di Python 3.6.
Sulit dipercaya, tetapi Python 3.8 berhasil membuatnya lebih nyaman. Dengan menambahkan tanda = setelah nama variabel yang diganti, Anda dapat menampilkan nama dan nilainya tanpa menduplikasi nama.
pi = 3
Debug dengan cetakan akan lebih nyaman :)
4. Urutan terbalik dari entri kamus
Iterating over dictionary sekarang dapat dilakukan secara terbalik menggunakan terbalik () .
5. Memperoleh metadata dari modul lain
Modul importlib.metadata baru akan memungkinkan Anda untuk mendapatkan metadata (misalnya, versi) dari paket pihak ketiga.
6. akhirnya + melanjutkan
Sebelumnya, Anda tidak dapat menggunakan pernyataan lanjut di dalam akhirnya karena kesulitan dalam mengimplementasikan fitur ini. Sekarang kamu bisa.
for i in range(2): try: print(i) finally: print('.') continue print(' .')