python - 如何将列表列表中的每个元素除以python中的数字

标签 python list

我有一个列表 'q' 的列表,我想将 q 中的每个数字除以每个列表中的总和 (=10) 我试过这个:

q = [[0,0,0,10],[1,2,6,1]]
B=[]
for x in q:
    y = [z/sum(x[:len(x)]) for z in x]
    B.append(y)   
print B

它没有给我预期的结果

有人知道这里出了什么问题吗?

最佳答案

$ python
>>> q = [[0,0,0,10],[1,2,6,1]]
>>> B = [[float(j)/sum(i) for j in i] for i in q]
>>> B
[[0.0, 0.0, 0.0, 1.0], [0.1, 0.2, 0.6, 0.1]]

注意:python3中,不需要float()

关于python - 如何将列表列表中的每个元素除以python中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9294772/

相关文章:

python - 为什么我的 python 函数没有定义,当它存在于同一个文件中时?

javascript - 使用javascript在无序列表中定位元素

c++ - 两个排序列表的交集和并集(返回类型)

python - 需要使用 python 登录网站的帮助

python - 如何使用列表理解格式化列表列表?

html - 多个UL的级别不一样

python - 加速必须遍历整个列表的 Python 代码

python - 如何使用 Python 3 在 MySQL 中避免 b' 和 UTF-8 文字

python - 无法将 numpy 与 Spark 一起使用

python - 在 Python 中连接字符串