将列表映射到元组?

时间:2015-05-05 00:33:49

标签: python lambda mapping tuples iterable

我正在尝试将行列表映射到具有行号和行长度的元组。我的说明要求我在Python中使用map,filter和reduce功能。

到目前为止,我已经有了过滤器,就在这里。

def code_metric(file):
    x = filter(lambda x : x != "\n", open(file))
    y = map(lambda x: )

它应该是什么样子......

(1,排队中的字符数)

我无法使用map函数将列表映射到行号和行长度。

3 个答案:

答案 0 :(得分:0)

尝试这样:

map(lambda x:(x[0], len(x[1])), enumerate(open('your_file'), start=1))

答案 1 :(得分:0)

这是解决方案,我最终得到了你的家伙'答案帮我推断了它。

filtered = map(lambda x : (1, len(x.strip('\n'))), mapper)

元组中的第一个值应该是默认值' 1' (对不起,伙计们!)

答案 2 :(得分:0)

def code_metric(file):
    with open(file, 'r') as f:
        metric = list(enumerate(map(len, f), 1))
    return metric

此功能可以满足您的需要。您能解释一下lambdareduce与此功能的关系吗?