我正在尝试将String插入列表中。
我收到了这个错误:
TypeError: can only concatenate list (not "tuple") to list
因为我试过这个:
var1 = 'ThisIsAString' # My string I want to insert in the following list
file_content = open('myfile.txt').readlines()
new_line_insert = file_content[:10] + list(var1) + rss_xml[11:]
open('myfile.txt', 'w').writelines(new_line_insert)
myfile.txt的内容作为列表保存在“file_content”中。 我想在第10行之后插入String var1,这就是我做的原因
file_content[:10] + list(var1) + rss_xml[11:]
但列表(var1)不起作用。如何使此代码有效? 谢谢!
答案 0 :(得分:9)
试
file_content[:10] + [var1] + rss_xml[11:]
答案 1 :(得分:3)
列表有一个插入方法,所以你可以使用它:
file_content.insert(10, var1)
答案 2 :(得分:2)
重要的是要注意“list(var1)”正在尝试将var1转换为列表。由于var1是一个字符串,它将类似于:
>>> list('this') ['t', 'h', 'i', 's']
或者,换句话说,它将字符串转换为列表字符。这不同于创建一个列表,其中var1是一个元素,最容易通过在元素周围放置“[]”来实现:
>>> ['this'] ['this']
答案 3 :(得分:1)
file_content = file_content[:10]
file_content.append(var1)
file_content.extend(rss_xml[11:])