Python 选择def返回的列表

Python 选择def返回的列表,python,user-defined-functions,Python,User Defined Functions,我有一个定义来分离特定属性上的一些坐标。 对于这种分离,我使用1个定义,在定义中我有9个列表(不同的标准)。现在对于输出,我只需要我定义的列表。否则我不能用它来绘图 def sorteerCord(cord): tweestijging=[] stijginggelijk=[] stijgingdaling=[] tweedaling=[] dalinggelijk=[] dalingstijging=[] tweegelijk=[]

我有一个定义来分离特定属性上的一些坐标。 对于这种分离,我使用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分拣机命令(线缆):
tweestijging=[]
Stijgingelijk=[]
stijgingdaling=[]
粗花呢=[]
dalinggelijk=[]
大灵寺井=[]
Tweegelik=[]
gelijkstijging=[]
格林达林=[]
y=0
而y0.5:
如果(lijst[2]-lijst[1])>0.5:
tweestijging.append(y)
如果(lijst[2]-lijst[1])=-0.5:
Stijgingelijk.追加(y)

如果(lijst[2]-lijst[1])我猜在最后两行中,您希望用户输入要使用的输出列表,但我不太确定。您可以使用字典将输入字符串映射到变量

比如:

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

然后使用相同的技术选择一个。

您所说的“输出文件是什么样的”是什么意思?它是什么样子的?基于谷歌翻译,我发现这是荷兰语。但是,如果您将变量名称更改为英语中更有意义的名称,这将对所有人都有用,因为像我这样不会说/懂荷兰语的人必须查找这些名称。我犯了一个错误,将整个列表声明转换为dict文本,给了您足够的时间在我之前回答!:-)我想知道为什么我是第一个。这里的代码竞赛是恶性的。谢谢你,格洛夫,这正是我的意思。很抱歉我的英语解释不好,但这正是我需要的。