I'vは私のpythonを学びながらに苦労し、私の例では い問題につまずいた、私はオブジェクトが移入リストを持っている(これらのオブジェクトを個別にアクセスすることができるリストそのものです)リスト内の項目をソート/グループ化する、より複雑な基準を扱うにはどうすればよいですか?
list_objects =[object5, object2, object4, object1, ojbject3, object6, object7, object8, object9]
- INPUT 0()
- INPUT1()
- 出力:各オブジェクトが別のオブジェクトを指す機能を有します()
オブジェクトのいくつかはお互いに接続されている可能性があります。
object4.input0() == objectA
など:ようlist_objects
ではありません
object5.input0() == object4 # object5 input points to object4
そして、時にはオブジェクトの一部が他のオブジェクトに接続されていることが起こることができる:あることが起こる可能
object4.input1() == objectM1
最後に、複数のオブジェクトがこのように互いに接続されていることがあります(いくつかの図面で私ができる限り上手く説明しようとします):
objectA
| # this is output of objectA
|
v # this is input0 of object4
object4 < # input1 of object 4
| \
| -- objectM1
v /
object5 < # input1 of object 4
|
|
v
objectB
|
|
v
object1 <
| \
| \
v \
object2 <--- objectM2
| /
| /
v /
object3 <
|
|
v
object6 <
| \
| \
v \
object8 <--- objectM3
| /|
| /|
v /|
object7 < |
| /
| /
v /
object9 <
|
|
v
#(here is None or it goes on)
そして今、望ましい結果は、私が何とかlist_objects
内のオブジェクトをフィルタリングし、このように相互に接続されているだけで、最初と最後のオブジェクトを取得することです:
new_list =[[object4, object5], [object1, object3], [object6, object9]]
ここ順序が重要です..私はリストの最初のオブジェクトを最初に取得する必要があり、最後に表示されるように最後のオブジェクトを取得する必要があります。
私は問題を十分に説明してくれることを願っています。
これは良い解決策を見つけることができないようですが、私はループとwhileループの2倍を試しました..しかし、これと一緒に行くと、何度も何度も実行して結果が得られますそれらのアプローチと時間の混乱のカップルを得て、私は一日中試してみてあきらめました。
は、あなたがあなたの手のグラフを持っているあなたに