前提・実現したいこと
python初心者です。
文字列の数を数え、合計として出すプログラムを書いているのですが、入力値がうまくいきません。
<お題>
<///// + </// = ?
<条件>
連続する "<" の数が整数の 10 の位を表し、それに続く連続する "/" (スラッシュ) の数が整数の 1 の位を表す
・"+" が足し算の記号を表す
この例だと27が答え。
例①///+////
→ 3 + 4 = 7
例②
<///////+<<</+////
→ 17 + 31 + 4 = 52
発生している問題・エラーメッセージ
input_line = str(input()) str_lis = list(input_line) def math_counter(input_line): str_lis.append(input_line) s = str_lis.count("<") * 10 v = str_lis.count("/") if "<" in str_lis: return s elif "/" in str_lis: return v elif "<" in str_lis and "/" in str_lis: return sum(s,v) print(math_counter(input_line))
入力値:<///////+<<</+////
出力結果 40
正答 52
該当のソースコード
ソースコード
試したこと
おそらく、冒頭の<を読み込んで一番上のif ブロックに移動しているんでしょうが、その解決策として elif を書いたのですがうまくいきません。何卒ご教授いただけると幸いです。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。