【发布时间】:2020-03-12 15:34:43
【问题描述】:
我对 python 还很陌生。遵循here 的建议,试图强制输出带有单组双引号的字符串(例如,"my_string"),但它总是以这样的方式打印出来:"""my_string"""
知道为什么吗?
我试过了:
'"' + my_string + '"' 和
f'"{self.args["name"]}"' 和 str(my_string) 和 "\"" + my_String + "\"" 但行为相同:
"""my_string"""
代码sn-p:
def print_out(self):
self.args = {}
self.args["name"] = 001
self.bla = 1
self.tra = 0
self.val = 0.12445
with open("my_file", "w") as fout:
tsv = csv.writer(fout, delimiter="\t")
tsv.writerow(["name", "bla", "tra", "hehe"])
tsv.writerow(
[f'"{self.args["name"]}"', self.bla, self.tra, round(self.val, 2)]
)
在上面的例子中,self.args["name"] 打印为"""001"""
谢谢
【问题讨论】:
-
print("Hello")应该在屏幕上显示为Hello,根本没有引号,所以你一定是在做一些不寻常的事情。向我们展示您正在使用的实际代码。否则我们只能猜测原因。 -
如何打印?你能提供一个Minimal, Reproducible Example吗?
-
显而易见的答案是它不是打印的神器;
my_string实际上包含引号。 -
默认方言使用
"引用包含字段分隔符或引号字符的字段。引号字符被转义,同样默认情况下,通过加倍它。 -
现在的问题是,您为什么要自己在该字段周围添加引号?
标签: python string formatting