- Modul-modul Python dapat digunakan sebagai alat command-line
- Misalnya, jika modul
webbrowser dijalankan dari command line, modul tersebut dapat membuka URL yang diberikan melalui browser web bawaan
- Pustaka standar Python mencakup banyak hibrida modul-skrip seperti ini
- Jika Python dijalankan dengan opsi
-m, modul Python yang diberikan akan dieksekusi seperti skrip
- Beberapa modul melakukan tindakan tertentu saat di-import; misalnya, modul
antigravity membuka komik XKCD di browser web. Menjalankannya dari command line memberi efek yang sama seperti meng-import modul tersebut
- Ini disebut "import side effect", dan sebagian besar modul menghindarinya. Modul easter egg seperti
antigravity adalah pengecualian
- Modul yang menghindari import side effect menggunakan variabel
__name__ agar berperilaku berbeda saat di-import sebagai modul dan saat dijalankan sebagai skrip
Alat command-line serbaguna yang berguna
python -m http.server: memulai web server sederhana
python -m webbrowser: menjalankan browser web
python -m json.tool: memformat data JSON agar rapi
python -m calendar: menampilkan kalender di command line
Alat yang sangat berguna terutama di Windows
python3.12 -m uuid: mirip dengan utilitas CLI uuidgen
python3.12 -m sqlite3: mirip dengan utilitas CLI sqlite3
python -m zipfile: mirip dengan utilitas CLI zip & unzip
python -m gzip: mirip dengan utilitas CLI gzip & gunzip
python -m tarfile: mirip dengan utilitas CLI tar
Alat yang berguna saat mengerjakan kode Python
python -m pip: menginstal paket Python pihak ketiga
python -m venv: membuat virtual environment
python -m pdb: menjalankan debugger Python
python -m unittest: menjalankan tes unittest
python -m pydoc: melihat dokumentasi
python -m doctest: menjalankan doctest pada file yang diberikan
python -m ensurepip: menginstal pip
python -m idlelib: menjalankan REPL grafis IDLE
python -m zipapp: mengubah modul Python menjadi ZIP yang dapat dieksekusi
python -m compileall: mengompilasi file-file Python ke bytecode terlebih dahulu
Alat analisis kode Python
python -m tokenize: memecah modul Python menjadi token
python -m ast: menampilkan abstract syntax tree dari kode
python -m dis: mendisassemblikan kode Python menjadi bytecode
python -m inspect: memeriksa source code objek Python
python -m pyclbr: melihat ringkasan objek-objek dalam modul
Skrip-skrip menarik yang berfungsi sebagai easter egg Python
python -m __hello__: mencetak "Hello world!"
python -m this: mencetak The Zen of Python (PEP 20)
python -m antigravity: membuka komik XKCD nomor 353 terkait Python di browser web
python -m turtledemo: menampilkan demo berbagai gambar yang bisa dibuat dengan modul turtle
Alat lain terkait Python
python -m asyncio: menjalankan REPL Python dengan dukungan asyncio
python -m cProfile: melakukan profiling program Python
python -m pstats: melihat statistik profil yang dihasilkan oleh cProfile
python -m pickle: melihat isi file pickle (high-level)
python -m pickletools: membongkar file pickle (low-level)
Alat yang kurang berguna
python -m timeit: mengukur waktu eksekusi ekspresi Python
python -m site: melihat informasi "site" Python
python -m sysconfig: melihat detail konfigurasi Python
python -m platform: melihat informasi platform saat ini
python -m mimetypes: melihat informasi mimetype/ekstensi file
python -m quopri: mengenkode/dekode data email mentah
python -m filecmp: membandingkan isi dua direktori
python -m tabnanny: memeriksa campuran tab dan spasi dalam file Python
2 komentar
Wah, ternyata fiturnya jauh lebih bagus dari yang saya kira, mantap.
Saya ingat pernah masuk ke server Linux di lingkungan jaringan tertutup dengan membawa file zip, tapi tidak ada perintah
unzip, jadi saya mengekstraknya dengan modulpython -m zipfilelalu melanjutkan pekerjaan.