1

Python で ac# LINQ foreach ステートメントを複製しようとしています。もっと良い方法があると確信しています。

私が(c#で)持っているとしましょう:

    public class TestData
    {
        public int Id { get; set; }
        public string Something { get; set; }
    }

    void MyMethod()
    {
        List<TestData> myList = new List<TestData>();
        foreach (var i in myList.Where(x => x.Id > 5))
        {
            //do something
        }
    }

Python(2.7)でこれとまったく同じことをしたいと思います。必要なのは foreach ループだけです。私がダウンした他のすべて。

誰かが私を正しい方向に向けることができますか?

4

1 に答える 1

7

うん、それはとても簡単です。中括弧が付いているものはリスト内包表記と呼ばれます。

for i in [x for x in myList if x.Id > 5]:
    pass #do something
于 2013-01-09T19:47:18.090 に答える