python - 为什么python无法使用“for i in:”找到所有字母实例
问题描述
我想在列表中找到所有字母(w)实例的位置,这就是我所做的:
a=list('Hello, welcome to my world.')
b=[]
for i in a:
if i=='w':
b.append(a.index(i))
print(b)
但它只是返回这个:[7, 7]
有人能告诉我为什么 python 会这样吗?
解决方案
您可以使用enumerate
which 从 0 开始为每个对象返回一个计数器。
b=[y for y,x in enumerate(a) if x=="w"]
输出:
[7, 21]
推荐阅读
- xml - 在 pyspark 中创建自定义模式以读取 xml 文件
- python - 如何确保记录的消息进入新行?
- c++ - 如何在递归函数中只定义和初始化一次变量?
- java - 如果子字符串可以转换为int,如何拆分分隔的字符串
- heroku - Heroku 上 fatjar 中的 Couchbase Lite 在 Couchbase.init() 上抛出 execption
- java - Grakn 安装:不支持 Java 版本
- entity-framework-core - 在 Entity Framework Core 中模仿 ADO.NET 设计
- kubernetes - Kubernetes - ALB 入口控制器 - CertificateNotFound
- python - 在 Transformer 编码器中查询填充掩码和键填充掩码
- system-verilog - UVM 测试结束