Python:返回具有特定格式的函数列表

时间:2015-03-19 22:23:32

标签: python list function return

我有这个代码是Python函数的一部分,现在我需要它以特定格式返回数据。当我将数据封装在结果列表中时,我确实得到了数据但是带有['']。是否可以按照数据行中的指定返回此函数中的数据?我不希望Python添加额外的字符。

作为数据输入的列表是:

[{u'BeginDate': u'2015-03-17T00:00:00.000-04:00', u'CreationDate': u'2015-03-16T09:24:26.000-04:00', u'NetLoadMw': 11790, u'LoadMw': 11790}]

代码:

 result =[]
 for field in data: 
     time = field['BeginDate'].split("T")[1]
     h = time.split(":")[0]  
     m = time.split(":")[1] 
     data = ddate + " " + h +":"+ m + "," + str(field['LoadMw'])
     result.append(data)
 return result

如果我打印数据则输出:

031715 00:00,11790
031715 01:00,11390
031715 02:00,11200
031715 03:00,11180
031715 04:00,11500
031715 05:00,12560
031715 06:00,14570

如果我返回结果

,则输出
(u'031715 00:00,11790', u'031715 01:00,11390', u'031715 02:00,11200', u'031715 03:00,11180', u'031715 04:00,11500', u'031715 05:00,12560', u'031715 06:00,14570', u'031715 07:00,15620', u'031715 08:00,15720', u'031715 09:00,15600', u'031715 10:00,15790', u'031715 11:00,15490', u'031715 12:00,15240', u'031715 13:00,14900', u'031715 14:00,14590', u'031715 15:00,14460', u'031715 16:00,14620', u'031715 17:00,15200', u'031715 18:00,15850', u'031715 19:00,16610', u'031715 20:00,16430', u'031715 21:00,15520', u'031715 22:00,14230', u'031715 23:00,13070')

1 个答案:

答案 0 :(得分:1)

感谢您添加输入,输出和所需输出。这真的有帮助。我想我终于明白了。

您的函数返回列表并按原样打印。

我认为你想要的是将return语句修改为:

return '\n'.join(result)

或者只是这个:

print '\n'.join(result)

甚至这个:

for line in result:
  print line

我之前关于data的评论意味着您使用data 两者作为迭代器在for field in data中循环并作为data = ddate...中输出的一部分{1}}。