Python中列表 list 的加减乘除运算总结


Python中列表list是一种常用(最基本)的数据类型,其四则运算和MATLAB、numpy等数据结构不太一样。

列表的创建及基本用法

  1. 基本创建:把逗号分隔的不同数据项采用方括号括起来,注意,列表索引值从0开始;list_1 = [1, 2, 3, 4, 5]
  2. 利用list()函数创建; list_2 = list([6, 7, 8, 9, 10])
  3. 添加元素: list_2.append(1)
  4. 删除元素:del list_1[0]
  5. 列表长度:len(list_1)
  6. 列表最值:max(list_1) min(list_2)
  7. 统计某个元素在列表中出现的次数; list_1.count(2)
  8. 找出某个值在列表中第一个匹配项的索引; list_2.index(0)
  9. 反向列表中的元素:list.reverse()
  10. 对列表中的元素进行排序:list_2.sort(reverse=False)

列表的 + - × ÷

列表加法,不是相同尺度的列表对应元素相加,而是对列表的一种扩展:
在这里插入图片描述
如果要进行列表的数值加可以采用列表解析式:
在这里插入图片描述
列表的减法(好像不存在这样的操作)
列表的数值减:
在这里插入图片描述
列表乘法 列表数值乘法
在这里插入图片描述
列表除法(没有遇到这种操作) 列表数值除法
在这里插入图片描述

未完待续…

  • 23
    点赞
  • 86
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
大整数的加减乘除是常见的数学运算,可以通过编程实现。下面是Python语言实现大整数加减乘除的示例代码: 1. 大整数加法: ```python def add(num1, num2): # 将两个字符串逆序后转换为列表 list1 = list(num1[::-1]) list2 = list(num2[::-1]) res = [] # 存储结果的列表 carry = 0 # 进位 while list1 or list2 or carry: # 如果列表还有元素或者有进位 n1 = int(list1.pop()) if list1 else 0 n2 = int(list2.pop()) if list2 else 0 # 相加并加上进位 carry, s = divmod(n1 + n2 + carry, 10) res.append(str(s)) # 将结果列表逆序转换为字符串 return ''.join(res[::-1]) ``` 2. 大整数减法: ```python def sub(num1, num2): # 将两个字符串逆序后转换为列表 list1 = list(num1[::-1]) list2 = list(num2[::-1]) res = [] # 存储结果的列表 borrow = 0 # 借位 while list1: # 如果列表还有元素 n1 = int(list1.pop()) n2 = int(list2.pop()) if list2 else 0 # 减去借位并相减 n1 -= borrow borrow = 0 if n1 < n2: n1 += 10 borrow = 1 res.append(str(n1 - n2)) # 去掉结果前面的0 while res and res[-1] == '0': res.pop() # 如果结果为空,则表示两个数相等,返回0 return ''.join(res[::-1]) if res else '0' ``` 3. 大整数乘法: ```python def mul(num1, num2): # 将两个字符串逆序后转换为列表 list1 = list(num1[::-1]) list2 = list(num2[::-1]) res = [0] * (len(list1) + len(list2)) # 存储结果的列表 for i in range(len(list1)): for j in range(len(list2)): # 计算乘积并加上当前位置的进位 res[i+j] += int(list1[i]) * int(list2[j]) # 处理进位 res[i+j+1] += res[i+j] // 10 res[i+j] %= 10 # 去掉结果前面的0 while res and res[-1] == 0: res.pop() # 将结果列表转换为字符串 return ''.join(map(str, res[::-1])) ``` 4. 大整数除法: ```python def div(num1, num2): # 将两个字符串转换为整数 n1 = int(num1) n2 = int(num2) # 计算商和余数 q, r = divmod(n1, n2) # 将结果转换为字符串并返回 return str(q), str(r) ``` 需要注意的是,上述代码只考虑了正整数的情况,对于负整数的处理需要额外考虑。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值