Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.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 将列表字典打印为一行_Python_String_List_Dictionary - Fatal编程技术网

Python 将列表字典打印为一行

Python 将列表字典打印为一行,python,string,list,dictionary,Python,String,List,Dictionary,我有一本清单字典,如下所示 >>> my_dict {'a': [1, 2, 3], 'b': [4, 5, 6]} 我想像这样在一行中打印所有的值 a123b456 我能做到这一点 >>> print(''.join('{0}{1}'.format(x,y) for x,y in my_dict.iteritems())) a[1, 2, 3]b[4, 5, 6] 还有这个 >>> print(''.join('{0}{1}{2}'.

我有一本清单字典,如下所示

>>> my_dict
{'a': [1, 2, 3], 'b': [4, 5, 6]}
我想像这样在一行中打印所有的值

a123b456
我能做到这一点

>>> print(''.join('{0}{1}'.format(x,y) for x,y in my_dict.iteritems()))
a[1, 2, 3]b[4, 5, 6]
还有这个

>>> print(''.join('{0}{1}{2}'.format(x,y,z) for x,y in my_dict.iteritems() for z in y))
a[1, 2, 3]1a[1, 2, 3]2a[1, 2, 3]3b[4, 5, 6]4b[4, 5, 6]5b[4, 5, 6]6
还有这个

>>> print(''.join('{0}{1}'.format(x,y) for x,z in my_dict.iteritems() for y in z))
a1a2a3b4b5b6
不过,有一个条件,我希望使用单行打印,而不使用字符串或嵌套循环。我知道这一行本身就是一个嵌套循环

print ''.join([''.join((k, ''.join([str(x) for x in v]))) for k,v in my_dict.iteritems()])
从字典中抓取每个(键、值)项对。 首先,连接值列表的字符串表示形式(例如“123”)。 然后将键连接到该键(例如“a123”)。 最后,外部的连接将连接字典的所有字符串

从字典中抓取每个(键、值)项对。 首先,连接值列表的字符串表示形式(例如“123”)。 然后将键连接到该键(例如“a123”)。
最后,外部的连接将连接字典的所有字符串。

我想到了两种方法:

  • 生成包含字典所有(键、值)对的字符串表示形式的单个列表:

    ['a123'、'b456']

  • 生成包含所有键和值列表的单个(平面)列表:

    ['a','1','2','3','b','4','5','6']

  • 在这两种情况下,可以通过连接所有列表项来生成最终字符串

    以下是几种可能的实现方式:

    • print''。在d.iteritems()中为k,v加入('''.join(map(str,[k]+v))
    • print''。在d.iteritems()中为k,v连接(str(k)+''。连接(map(str,v))
    • print'。在d.iteritems()中为k,v加入(“%s%s”%(k),.join(map(str,v)))
    • print'。加入(映射(str,sum([k]+v代表k,v代表d.iteritems(),[]))

  • 我想到了几种方法:

  • 生成包含字典所有(键、值)对的字符串表示形式的单个列表:

    ['a123'、'b456']

  • 生成包含所有键和值列表的单个(平面)列表:

    ['a','1','2','3','b','4','5','6']

  • 在这两种情况下,可以通过连接所有列表项来生成最终字符串

    以下是几种可能的实现方式:

    • print''。在d.iteritems()中为k,v加入('''.join(map(str,[k]+v))
    • print''。在d.iteritems()中为k,v连接(str(k)+''。连接(map(str,v))
    • print'。在d.iteritems()中为k,v加入(“%s%s”%(k),.join(map(str,v)))
    • print'。加入(映射(str,sum([k]+v代表k,v代表d.iteritems(),[]))

  • 你的问题是什么?请完整地阅读问题。你的问题是什么?请完整地阅读问题。好的,非常感谢!这很有帮助。我就快到了。只是错过了外部连接。很高兴能帮忙。顺便说一句,小心这个词。“外部联接”是一种常见的数据库操作。:-)好的,非常感谢!这很有帮助。我差点就到了。只是错过了外部联接。很高兴提供帮助。顺便说一句,请小心这个术语。“外部联接”是一种常见的数据库操作。:-)这确实有帮助。我已经尝试了一段时间的变通方法。当然,在我的实现中,
    d
    是您称之为
    my_dict
    的字典。这确实有帮助。我已经尝试了一段时间的变通方法。当然,在我的实现中,
    d
    是您称之为
    my_dict
    的字典。