私は、クラス要素のリストに保存する相互依存する変数がたくさんあります。今度はクラスの特徴の1つにしたがってソートされたいと思っています。私はそれに応じて、リストを生成するために、ループのために試してみると以外を使用して、今すぐ一意の機能を持つPythonクラスを作成する
class myclass(object):
lst_of_A=[]
def __init__(self, Attr_A, Attr_B, Attr_C):
self.A=Attr_A
self.B=[Attr_B]
self.C=[Attr_C]
self.lst_of_A.append(Attr_A)
def append_to_existing_entry(self, Attr_B, Attr_C):
self.B.append(Attr_B)
self.C.append(Attr_C)
:現時点では、私がやっていることはこれです
my_lst_of_classes=[]
for el in read_in_data:
try:
ind=my_lst_of_classes[0].lst_of_A.index(el[0])
my_lst_of_classes[index].append_to_existing_entry(el[1],el[2])
except:
my_lst_of_classes.append(myclass(el[0],el[1],el[2]))
これは動作しますが、非常に不器用なようです。これを行うためのより良い方法はありますか?
少なくとも除いて'置き換える:: 'ValueErrorを除く'によって: 'ここ –
はあなたの問題の私の理解である
ここであなたが始める必要があり、簡単な例を示しますa、b、c) 'を読み込む。それぞれの 'a'(重複あり)の' b'と 'c'値を*グループ化(そして*ソート*しない)したいとします。たとえいくつかの例であなたのコードを実行した後でさえ、事実であるかどうかは不明です説明できますか? –
十分にはっきりしていないことを知らせてください。あなたの理解はほとんど正しいですが、入力は必ずしもタプルではありませんが、私の場合はリストのリストです。私のデータは、例えば、read_in_data [0] [0] = [1,0,1,0,0,0,0]、read_in_data [0] [1] = [0,2,4]、read_in_data [0] [2] = [1,1、-1,1]。次に、read_in_data [1] [0] = [1,0,1,0,0,0,0]、read_in_data [1] [1] = [0,2,6]、read_in_data [1] [2] = [1,1、-1,1]。 (したがって、read_in_data [0] [0] = read_data [1] [0]とread_in_data [0] [2] = read_in_data [1] [2]) – Eulenfuchswiesel