map()输出将字符串添加到字符串数组Python

时间:2018-10-25 06:59:03

标签: python arrays string python-3.x dictionary

使用Python 3.6.1

time_vector = ['06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '00', '01', '02', '03', '04', '05', '06']

doublezeroes = "00"

time=map(str(time_vector), doublezeroes)

print(time)

我通过<>

在0x7ff64a3580f0获得地图对象

我需要

time = ['0600', '0700', '0800', '0900', '1000', '1100', '1200', '1300', '1400', '1500', '1600', '1700', '1800', '1900', '2000', '2100', '2200', '2300', '0000', '0100', '0200', '0300', '0400', '0500', '0600']

我确信可能会更简单,例如追加或插入,只是不确定如何到达那里。谢谢

5 个答案:

答案 0 :(得分:1)

最简单的方法可能是以下方法:

time = [v + doublezeroes for v in time_vector]

答案 1 :(得分:1)

您不需要使用map,只需将字符串附加到列表中即可:

In [1132]: new = [ s + '00' for s in time_vector]

In [1133]: new
Out[1133]: 
['0600',
 '0700',
 '0800',
 '0900',
 '1000',
 '1100',
 '1200',
 '1300',
 '1400',
 '1500',
 '1600',
 '1700',
 '1800',
 '1900',
 '2000',
 '2100',
 '2200',
 '2300',
 '0000',
 '0100',
 '0200',
 '0300',
 '0400',
 '0500',
 '0600']

答案 2 :(得分:0)

lambda函数与地图一起使用以获取输出

  

可以使用lambda关键字创建小的匿名函数。这个   函数返回其两个参数的总和:lambda a,b:a + b。   Lambda函数可在需要函数对象的任何地方使用。   在语法上将它们限制为单个表达式。

['0600', '0700', '0800', '0900', '1000', '1100', '1200', '1300', '1400', '1500', '1600', '1700', '1800', '1900', '2000', '2100', '2200', '2300', '0000', '0100', '0200', '0300', '0400', '0500', '0600']

输出

$doc = new DOMDocument();
$doc->loadHTML('<ul><li>123</li><li></li></ul>', LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD | LIBXML_COMPACT | LIBXML_NOERROR);
echo $doc->saveHTML();

答案 3 :(得分:0)

您可以使用str.ljust

例如:

time_vector = ['06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '00', '01', '02', '03', '04', '05', '06']
doublezeroes = "00"

print(list(map(lambda x: x.ljust(4, "0"), time_vector)))

输出:

['0600',
 '0700',
 '0800',
 '0900',
 '1000',
 '1100',
 '1200',
 '1300',
 '1400',
 '1500',
 '1600',
 '1700',
 '1800',
 '1900',
 '2000',
 '2100',
 '2200',
 '2300',
 '0000',
 '0100',
 '0200',
 '0300',
 '0400',
 '0500',
 '0600']

答案 4 :(得分:0)

尝试使用与您的代码几乎相同的代码,并添加 lambda表达式`

time_vector = ['06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '00', '01', '02', '03', '04', '05', '06']

time=list(map(lambda k: k+'00', time_vector))

print(time)