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

質問編集履歴

3

誤字を訂正しました

2020/10/27 08:39

投稿

IchikawaHikaru
IchikawaHikaru

スコア2

title CHANGED
File without changes
body CHANGED
@@ -46,7 +46,7 @@
46
46
 
47
47
  追記
48
48
  TakaiYさんご返答頂きありがとうございます。
49
- 問題はimportを使った先のファイルなのではという仮説が浮かびました。
49
+ 問題はimportを使った先のファイルなのではという仮説が浮かびました。
50
50
  pythonには組み込みモジュールにselectという名前のものがあり、importを実行する際に私が作ったファイルではなくそちらを読み込んでいたというものです。
51
51
  試しにselectという名前をselectsという名前にしたら問題なく動作しました。
52
52
 

2

問題に関する仮説を提示しました。

2020/10/27 08:39

投稿

IchikawaHikaru
IchikawaHikaru

スコア2

title CHANGED
File without changes
body CHANGED
@@ -41,4 +41,16 @@
41
41
  print (x+":"+str(value[i])+"円")
42
42
 
43
43
  choice = item[input ("購入したい商品を選んでください。:")]
44
- ```
44
+ ```
45
+
46
+
47
+ 追記
48
+ TakaiYさんご返答頂きありがとうございます。
49
+ 問題はimportを使った先のファイルなのではという仮説が浮かびました。
50
+ pythonには組み込みモジュールにselectという名前のものがあり、importを実行する際に私が作ったファイルではなくそちらを読み込んでいたというものです。
51
+ 試しにselectという名前をselectsという名前にしたら問題なく動作しました。
52
+
53
+ そこで追加の質問となってしまうのですが、
54
+ 1.この仮説は間違いないでしょうか、また、importでは必ず組み込みモジュールが優位に働くという解釈で間違いないでしょうか。
55
+ 2.今後このようなことがないようにするために自分のファイル名が組み込みモジュールと被っていないかを調べる方法はあるのでしょうか。
56
+ 一度自力で調べたのですがうまく理解できませんでした。ご返答お待ちしております。

1

コードを掲載しました。

2020/10/27 08:37

投稿

IchikawaHikaru
IchikawaHikaru

スコア2

title CHANGED
File without changes
body CHANGED
@@ -11,4 +11,34 @@
11
11
  ```
12
12
 
13
13
  このコードを他ファイルからimportして動かすにはどうすればよいのでしょうか。
14
- 他ファイルからimportしたら何も起きませんでした。(エラーも起きていません。)
14
+ 他ファイルからimportしたら何も起きませんでした。(エラーも起きていません。)
15
+
16
+
17
+ 追記
18
+
19
+ TakaiYさんご丁寧に有難うございます。
20
+ 下記にコードを表示いたします。
21
+ ```Python 3.9 で、ファイル名はtest.pyです
22
+ money = input ("お金をいれてください:")
23
+
24
+ int(money)
25
+ import select
26
+ re_money = money - select.choice
27
+ if re_money >= select.choice :
28
+ print ("{}円返金".format(re_money))
29
+ print ("ありがとうございました!")
30
+ else :
31
+ print ("お金が足りません。。。")
32
+ print ("{}を返金".format (money))
33
+ ```
34
+ ```ファイル名はselect.pyです。
35
+ drink = ["綾鷹"]
36
+ value = [150]
37
+
38
+ item = dict (zip(drink,value))
39
+
40
+ for i , x in enumerate(drink):
41
+ print (x+":"+str(value[i])+"円")
42
+
43
+ choice = item[input ("購入したい商品を選んでください。:")]
44
+ ```