Python:为什么字符串不会附加到列表中的每个元素?

时间:2015-05-06 01:04:36

标签: python string list append output

files = "a.txtb.txt"

if files.find( ".txt" ) != -1:
    files = files.split( ".txt" )
    files.remove( "" )
    [ file + ".txt" for file in files ]
    print( files )

我是python的新手。我想要的输出最后是list files = [a.txt,b.txt],但出于测试原因,我必须首先在前面做所有这些事情。我不明白为什么字符串不能附加到列表中的所有元素。

3 个答案:

答案 0 :(得分:2)

您需要将列表分配回files。就目前而言,它只会抛出附加值的列表。

e.g。

files = [ file + ".txt" for file in files ]

答案 1 :(得分:2)

使用非贪婪的正则表达式查找包含的文本文件:

files = re.findall(r'\w+?\.txt', file_string)

答案 2 :(得分:-1)

您可以执行以下操作以获得所需的结果:

files = "a.txt, b.txt"
results = files.split( ',' )

在此之后,结果将以列表的形式包含所需的结果。