文件写入场景下,如何移除循环插入字符串的引号?
嘿,这个问题我之前也碰到过!大概率是你在拼接输出文本的时候,不小心把目标字符串套进引号里了,或者你的目标变量本身就带着引号。给你两种常见场景的解决办法:
情况1:拼接文本时手动加了引号(最常见)
比如你可能写了类似这样的代码(拿Python举例子,其他语言逻辑通用):
targets = ["random", "foo", "bar"] for target in targets: # 这里不小心把 {target} 用单引号包起来了 output_line = f"Need to have stuff before '{target}' and after each loop string." print(output_line) # 输出就会带引号
解决办法超简单,直接把拼接时的单引号去掉就行:
output_line = f"Need to have stuff before {target} and after each loop string."
这样输出就会是你想要的无引号版本。
情况2:目标字符串本身就包含引号
如果你的目标字符串从一开始就带着引号(比如从文件/接口读取的内容就是'random'而不是random),那你需要先把字符串里的引号去掉再拼接:
targets = ["'random'", '"foo"', "'bar'"] for target in targets: # 用 strip() 去掉首尾的单引号或双引号 cleaned_target = target.strip("'\"") output_line = f"Need to have stuff before {cleaned_target} and after each loop string." print(output_line)
strip("'\"")会把字符串首尾的单引号和双引号都去掉,不管是哪种引号都能处理。如果只需要去掉单引号,用strip("'")就够了。
要是你用的是其他语言(比如Bash、JavaScript),逻辑也是类似的:要么去掉拼接时多余的引号,要么对带引号的目标字符串做清洗处理。
内容的提问来源于stack exchange,提问作者Justlest
相关产品推荐
相关产品推荐

