python list列表的乘除法

1

由于需要对列表数据整体处理,所以需要遍历整个 列表元素,这里 以全int型数据为例

x = [72, 50, 81, 74, 94, 86, 59, 83, 65, 33, 88, 81]
x_=[]
for i in x:
    i/=10   #对数据逐个处理
    x_.append(i)
x=x_
print(x)

2

上述是利用for 循环实现的,也可不用,如下:

x = [72, 50, 81, 74, 94, 86, 59, 83, 65, 33, 88, 81]
s=[10,10,10,10,10,10,10,10,10,10,10,10]
xx=[a/b for a,b in zip(x,s)]     #利用该语句实现
x=xx
print(x)

3

还有一种情况假如要除的数是数值,但是由这个列表内数值计算出的,那么可以用

x[:]=x[:]/x_std

这条语句来实现,以下面例子来方便读者体会:

    x=[]
    y=[]
    data = [[72, 84], [50, 63], [81, 77], [74, 78], [94, 90], [86, 75], [59, 49], [83, 79], [65, 77], [33, 52],
            [88, 74], [81, 90]]
    for a,b in data:
        x.append(a)
        y.append(b)
    x_mean = np.mean(x)
    x_std = np.std(x)
    y_mean = np.mean(y)
    y_std = np.std(y)
    xx=[]
    yy=[]
    xx[:]=x[:]-x_mean
    xx[:]=x[:]/x_std
    yy[:]=y[:]-y_mean
    yy[:]=y[:]/y_std

4

当然 可以用numpy数组 ,将列表转为numpy数组,之后循环遍历也可以
如下:

import numpy as np
 
a = np.array([1,1,1])  #这样的确简单,但考虑到可能你还需要再转回list类型,也可以不用这种方法,而用上面几种
c = a/3
print(c)

注意以下是不可以的!!!

a = [1.0, 1.0, 1.0]
c = a/3          # 这样是不可以的
#会出现 TypeError: unsupported operand type(s) for /: 'list' and 'int'
print(c)

另附笔记二维列表不能和数组一样循环遍历

在这里插入图片描述

另外对列表的拼接以及元素级的相加,还有相减,相乘等看下面这个blog:
https://blog.csdn.net/jp_666/article/details/98055191?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1

  • 13
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值