これは、私が今少し取り組んでいるプロジェクトの一部です。主に物事がどのように機能するかについての個人的な誤解が原因で、実際に書くことができるものと精神的な擬似コードを合成するのに苦労しています。
次のクラスを使用して、架空の果物屋の在庫を追跡しています。
class Fruit(object)
def __init__(self,name,qty,price)
self.color = str(color)
self.qty = int(qty)
self.price = float(price)
def getName(self): return self.color
def getQty(self): return self.qty
def getPrice(self): return self.price
def description(self): return self.color,self.qty,self.price
このクラスのオブジェクトは、辞書のキーの値としてインポートされます。各キーには複数の値がリストに格納されている可能性があり、辞書が印刷されると、次のようなものが返されます (読みやすくするために改行を入れています:)
Lemon: [(Yellow, 5, 2.99)]
Apple: [(Red, 10, 0.99), (Green, 9, 0.69)]
Cherry: [(White, 2, 5.99),(Red, 5, 5.99)]
私は今、架空の果物スタンドにあるすべての果物の合計値を取得しようとしています. 私の最初の考えは、各値をリストとして扱い、整数に達するまでリストを反復処理し、その整数にそのすぐ後ろのインデックスの浮動小数点数を掛けてから、その量を現在の合計を持つ変数に追加することでした。次に、別の整数を探し続けます。リスト「チェリー」の「インデックス1」が(2)ではなく(赤、5、5.99)ではない場合、これはうまく機能します。
それで、いくつか質問があります。
すべてクラスオブジェクトである複数の値を持つ辞書があるこのようなことをするたびに、各値は括弧として保存されます(それを呼び出すためのより良いものがないため)。それは起こっているべきことですか、または自分がやっていることのやり方を再評価する必要がありますか?
ここで自分の選択を再評価する必要がない場合、「括弧」を分解して(すぐに頭に浮かぶより良いものがないため)、全体を扱うことができる方法はありますか?リスト?
リストを繰り返し処理する必要のない、やりたいことを行うためのより良い方法はありますか?
前もって感謝します。私はこの問題のさまざまな部分と 1 週間格闘してきました。