python - 查找字符串中字符的索引
问题描述
def indexes(word, letter):
acc=[]
for i in word:
for g in letter:
if g in i:
acc.append(word.index(i))
return acc
如果我调用该函数indexes("mississippi","s")
,则返回以下内容:
[2, 2, 2, 2]
因此,该函数返回正确数量的字母,但它只返回s
找到“”的第一个索引,并用该索引填充列表。列表不返回每个“”的索引的任何原因s
?
解决方案
使用列表理解,
def indexes(word, letter):
return [pos for pos, char in enumerate(word) if char == letter]
print(indexes("mississippi","s"))
推荐阅读
- javascript - 使用javascript根据元素高度和父高度更改元素填充
- javascript - 如何使用jQuery取消选中所有单击复选框,除了单击一个
- powerbi - Power-BI:在数据区添加列或在 Power-Query 中添加列
- python - 基于多列的 Python 合并
- javascript - Javascript 在 catch 块中丢失了回溯
- widget - Databricks:在查询中调用小部件值
- visual-studio - 限制多值参数选择 SSRS 的数量
- airflow - 如果工作人员本身出现故障,在 Celery 工作人员上运行的气流传感器会发生什么情况
- three.js - AR.js aframe 对象显示也没有指向标记
- php - 如何使用 PHPmailer 发送参数以在 cid 内部进行跟踪