[英]concatenating a string with elements of list returns only the last element
我正在使用BeutifulSoup从html文件中提取某些数据,当我应用以下代码作为最终结果时,即标记子级列表的所有元素的连接,我仅在歌词中得到了final元素。变量。
lyrics = ""
for content in songResult.children:
if "br" in str(content):
continue
lyrics += str(content)
print(lyrics)
子级是br标签或songResult标签中的文本。 我忽略了br标签,并尝试使用print(content)
而不是lyrics += str(content)
然后打印效果完美。 我似乎无法找出问题的根源。 有什么建议吗?
对我来说很好。 我做了:
lyrics = ""
children = ['testbr', 'test', 'testbr2', 'test', 'testbr3']
for content in children:
if "br" in str(content):
continue
lyrics += str(content)
print('in loop'),
print(lyrics)
print('out of loop'),
print(lyrics)
上面的代码段对您有用吗?
确保此代码不在另一个循环中,以使“歌词”未重置为“”。 这将导致您描述的症状(在if语句中打印出来很好,但是“歌词”仅包含最后一个变量)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.