MulaiMulai sekarang secara gratis

Mengubah direktori kerja

Anda menggunakan pustaka open-source yang memungkinkan Anda melatih deep neural networks pada data Anda. Sayangnya, selama pelatihan, pustaka ini menulis model checkpoint (yaitu model yang telah dilatih pada sebagian data) ke direktori kerja saat ini. Anda merasa perilaku itu menyebalkan karena Anda tidak ingin harus menjalankan skrip dari direktori tempat model akan disimpan.

Anda memutuskan salah satu cara untuk mengatasinya adalah menulis context manager yang mengubah direktori kerja saat ini, memungkinkan Anda membangun model, lalu mengembalikan direktori kerja ke lokasi asalnya. Anda perlu memastikan bahwa kesalahan apa pun yang terjadi selama pelatihan model tidak menghalangi Anda untuk mengembalikan direktori kerja ke lokasi asalnya.

Latihan ini adalah bagian dari kursus

Menulis Function di Python

Lihat Kursus

Petunjuk latihan

  • Tambahkan pernyataan yang memungkinkan Anda menangani kesalahan apa pun yang mungkin terjadi di dalam konteks.
  • Tambahkan pernyataan yang memastikan os.chdir(current_dir) akan dipanggil, baik ada kesalahan maupun tidak.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

def in_dir(directory):
  """Change current working directory to `directory`,
  allow the user to run some code, and change back.

  Args:
    directory (str): The path to a directory to work in.
  """
  current_dir = os.getcwd()
  os.chdir(directory)

  # Add code that lets you handle errors
  ____:
    yield
  # Ensure the directory is reset,
  # whether there was an error or not
  ____:
    os.chdir(current_dir)
Edit dan Jalankan Kode