Map和lambda函数返回map对象

时间:2017-09-19 10:30:35

标签: python python-3.x

我正在使用python 3.4.3。我有以下结构的dict列表

test['content'] = [
{
"time_cre" : datetimeobject,
"name": "Sam",
"num": 123
},
{
"time_cre" : datetimeobject,
"name": "Sunil",
"num": 124
}

我使用map和lambda函数将datetime对象转换为string。我的代码是

map((lambda x:x.update({'time_cre': x['time_cre'].strftime("%Y-%m-%d")})),test['content'])

上述方法并未反映任何内容。

test['new'] = map((lambda x:x.update({'time_cre': x['time_cre'].strftime("%Y-%m-%d")})),test['content'])

上述方法有效但结果是

{
'content':{
"time_cre" : "2017-06-03",
"name": "Sam",
"num": 123
},
{
"time_cre" : "2017-06-03",
"name": "Sunil",
"num": 124
}
],
'new': <map object at 0x7f70e1fe4208>
}

那么为什么它不能用于第一种方法以及为什么要使用第二种方法呢?任何人都可以解释一下。

0 个答案:

没有答案