Уважаемые разработчики, подскажите как правильно реализовать группировку по двум полям на python2?
На C# в mono я сделал бы это так:
class Record
{
public int i;
public bool f;
public string data;
public Record(int _i, bool _f, string _data)
{
i = _i;
f = _f;
data = _data;
}
}
public static void Main (string[] args)
{
var array = new []
{
new Record(0, true, "A"),
new Record(1, false, "B"),
new Record(0, true, "C"),
new Record(9, false, "D"),
new Record(1, false, "E"),
};
var groups = from record in array
group record by new { record.i, record.f };
foreach (var g in groups)
Console.WriteLine("i = {0}, f = {1}, records: {2}", g.Key.i, g.Key.f, string.Join(", ", g.Select(record=>record.data).ToArray()));
}
В результате:
i = 0, f = True, records: A, C
i = 1, f = False, records: B, E
i = 9, f = False, records: D
На python2:
class Record:
def __init__(self, i, f, data):
self.i = i;
self.f = f;
self.data = data;
array = [Record(0, True, "A"),
Record(1, False, "B"),
Record(0, True, "C"),
Record(9, False, "D"),
Record(1, False, "E")]
# ???