Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中连接map的值_Python_String_List - Fatal编程技术网

如何在python中连接map的值

如何在python中连接map的值,python,string,list,Python,String,List,我有一张像这样的地图: 0,15 1,14 2,0 3,1 4,12 5,6 6,4 7,2 8,8 9,13 10,3 11,7 12,9 13,10 14,11 15,5 打印我正在做的事情 def PrintValuesArray(su_array): for each in su_array: print ",".join(map(str, each)) 但是,我只希望值和逗号分开,如下所示: 我试过了 def PrintSuffixArray(su_arra

我有一张像这样的地图:

0,15
1,14
2,0
3,1
4,12
5,6
6,4
7,2
8,8
9,13
10,3
11,7
12,9
13,10
14,11
15,5
打印我正在做的事情

def PrintValuesArray(su_array):
    for each in su_array:
        print ",".join(map(str, each))
但是,我只希望值和逗号分开,如下所示:

我试过了

def PrintSuffixArray(su_array):
    for key, value in su_array:
        print ",".join(map(str, value))
但是得到

打印“,” 支持迭代

而且

def PrintSuffixArray(su_array):
    for key, value in su_array:
        print ",".join(map(str, value in su_array))
打印“,”.join(映射(str,su_数组中的值))类型错误:参数2到 map()必须支持迭代

如何打印结果

15, 14, 0, 1, 12, 6, 4, 2, 8, 13, 3, 7, 9, 10, 11, 5
试试这个:

print ", ".join(str(y) for x, y in su_array)
大概是这样的:

>>> su_array = [(0, 15), (1, 14), (2, 0), (3, 1), (4, 12), (5, 6), (6, 4), (7, 2), (8, 8), (9, 13), (10, 3), (11, 7), (12, 9), (13, 10), (14, 11), (15, 5)]
>>> ', '.join(str(b) for a, b in  su_array)
'15, 14, 0, 1, 12, 6, 4, 2, 8, 13, 3, 7, 9, 10, 11, 5'

首先,遍历列表,只获取第二个元素(可以用于速记)。然后使用
“,”。连接(列表)
以获得所需的输出,请参阅:

或者如果它们是元组:

>>> original = """0,15
... 1,14
... 2,0
... 3,1
... 4,12
... 5,6
... 6,4
... 7,2
... 8,8
... 9,13
... 10,3
... 11,7
... 12,9
... 13,10
... 14,11
... 15,5"""
>>>
>>> original_tuples = [tuple(i.split(",")) for i in original.split("\n")]
>>> original_tuples
[('0', '15'), ('1', '14'), ('2', '0'), ('3', '1'), ('4', '12'), ('5', '6'), ('6', '4'), ('7', '2'), ('8', '8'), ('9', '13'), ('10', '3'), ('11', '7'), ('12', '9'), ('13', '10'), ('14', '11'), ('15', '5')]
>>> ",".join(map(str,[j for i,j in original_tuples]))
'15,14,0,1,12,6,4,2,8,13,3,7,9,10,11,5'
或者,您可以跳过
映射(str,list)
并将元素转换为列表中的字符串

>>> ",".join(str(j) for i,j in original_tuples)
'15,14,0,1,12,6,4,2,8,13,3,7,9,10,11,5'
>>> ",".join(str(j) for i,j in original_tuples)
'15,14,0,1,12,6,4,2,8,13,3,7,9,10,11,5'
>>> a = """0,15
... 1,14
... 2,0
... 3,1
... 4,12
... 5,6
... 6,4
... 7,2
... 8,8
... 9,13
... 10,3
... 11,7
... 12,9
... 13,10
... 14,11
... 15,5
... """
>>> map(lambda x: x.split(',')[1], a.split())
['15', '14', '0', '1', '12', '6', '4', '2', '8', '13', '3', '7', '9', '10', '11', '5']