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

PyCharm提示f-string存在未匹配[,嵌套字典引用报错求助

问题分析与解决

你的代码报错是因为引号嵌套冲突:
你用单引号包裹f-string,而访问嵌套字典的第二个键时又用了单引号['cost'],Python会把MENU["espresso"]['后面的单引号当成f-string的结束标记,剩下的cost']}.就成了无效语法,自然会提示unmatched '['。

解决方法很简单,只要保证f-string的外层引号和内部字典键的引号不重复就行,两种写法都可以:

  1. 外层用双引号,内部键用单引号:
print(f"That drink costs {MENU['espresso']['cost']}.")
  1. 外层用单引号,内部键用双引号:
print(f'That drink costs {MENU["espresso"]["cost"]}.')

另外,也可以把字典访问表达式用括号括起来(虽然没必要,但也是一种可行写法):

print(f'That drink costs {(MENU["espresso"]["cost"])}.')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 21:52:05