a = [0.30, 0.15, 0.0, 0.25, 0.30, 0.0]
b = []
for i in range(a):
if a[i] == 0.00:
b.append(0)
else:
b.append(1)
Run Code Online (Sandbox Code Playgroud)
我想要的是根据 a 中的相同索引是否等于或不同于零用 0 和 1 填充 b 。为什么我收到以下错误:“TypeError:'list' 对象不能解释为整数”?
range()只接受整数(开始:停止:步骤)。不是清单。所以我想你想用len(list)
a = [0.30, 0.15, 0.0, 0.25, 0.30, 0.0]
b = []
for i in range(len(a)):
if a[i] == 0.00:
b.append(0)
else:
b.append(1)
Run Code Online (Sandbox Code Playgroud)
最后,所有这些都可以使用列表理解来完成
#注意:遍历列表时,不要使用 range()
b = [i if i == 0.00 else 1 for i in [0.30, 0.15, 0.0, 0.25, 0.30, 0.0]]
Run Code Online (Sandbox Code Playgroud)
输出
[1, 1, 0.0, 1, 1, 0.0]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
66 次 |
| 最近记录: |