回答編集履歴

2

追記

2017/12/27 10:39

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -36,6 +36,12 @@
36
36
 
37
37
 
38
38
 
39
+ また、基本的に相対パスは**縦方向の移動しか出来ません。**
40
+
41
+ ディレクトリscriptから**二階層上**のAppまで戻って、img_folderを見る必要があります。
42
+
43
+
44
+
39
45
  ついでに
40
46
 
41
47
  ---

1

追記

2017/12/27 10:39

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -18,8 +18,44 @@
18
18
 
19
19
 
20
20
 
21
- for file in path.iterdir():
21
+ for file_name in path.iterdir():
22
22
 
23
- print(file)
23
+ print(file_name)
24
24
 
25
25
  ```
26
+
27
+
28
+
29
+ 元のコードが上手くいかなかった理由
30
+
31
+ ---
32
+
33
+ カレントディレクトリが、test.pyがあるディレクトリと一致するとは限らないからです。
34
+
35
+ 前者は`Path.cwd().resolve()`や`os.getcwd()`で調査できます。
36
+
37
+
38
+
39
+ ついでに
40
+
41
+ ---
42
+
43
+ test.pyというモジュール名、dirといった変数名は避けた方が良いです。
44
+
45
+ 前者は標準モジュールを、後者は組み込み関数を潰してしまいます。
46
+
47
+
48
+
49
+ あと、fという変数名は次のような文脈で使うことが多いです。
50
+
51
+ ```Python
52
+
53
+ with open('hoge.txt') as f:
54
+
55
+ ...
56
+
57
+ ```
58
+
59
+
60
+
61
+ ファイルオブジェクトではなくファイル名であることを強調できる変数名が良いでしょう。