python - 从 5 行的列表列表中获取所有元素

标签 python

假设我有一个列表列表

x = [['#', '#', '#', '#', '#'], ['#', '0', ' ', ' ', '#'], ['#', '#', '#', ' ', '#']]

假设我需要将其分成 3 行字符串,我该怎么做?

这是我可以做到的方法,但它不可扩展,假设我有更多的列表,那么我将不得不写这么多打印语句。我想到了一个 for 语句

print "".join(mlist[0])
print "".join(mlist[1])
print "".join(mlist[2])

我一直在想这样的事情,但没有成功

zert = ""
total = 0
for a in mlist:
     for b in a:
        if total < 6:
            print zert
            total = 0
            zert = ''
        zert += b

        total += 1

^ 上面的问题是我需要先保存一个,然后迭代它但只是检查是否没有内置函数?我试过 ''.join(mlist) 但它确实有效,因为它在列表中列出?

有没有更简单的方法来做到这一点?

最佳答案

您可以使用列表理解来连接列表:

print '\n'.join([''.join(inner) for inner in mlist])

列表理解为每个嵌套列表创建一个字符串,然后我们将新的行列表连接到一个更大的带有换行符的字符串中。

演示:

>>> mlist = [['#', '#', '#', '#', '#'], ['#', '0', ' ', ' ', '#'], ['#', '#', '#', ' ', '#']]
>>> print '\n'.join([''.join(inner) for inner in mlist])
#####
#0  #
### #

您也可以使用 for 循环:

for inner in mlist:
    print ''.join(inner)

关于python - 从 5 行的列表列表中获取所有元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18251653/

相关文章:

python - 我只需要附加那些在 pyspark 数据框中具有非空值的人

python - 如何优化代码以从列表列表中删除所有列表中的 n 个位置

python - 为什么Selenium无法访问这些动态加载的元素?

python - pandas 日期时间,时间格式为 0 :00:00 (h:mm:ss)

python - 从 IntegrityError 异常中获取 key

python - Django FileField(或ImageField)open()方法为有效文件返回None?

python - "<faultcode/> not mapped to message part"的泡沫是什么意思?

python - Matplotlib 和 django 模板

python - keras zca_whitening - 没有错误,没有生成输出

python - 在selenium.py中,如何处理404状态码