検索

ホームページ  >  に質問  >  本文

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

用Python做的 爬虫:

为什么第一个没有报错?

thx in advance

PHPzPHPz2893日前627

全員に返信(1)返信します

  • PHPz

    PHPz2017-04-17 17:57:52

    os.mkdir と os.makedirs の違いは、os.makedirs がディレクトリを再帰的に作成することです。つまり、Linux の mkdir -p と同様に、中継されたディレクトリも一緒に作成されます。

    リーリー

    os.mkdir を使用する場合、指定したパス パラメーターがマルチレイヤー パスであり、リレー ディレクトリが存在しない場合 (上記の例の foo など)、Python はエラーを報告します。

    しかし、os.makedirs を使用すると、Python は中間ディレクトリとともに作成されます。ただし、注意すべき点が 1 つあります。パスの末尾のディレクトリがすでに存在する場合、os.makedirs によっても例外が発生するということです。


    問題はここにあると思います。最初にhomeディレクトリが存在するかどうかを確認できます。

    ここでのパスの識別は、Python インタプリタを開始する場所によって異なることに注意してください。つまり、python を回避するには、home を実行するディレクトリの下に os.mkdir が存在する必要があります。 > エラーです。

    返事
    0
  • キャンセル返事