実践・上級問題チェック
問題 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)