teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

Add expression

2020/08/17 06:02

投稿

y_shinoda
y_shinoda

スコア3272

answer CHANGED
@@ -18,4 +18,38 @@
18
18
  ```console
19
19
  $ python main/main.py
20
20
  3
21
+ ```
22
+
23
+ ## 解説
24
+
25
+ まず、パスを追加するタイミングは import を行う前である必要があります
26
+
27
+ ```diff
28
+ + import sys
29
+ + sys.path.append('..')
30
+ from ccc import baz2
31
+ import baz
32
+ - import sys
33
+ - sys.path.append('..')
34
+
35
+
36
+ baz2.sum(1, 2)
37
+ ```
38
+
39
+ また、パスを追加するときはファイルからの相対パスで実装しておくと
40
+ コマンド実行時のディレクトリーに影響を受けて失敗することがなくなります
41
+
42
+ ```diff
43
+ + import os
44
+ import sys
45
+ + currentdir = os.path.dirname(os.path.realpath(__file__))
46
+ + parentdir = os.path.dirname(currentdir)
47
+ - sys.path.append('..')
48
+ + sys.path.append(parentdir)
49
+
50
+ from ccc import baz2
51
+ import baz
52
+
53
+
54
+ baz2.sum(1, 2)
21
55
  ```