回答編集履歴

4

追記

2018/08/05 12:33

投稿

umyu
umyu

スコア5846

test CHANGED
@@ -58,6 +58,12 @@
58
58
 
59
59
  > 入力されたスクリプトのあるディレクトリ (あるいはファイルが指定されなかったときはカレントディレクトリ)。
60
60
 
61
+ ~中略
62
+
63
+ スクリプトファイルを含むディレクトリが検索パスの先頭、標準ライブラリパスよりも前に追加されます。なので、ライブラリのディレクトリにあるファイルよりも、そのディレクトリにある同じ名前のスクリプトが優先してインポートされます。
64
+
65
+
66
+
61
67
 
62
68
 
63
69
  `selenium`フォルダにある`__init__.py`ファイルにより`selenium`フォルダが[6.4. パッケージ](https://docs.python.jp/3/tutorial/modules.html#packages)化されて

3

まちがっってたあああ

2018/08/05 12:33

投稿

umyu
umyu

スコア5846

test CHANGED
@@ -36,8 +36,6 @@
36
36
 
37
37
  XXXX
38
38
 
39
- +- __init__.py # 質問文の"moduleとして実行しても変わらず"の記載により導出できるファイルです。(※質問者様以外への説明です。)
40
-
41
39
  +- test_ut.py
42
40
 
43
41
  +- selenium

2

追記

2018/08/05 07:05

投稿

umyu
umyu

スコア5846

test CHANGED
@@ -36,6 +36,8 @@
36
36
 
37
37
  XXXX
38
38
 
39
+ +- __init__.py # 質問文の"moduleとして実行しても変わらず"の記載により導出できるファイルです。(※質問者様以外への説明です。)
40
+
39
41
  +- test_ut.py
40
42
 
41
43
  +- selenium

1

追記

2018/08/05 06:56

投稿

umyu
umyu

スコア5846

test CHANGED
@@ -8,8 +8,62 @@
8
8
 
9
9
 
10
10
 
11
- > File "/ababa/selenium/webtest1.py", line 2, in <module>
11
+ > File "/XXXX/selenium/webtest1.py", line 2, in <module>
12
12
 
13
13
 
14
14
 
15
15
  ディレクトリ名が`selenium`モジュールとかぶっています。別の名前に変更してくださいな。
16
+
17
+
18
+
19
+ ---
20
+
21
+ ◇補足説明
22
+
23
+ > File "/XXXX/test_ut.py", line 2, in <module>
24
+
25
+ > import selenium.webtest1
26
+
27
+ > File "/XXXX/selenium/webtest1.py", line 2, in <module>
28
+
29
+ > from selenium import webdriver
30
+
31
+
32
+
33
+ 例外スタックトレースによるとプログラム階層が以下になります。
34
+
35
+ ```Python
36
+
37
+ XXXX
38
+
39
+ +- test_ut.py
40
+
41
+ +- selenium
42
+
43
+ +- webtest1.py
44
+
45
+ +- __init__.py # ←質問文に記載がないのですが、このファイルがあるのでは?。
46
+
47
+ ```
48
+
49
+
50
+
51
+ > python36 selenium/webtest1.py
52
+
53
+ > python36 test_ut.py
54
+
55
+
56
+
57
+ この2つのコマンドの動作の違いは、[6.1.2. モジュール検索パス](https://docs.python.jp/3/tutorial/modules.html#the-module-search-path)の以下の部分です。
58
+
59
+ > 入力されたスクリプトのあるディレクトリ (あるいはファイルが指定されなかったときはカレントディレクトリ)。
60
+
61
+
62
+
63
+ `selenium`フォルダにある`__init__.py`ファイルにより`selenium`フォルダが[6.4. パッケージ](https://docs.python.jp/3/tutorial/modules.html#packages)化されて
64
+
65
+ モジュールの解決に影響を与えました。
66
+
67
+
68
+
69
+ IDE(`Pycharm community edition`)などを使用すると、こういうトラブルは防げるかと。