Python数组乘法

发布于 2021-01-29 14:58:42

hh=[[82.5], [168.5]]
N=1./5
ll=N*hh

我做错了什么?我收到错误消息:

“不能将序列乘以’float’类型的非整数”

我尝试添加float(),但这不能解决我的问题;

我需要乘以数组中的每个元素…感谢所有人


好,谢谢您对数字数组的想法,但是如何将数组数组相乘,我尝试过与数字*数组相同,但是有问题:

编辑2:**

hh=[[82.5], [168.5]]
N=zip(*hh)
ll = [[x*N for x in y] for y in hh]

???

关注者
0
被浏览
120
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    X在Python中用乘以序列时,它不会乘以序列的每个成员-而是重复序列X时间。这就是X必须是整数(不能是浮点数)的原因。

    您要做的是使用列表理解:

    hh = [[82.5], [168.5]]
    N  = 1.0 / 5
    ll = [[x*N for x in y] for y in hh]
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看