属性 'latest_level'を持つクラスがあり、これは浮動小数点数でなければなりません。私は別の浮動小数点数を返す方程式にlatest_levelを含むメソッドを持っています。私はラインを使用する場合は、この方法では、:私はself.latest_levelがリストであることを意味すると仮定しPython 3:これは浮動小数点ですか、リストですか?
TypeError: float() argument must be a string or a number, not 'list'
:
def relative_water_level(self):
level = float(self.latest_level)
を私は出力が得られます。 デフrelative_water_level(自己):私はこの行を変更した場合
level = float(self.latest_level[0])
を私は出力を得る:私は仮定
TypeError: 'float' object is not subscriptable
はself.latest_levelがfloatであることを意味します。誰もが、なぜこれが起こっているのか、どうすればself.latest_levelを浮動小数点として扱うことができるのか考えていますか?
編集:私は後で試してみません。この方法の残りの部分は次のとおりです。
level = float(self.latest_level[0])
low = float(self.typical_range[0])
high = float(self.typical_range[1])
return ((level - low)/high)
、エラーが__getitem__()
メソッドを実装して何かを指しエラーが
File "C:\Users\rache\Documents\Flood Warning\partia-flood-warning
system\floodsystem\station.py", line 58, in relative_water_level
level = float(self.latest_level[0])
TypeError: 'float' object is not subscriptable
こんにちは、レイチェルとスタックオーバーフローへようこそ。この動作を検証できるように、この動作を示すコードを組み込むことが最善の方法です。それがなければ、私たちは本当に役に立つ答えを与えることができません(推測に頼らなくてはなりません)。あなたが下付き文字を浮かべるためにキャストした後、私たちは本当に知ることができません。 –
こんにちはジム、助けてくれてありがとう。質問に余分なコードを追加します –
これら2つのエラーの完全なエラースタックトレースを表示してください。これらのエラーが同じメソッドで発生している場合、メソッドは2回の異なる時刻に呼び出される可能性があります.'latest_level'は1回floatで、リストはもう1回です。 – poke