実践・上級問題チェック

問題 30 /40

特定のファイルを除外して、ディレクトリ「src」配下のファイルやディレクトリを「dst」にまるごとコピーする場合、次のコードの【A】と【B】に記述する関数はどれか。

import shutil

ignore = shutil.【A】('*.txt', '*.jpg')

shutil.【B】('/src', '/dst', ignore=ignore)

選択 1

【A】 ignore_patterns
【B】 copydir

選択 2

【A】 exclude
【B】 copydir

選択 3

【A】 ignore_patterns
【B】 copytree

選択 4

【A】 exclude
【B】 copytree

解説

選択肢3が正解です。

copytree()関数を使用すると、特定のディレクトリ配下のファイルやディレクトリを、まるごとコピーできます。

問題文では、ignore_patterns()関数を使って拡張子「txt」と「jpg」のファイルを除外しています。

ignore_patterns()関数で「ignore」という呼び出し可能オブジェクトを作成し、copytree関数の引数で「ignore=ignore」と指定して除外しています。


(公式書籍 p.260-261)