cari

Rumah  >  Soal Jawab  >  teks badan

python - os.mkdir() 和 os.makedirs() 的区别

用Python做的 爬虫:

为什么第一个没有报错?

thx in advance

PHPzPHPz2893 hari yang lalu625

membalas semua(1)saya akan balas

  • PHPz

    PHPz2017-04-17 17:57:52

    Perbezaan antara

    os.mkdir dan os.makedirs ialah os.makedirs akan mencipta direktori secara rekursif, yang bermaksud bahawa direktori yang disampaikan juga akan dibuat bersama, sama seperti mkdir -p dalam Linux.

    >>> import os
    >>> os.mkdir('foo/bar')
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    OSError: [Errno 2] No such file or directory: 'foo/bar'
    >>> os.makedirs('foo/bar')

    Apabila menggunakan os.mkdir, jika parameter laluan yang anda berikan ialah laluan berbilang lapisan dan jika direktori geganti tidak wujud (seperti foo dalam contoh di atas), Python akan melaporkan ralat.

    Tetapi jika anda menggunakan os.makedirs, Python akan dibuat bersama-sama dengan direktori perantaraan. Tetapi satu perkara yang perlu diberi perhatian ialah jika direktori di hujung laluan sudah wujud, os.makedirs juga akan menyebabkan pengecualian.


    Saya rasa masalah anda ada di sini, anda boleh menyemak sama ada direktori home wujud pada mulanya.

    Perlu diambil perhatian bahawa pengenalan laluan di sini bergantung pada tempat anda memulakan penterjemah Python Maksudnya, anda mesti memastikan bahawa mesti ada python di bawah direktori tempat anda menjalankan home untuk mengelakkan <🎜. > kesilapan. os.mkdir

    balas
    0
  • Batalbalas