-1

特定のプロパティでいくつかの座標を分離する定義があります。この分離では、1 つの定義を使用し、定義内に 9 つのリスト (異なる基準) があります。出力については、私が定義したリストが必要です。そうしないと、プロットに使用できません。

def sorteerCord(cord):
    tweestijging=[]
    stijginggelijk=[]
    stijgingdaling=[]
    tweedaling=[]
    dalinggelijk=[]
    dalingstijging=[]
    tweegelijk=[]
    gelijkstijging=[]
    gelijkdaling=[]

    y=0
    while y<len(cord):
        lijst=cord[y]
        if (lijst[1]-lijst[0])>0.5:
            if (lijst[2]-lijst[1])>0.5:
                tweestijging.append(y)
            if (lijst[2]-lijst[1])<=0.5 and (lijst[2]-lijst[1])>=-0.5:
                stijginggelijk.append(y)
            if (lijst[2]-lijst[1])<-0.5:
                stijgingdaling.append(y)

        if (lijst[1]-lijst[0])<-0.5:
            if (lijst[2]-lijst[1])>0.5:
                dalingstijging.append(y)
            if (lijst[2]-lijst[1])<=0.5 and (lijst[2]-lijst[1])>=-0.5:
                dalinggelijk.append(y)
            if (lijst[2]-lijst[1])<-0.5:
                tweedaling.append(y)

        if (lijst[1]-lijst[0])<=0.5 and (lijst[1]-lijst[0])>=-0.5:
            if (lijst[2]-lijst[1])>0.5:
                gelijkstijging.append(y)
            if (lijst[2]-lijst[1])<=0.5 and (lijst[2]-lijst[1])>=-0.5:
                tweegelijk.append(y)
            if (lijst[2]-lijst[1])<-0.5:
                gelijkdaling.append(y)

        y=y+1       
    print raw_input()
    return raw_input()

私のdefで出力ファイルがどのようなものかを定義する方法はありますか(def sorterdCord(cord,outpu=twestijging)

4

1 に答える 1

3

最後の 2 行で、使用する出力リストをユーザーに入力してもらいたいのですが、よくわかりません。辞書を使用して、入力文字列を変数にマップできます。

何かのようなもの:

def sorteerCord(cord, output):
    # all of your separation code
    outputmap = { 'tweestijging': tweestijging,
                  'gelijkstijging' : gelijkstijging,
                   # and more of those
                 }
    return outputmap[ output ]

そして、次のように呼び出します。

sorteerCord(cord, 'gelijkstijging')

もちろん、すべてのリストを返すことを選択するか、代わりにそれらを辞書に保持することもできます。

output = { 'tweestijging': [],
       'gelijkstijging': [],
        # etc
        }

 # code to manipulate lists goes here

return output

その後、同じ手法を使用して 1 つを選択します。

于 2013-03-12T14:05:02.277 に答える