首页 > 解决方案 > 复制循环中的所有字符串输出(不在列表中)

问题描述

我有以下示例代码:

from pyperclip import copy

numbers = [1,2,3]

for i in range (1,len(numbers)):

    text1 = 'Hi' + str(i) + '\n'
    text2 = 'Hello' + str(i) + '\n'
    
    copy(text1 + text2)

# Hi 3
# Hello 3

我尝试将文本附加到列表中,但无法获得与我想要的相同的输出。

我想获得以下输出,而不是获得循环的最后一个输出:

Hi 1
Hello 1
Hi 2
Hello 2
Hi 3
Hello 3

标签: pythonstringlistappend

解决方案


试试这个,

from pyperclip import copy

numbers = [1, 2, 3]

tmp = []
for i in range(1, len(numbers)):
    text1 = 'Hi' + str(i) + '\n'
    text2 = 'Hello' + str(i) + '\n'

    tmp.append(text1 + text2)  # <-- accumulate all the values

copy("".join(tmp)) # <-- Copy outside of the loop̵

推荐阅读