Alat CLI untuk secara otomatis menambahkan anotasi jenis ke dalam kode Python.
Skenario utama untuk menggunakan alat ini adalah membantu Anda membuat anotasi basis kode besar dan lama. Ini tidak akan menyelesaikan tugas untuk Anda 100% tetapi pasti akan sangat membantu Anda, karena banyak fungsi di dunia nyata memiliki jenis pengembalian yang cukup sederhana yang mudah disimpulkan secara otomatis.
Fitur:
Katakanlah, Anda memiliki metode berikut:
class Database :
def users_count ( self ):
return len ( self . users ) Karena len selalu mengembalikan int , infer-types mampu menyimpulkan jenis pengembalian metode. Jadi, setelah menjalankan alat, kode akan terlihat seperti ini:
class Database :
def users_count ( self ) -> int :
return len ( self . users )python3 -m pip install infer-typespython3 -m infer_types ./example/Alat ini akan menambahkan pernyataan impor baru yang dapat diduplikasi dan terletak tidak di bagian atas file. Untuk memperbaikinya, jalankan Isort:
python3 -m isort ./example/ Alat Infer-Types menggunakan sintaks mewah baru untuk anotasi jenis yang diperkenalkan di Python 3.10. Jadi, alih -alih Optional[str] akan memancarkan str | None . Jika kode Anda seharusnya berjalan pada versi python yang lebih lama, tambahkan from __future__ import annotations di awal setiap file. Ini akan menyelesaikan masalah dan juga membuat startup aplikasi Anda lebih cepat. Anda juga dapat melakukannya dengan Isort:
python3 -m isort --add-import ' from __future__ import annotations ' ./example/Lihat mengetik-python yang luar biasa untuk alat lebih lanjut untuk membantu Anda menganentasikan kode Anda.
None .yield , tipe pengembalian adalah typing.Iterator .is_open diasumsikan mengembalikan bool karena dimulai dengan is_ . Anda hanya dapat menjalankan heuristik spesifik menggunakan --only bendera.