You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Pandas与Jupyter中打印含'in'的字符串时遇语法错误怎么办?

问题分析与解决

你的代码报错是因为字符串引号嵌套冲突,不是in被当成迭代相关语法——in虽是Python的成员运算符,但这里你想把它作为普通文本,问题出在你用相同双引号包裹所有字符串片段,导致Python无法正确识别字符串的起止位置。

比如原代码里,print("row[0] + "was published by"... 中第一个双引号后,遇到第二个双引号就会判定字符串结束,后续的was published by变成无意义代码,进而触发未终止字符串的语法错误。另外注意:原代码里row[0]被加了引号,这会直接打印字符串"row[0]"而非变量值,需要去掉引号。

以下是几种正确写法:

方法1:混合单双引号

用单引号包裹外层字符串,内层用双引号;或反过来,避免引号冲突:

print(row[0] + " was published by " + row[8] + " in " + row[9] + ".")

方法2:使用转义字符

在需要保留的双引号前加\,告知Python这是普通字符而非字符串边界:

print(row[0] + "\"was published by\"" + row[8] + "\"in\"" + row[9] + ".")

这种写法可读性稍差,不推荐频繁使用。

方法3:使用f-string(推荐)

Python 3.6及以上版本支持f-string,写法简洁直观,完全规避引号冲突:

print(f"{row[0]} was published by {row[8]} in {row[9]}.")

直接用{}包裹变量,自动完成字符串拼接。

内容的提问来源于stack exchange,提问作者Jennifer Grubb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 21:29:53