如何有条件地过滤python列表中的第一项?

时间:2012-09-07 07:16:45

标签: python list

我有以下功能:

def filterArgs( args ):
    filterflag = len(args)>=1 and args[0] == "-i"
    if flag:
        args = " ".join(args[1:]).strip()
    else:
        args = " ".join(args).strip()

在我的代码中,我称之为:

filterArgs( [ 106645929 ] )       #example 1
filterArgs( [ "-i", 106645929 ] ) #example 2

有没有办法在C中使用类似条件运算符的东西而忽略func filterArgs

args = filterflag ? args[1:] : args

我的目标是少写一行。

1 个答案:

答案 0 :(得分:4)

在python中,C cond ? iftrue : iffalse转换为iftrue if cond else iffalse

因此,args = args[1:] if filterflag else args