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

Python调用os.getenv报'function' object not subscriptable错误求助

问题原因&修复方案

1. 直接报错的根源:os.getenv调用语法错误

os.getenv是Python内置的函数,不是字典,你代码里用方括号[]取值属于语法错误,函数调用必须使用圆括号()传参。
你需要把notification_manager.py里的4行常量定义全部修改:

# 错误写法
SID = os.getenv["TWILIO_SID"]
AUTH_TOKEN = os.getenv["TWILIO_AUTH_TOKEN"]
VIRTUAL_NUMBER = os.getenv["TWILIO_VIRTUAL_NUMBER"]
VERIFIED_NUMBER = os.getenv["TWILIO_VERIFIED_NUMBER"]

# 正确写法
SID = os.getenv("TWILIO_SID")
AUTH_TOKEN = os.getenv("TWILIO_AUTH_TOKEN")
VIRTUAL_NUMBER = os.getenv("TWILIO_VIRTUAL_NUMBER")
VERIFIED_NUMBER = os.getenv("TWILIO_VERIFIED_NUMBER")

修改完这部分就能解决你当前碰到的TypeError: 'function' object is not subscriptable报错。

2. 隐藏的后续报错提前规避

你代码里还存在大小写不匹配的问题,提前修改避免后续报错:
NotificationManager类中定义的发送短信方法名为send_SMS(S、M大写),但主程序中调用的是nm.send_sms(全小写),Python是大小写敏感的语言,两者必须保持一致:要么修改类方法名为def send_sms(self, message):,要么修改主程序调用语句为nm.send_SMS(...)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 09:12:04