我正在尝试将文本写入文件,但除了目标字符串之外,我还需要包含其他文本。当我循环遍历目标字符串时,它会打印引号,因为其他文本需要引号。 如何从我插入每个循环的字符串中删除引号?
list=['random', 'stuff', 1]
with open(textfile, 'a') as txtfile:
for item in list:
print("""Need to have stuff before %a and after each loop string"""
%item, file=txtfile)
输出:需要在“随机”之前和每个循环字符串之后输入内容
期望的输出:需要在随机之前和每个循环字符串之后有东西。
答案 0 :(得分:3)
您可以使用str.format:
>>> li=['random', 'stuff', 1]
>>> for item in li:
... print("before {} after".format(item))
...
before random after
before stuff after
before 1 after
或者您可以将%s
与%
运算符一起使用:
>>> for item in li:
... print("before %s after" % item)
...
before random after
before stuff after
before 1 after
(不要调用列表list
,否则你将覆盖同名的Python函数......)
答案 1 :(得分:1)
您的代码是正确的,除非您需要使用%s
而不是%a
,因为您想以字符串形式输入(IE %s
是一个字符串)。