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

将Python脚本转为Lambda函数时,Config字典Endpoint的F-string语法错误排查

问题根源

你遇到的语法错误是因为f-string的外层单引号与内部引用event['date_range']的单引号发生了冲突,Python无法正确识别f-string的边界,导致解析失败。

修复方案

以下几种方法都能解决这个问题,你可以根据习惯选择:

方法1:替换f-string外层引号为双引号

将包裹f-string的单引号改成双引号,同时转义$search参数内的双引号:

config = dict(
        scope       = ["Mail.ReadWrite"], 
        username    = event['username'], 
        cache_file  = "token.cache", 
        date_range  = event['date_range'], 
        endpoint    = f"https://graph.microsoft.com/v1.0/me/mailFolders/inbox/messages?$expand=attachments&$search=\"hasAttachments:true AND received:{event['date_range']}\""       
)

方法2:转义内部单引号

如果坚持使用外层单引号,对event['date_range']里的单引号进行转义:

config = dict(
        scope       = ["Mail.ReadWrite"], 
        username    = event['username'], 
        cache_file  = "token.cache", 
        date_range  = event['date_range'], 
        endpoint    = f'https://graph.microsoft.com/v1.0/me/mailFolders/inbox/messages?$expand=attachments&$search="hasAttachments:true AND received:{event[\'date_range\']}"'       
)

方法3:提前提取变量(推荐)

先把event['date_range']赋值给一个独立变量,再在f-string中引用,代码更清晰且不易出错:

target_date_range = event['date_range']
config = dict(
        scope       = ["Mail.ReadWrite"], 
        username    = event['username'], 
        cache_file  = "token.cache", 
        date_range  = target_date_range, 
        endpoint    = f'https://graph.microsoft.com/v1.0/me/mailFolders/inbox/messages?$expand=attachments&$search="hasAttachments:true AND received:{target_date_range}"'       
)

方法4:使用str.format()替代f-string

若对f-string的引号规则不熟悉,可改用传统的字符串格式化方法:

config = dict(
        scope       = ["Mail.ReadWrite"], 
        username    = event['username'], 
        cache_file  = "token.cache", 
        date_range  = event['date_range'], 
        endpoint    = 'https://graph.microsoft.com/v1.0/me/mailFolders/inbox/messages?$expand=attachments&$search="hasAttachments:true AND received:{date_range}"'.format(date_range=event['date_range'])       
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 21:15:34