Modul OS dengan Python menyediakan akses ke fungsi khusus sistem untuk menangani sistem file, proses, penjadwal, dll. Anda perlu menguasai sistem Python OS untuk menulis aplikasi yang menangani masalah dunia nyata. Panduan ini membahas beberapa konsep inti dan menggambarkan cara menggunakan perintah sistem Python.
Fitur Sistem OS Python
Sistem OS berfungsi sebagai cara portabel untuk berinteraksi dengan sistem operasi yang mendasarinya. Ini menawarkan akses ke nama file, argumen baris perintah, variabel lingkungan, parameter proses, dan hierarki sistem file di samping fungsi lainnya.
Modul ini juga berisi dua sub-modul, modul os.sys, dan modul os.path. Anda dapat menggunakan fungsi yang disediakan oleh modul OS untuk melakukan berbagai tugas. Beberapa penggunaan umum termasuk menjalankan perintah shell, mengelola file dan direktori, proses pemijahan, dll.
Memulai Modul OS
Cara termudah untuk menjelajahi modul OS adalah melalui interpreter. Anda dapat mengimpor modul di sana dan menggunakan fungsi sistem tanpa menulis kode sumber. Anda harus menginstal Python untuk ini. Jadi lanjutkan dan instal Python di mesin lokal Anda.
Terkait: Cara Menginstal Python di Ubuntu
Mulailah penerjemah dengan mengetik python di terminal atau shell perintah Anda. Setelah terbuka, impor modul OS dengan menggunakan pernyataan berikut.
>>> impor os
Sekarang Anda dapat mengakses fungsionalitas yang disediakan oleh modul OS, termasuk Python sistem perintah. Misalnya, Anda dapat menentukan platform sistem menggunakan nama perintah. Contoh di bawah ini menunjukkan bagaimana menjalankan perintah sistem yang diekspos oleh modul OS.
>>> os.name
Fungsi ini memeriksa apakah ada modul khusus OS tertentu dan menentukan platform berdasarkan itu. Menggunakan nama kamu berfungsi untuk mendapatkan informasi rinci.
>>> os.uname ()
Perintah ini menampilkan platform sistem yang tepat di samping arsitektur mesin, rilis, dan informasi versi. Menggunakan getcwd berfungsi untuk mengambil direktori kerja saat ini.
>>> os.getcwd ()
Anda dapat dengan mudah mengubah direktori kerja menggunakan perintah sistem Python chdir. Teruskan lokasi baru sebagai parameter string.
>>> os.chdir ('/ tmp')
Itu mkdir Fungsi modul OS membuat pembuatan direktori baru menjadi mudah. Ini juga memungkinkan kita untuk membuat folder rekursif, yang berarti Python akan membuat semua direktori yang hilang yang merupakan induk dari direktori daun.
>>> os.mkdir ('dir-baru')
Menggunakan rmdir perintah untuk menghapus direktori dari direktori kerja Anda.
>>> os.rmdir ('dir-baru')
Contoh Perintah Sistem Python
Perintah sistem yang disediakan oleh modul OS memungkinkan pemrogram untuk menjalankan perintah shell. Pastikan untuk menentukan nama perintah sebagai string. Setelah Anda memanggil python sistem perintah, itu akan menjalankan perintah yang diberikan di subkulit baru.
>>> cmd = 'tanggal'
>>> os.system (cmd)
Anda dapat menjalankan aplikasi lain yang berdiri sendiri menggunakan metode yang sama ini. Contoh berikut mengeksekusi file editor terminal nano dari shell Python Anda.
>>> cmd = 'nano'
>>> os.system (cmd)
Sistem OS Python juga mengeluarkan kode pengembalian untuk setiap perintah yang dijalankan. Sistem POSIX mengembalikan 0 untuk eksekusi yang berhasil dan nilai bukan nol untuk menunjukkan masalah.
Anda dapat menggunakan sistem OS dengan Python untuk menjalankan apapun yang Anda inginkan. Misalnya, jika program Anda perlu membaca informasi versi program pada mesin pengguna, Anda dapat melakukan hal seperti berikut ini.
>>> cmd = 'gcc --version'
>>> os.system (cmd)
Contoh di bawah ini mengeksekusi perintah shell sederhana yang membuat file baru bernama users.txt dan mengisinya dengan semua pengguna yang masuk. Banyak program Python yang melakukan hal-hal ini.
>>> os.system ('pengguna> tes')
Kami mengirimkan nama perintah ke sistem OS sebagai string. Anda dapat menggunakan semua jenis perintah terminal yang berguna cara yang sama.
>>> os.system ('ping -c 3 google.com')
Anda juga bisa menggunakan subproses panggilan untuk menjalankan perintah sistem dari Python. Hal ini memberikan beberapa manfaat tambahan, termasuk runtime yang lebih cepat, penanganan error yang lebih baik, penguraian keluaran, dan perintah piping shell. Dokumentasi resmi Python juga merekomendasikan panggilan subproses melalui modul lama seperti sistem operasi dan os.spawn.
>>> subproses impor
>>> subprocess.run (["ping", "- c 3", "example.com"])
Mengelola File dan Direktori melalui Modul OS
Kami telah menunjukkan cara membuat file dan direktori sederhana menggunakan modul Python OS. Bagaimana jika Anda ingin membuat folder bersarang? Sistem OS juga menangani ini untuk kami para pemrogram. Misalnya, cuplikan di bawah ini membuat folder $ HOME / test / root / api. Ini juga akan membuat direktori induk yang diperlukan jika tidak tersedia.
>>> dirname = os.path.join (os.environ ['HOME'], 'test', 'root', 'api')
>>> cetak (dirname)
>>> os.makedirs (dirname)
Pertama, kami mengambil direktori home menggunakan mengepung dan kemudian bergabung dengan nama folder melalui os.path.join. Pernyataan cetak menampilkan nama folder, dan makedirs menciptakannya.
Kita dapat melihat direktori baru menggunakan listdir metode modul OS.
>>> os.chdir (os.path.join (os.environ ['HOME'], 'test', 'root', 'api'))
>>> os.system ('sentuh file1 file2 file3')
>>> os.listdir (os.environ ['HOME'])
Anda dapat dengan mudah mengganti nama direktori api menggunakan ganti nama perintah yang ditawarkan oleh modul OS. Pernyataan di bawah ini mengganti nama direktori api ini menjadi test-api.
>>> os.rename ('api', 'test-api')
Menggunakan isfile dan isdir fungsi OS jika program Anda perlu memvalidasi file atau direktori tertentu.
>>> os.path.isfile ('file1')
>>> os.path.isdir ('file1')
Modul OS di Python juga memungkinkan pengembang mengekstrak nama file dan folder bersama ekstensi file. Cuplikan di bawah ini menggambarkan penggunaan os.path.split dan os.path.splitext dalam kasus ini.
>>> dir = os.path.join (os.environ ['HOME'], 'test', 'root', 'api', 'file1.txt')
>>> dirname, basename = os.path.split (dir)
>>> cetak (dirname)
>>> cetak (nama dasar)
Gunakan kode di bawah ini untuk mengekstrak ekstensi seperti .txt atau .mp3 dari nama file.
>>> nama file, ekstensi = os.path.splitext (nama dasar)
>>> cetak (nama file)
>>> cetak (ekstensi)
Penggunaan Miscellaneous dari Sistem OS Python
Modul OS menawarkan banyak fungsi tambahan untuk memanipulasi hal-hal seperti proses pengguna dan penjadwal pekerjaan. Misalnya, Anda bisa dengan cepat mendapatkan UID (id pengguna) dari proses saat ini menggunakan getuid fungsi.
>>> os.getuid ()
>>> os.getgid ()
Itu getgid fungsi mengembalikan id grup dari proses yang berjalan. Menggunakan getpid untuk mendapatkan PID (id proses) dan getppid untuk mendapatkan id proses induk.
>>> os.getpid ()
>>> os.getppid ()
Anda juga dapat menggunakan modul OS untuk mengubah izin file dan direktori dari program Python Anda. Menggunakan chmod.dll fungsi OS untuk melakukan ini.
>>> os.chmod ('file1.txt', 0o444)
Perintah ini mengubah izin file1.txt untuk 0444. Menggunakan 0o444 dari pada 0444 untuk memastikan pernyataan tersebut kompatibel di kedua versi utama Python.
Memanfaatkan Kekuatan Sistem OS Python
Modul OS Python menyediakan semua yang Anda butuhkan untuk berinteraksi dengan sistem operasi yang mendasarinya. Pemahaman yang jelas tentang sistem OS diperlukan untuk menulis program lintas platform yang sesungguhnya. Kami telah membahas beberapa fungsi inti yang disediakan oleh modul ini untuk membantu Anda memulai. Cobalah sesuai keinginan Anda, dan jangan lupa untuk mengutak-atiknya.
Siap membawa pengkodean Python Anda ke level selanjutnya? Saatnya memahami cara membuat dan menggunakan tupel.
- Pemrograman
- Python
Rubaiat adalah lulusan CS dengan hasrat yang kuat untuk open-source. Selain sebagai veteran Unix, dia juga menyukai keamanan jaringan, kriptografi, dan pemrograman fungsional. Dia adalah kolektor buku bekas dan sangat mengagumi rock klasik.
Berlangganan newsletter kami
Bergabunglah dengan buletin kami untuk mendapatkan tip teknologi, ulasan, ebook gratis, dan penawaran eksklusif!
Satu langkah lagi…!
Harap konfirmasi alamat email Anda di email yang baru saja kami kirimkan kepada Anda.