如何以特定方式打印字符串列表?

2024-05-17 01:05:59 发布

您现在位置:Python中文网/ 问答频道 /正文

给我一个字符串列表,我必须以特定的方式打印它们的元素。你知道吗

假设,L = ['RED', 'GREEN', 'BLUE']

输出应该是R G B E R L D E U E E N


Tags: 字符串元素列表方式greenbluered
3条回答

这可能可以通过嵌套while-for循环完成。像这样的

length_of_longest_string = 0
for s in L:
    length_of_longest_string = max(len(s), length_of_longest_string)

i = 0
result_string = ""
while i < length_of_longest_string:
    for s in L:
        if i >= len(s):
            continue
        else:
            result_string += s[i] + " "
    i += 1

print(result_string)

在这里,您只需使用for循环的初始值来查找最长字符串的长度。你知道吗

一个简单的for循环就可以完成这项工作。你知道吗

L = ['RED', 'GREEN', 'BLUE']

s = ''
for i in range(max([len(x) for x in L])): #len of longest word in L
    for item in L:
        try:
            s += item[i] + ' '
        except IndexError:
            pass

print(s)

R G B E R L D E U E E N 

它使用了一些先进的概念,但很整洁:

from itertools import zip_longest, chain
L = ['RED', 'GREEN', 'BLUE']
print(''.join(chain(*zip_longest(*L, fillvalue=''))))
# 'RGBERLDEUEEN'

要在字母之间包含空格,可以执行以下操作:

' '.join(''.join(chain(*zip_longest(*L, fillvalue=''))))
# R G B E R L D E U E E N

相关问题 更多 >