質問編集履歴

1

プログラムとlogを追加しました

2019/02/07 01:36

投稿

mikaaa
mikaaa

スコア24

test CHANGED
File without changes
test CHANGED
@@ -12,4 +12,94 @@
12
12
 
13
13
 
14
14
 
15
+
16
+
17
+
18
+
19
+ pyQの解答構文は以下になります。returnは戻り値1こにつき1個ですよね?
20
+
21
+ -------------------------------------------------------------------------------------------------------
22
+
23
+ fruits_price = {'りんご': 100,
24
+
25
+ 'みかん': 50,
26
+
27
+ 'もも': 300}
28
+
29
+
30
+
31
+ # 税率(%)
32
+
33
+ tax = 8
34
+
35
+
36
+
37
+
38
+
39
+ # この下に関数get_priceを記述します
40
+
41
+ def get_price_in_tax(fruit_name):
42
+
43
+ """辞書fruits_priceから価格を取り出し、税込価格を計算する
44
+
45
+ 小数点以下は切り捨てます
46
+
47
+ """
48
+
49
+
50
+
51
+ if fruit_name not in fruits_price:
52
+
53
+ return int(fruits_price[fruit_name]*(tax/100+1))
54
+
55
+
56
+
57
+
58
+
59
+ def main():
60
+
61
+ # 今日仕入れた果物
62
+
63
+ today_fruits = ['ぶどう', 'りんご', 'みかん']
64
+
65
+ for fruit in today_fruits:
66
+
67
+ # 税込み価格の取得
68
+
69
+ fruit_price = get_price_in_tax(fruit)
70
+
71
+ # この下に処理を記述します
72
+
73
+ if fruit_price is not None:
74
+
75
+ print('{}の税込価格は{:,d}円です'.format(fruit, fruit_price))
76
+
77
+ else:
78
+
79
+ print('{}の価格は登録されていません'.format(fruit))
80
+
81
+ -----------------------------------------------------------------------------------------------------
82
+
83
+ returnを1個にすると以下のERRORが出ます。
84
+
85
+
86
+
87
+ Traceback (most recent call last):
88
+
89
+ File "fruits.py", line 33, in <module>
90
+
91
+ main()
92
+
93
+ File "fruits.py", line 24, in main
94
+
95
+ fruit_price = get_price_in_tax(fruit)
96
+
97
+ File "fruits.py", line 16, in get_price_in_tax
98
+
99
+ return int(fruits_price[fruit_name]*(tax/100+1))
100
+
101
+ KeyError: 'ぶどう
102
+
103
+
104
+
15
105
  よろしくお願い致します。