python - 在列表推导中将 int 添加到 int 失败
问题描述
在这份声明中
stop_words_index = [word_index.get(w) + 3 for w in stop_words]
word_index.get(w) 是一个 int,但是这个语句生成
TypeError:+ 不支持的操作数类型:“NoneType”和“int”
如何解决这个问题?
解决方案
word_index.get(w)
如果None
在w
字典中找不到word_index
。
word_index.get(w, 0)
如果您希望此值在w
未找到时为0,您应该这样做。
或者[word_index.get(w) + 3 for w in stop_words if w in word_index]
,如果您想跳过未找到的单词。
推荐阅读
- google-analytics - 如何在 Google Data Studio 自定义字段中提取 URL 的最后一个路径?
- python-3.x - Pandas 将名称和 IP 对齐到两个不同的列中
- rx-java - 用一个值初始化 RxJava 流
- java - UserRepository 在 @Autowired 中返回 null
- laravel - 自动备份 MySQL 数据库到谷歌驱动器
- azure - 在 Azure 自动化 Powershell 脚本中使用参数数组
- java - 如何在Android中保持从baseAdapter接收到的奇数个按钮为三角形?
- android - Android Studio 平台工具-无法下载 api 24/28
- node.js - 尝试使用 npm 命令安装任何软件包时出现错误
- vuejs2 - VeeValidate 不适用于内联编辑。我正在使用 v-for 和 v-if 进行内联编辑