当前位置: 首页 > news >正文

python中减法怎么写_python 中对list做减法操作

列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。

list1 = ['physics', 'chemistry', 1997, 2000]

list2= [1, 2, 3, 4, 5]

list3= ["a", "b", "c", "d"]

list 可以进行的操作包括索引,切片,加,乘,检查成员。但是没有 减 操作。

【问题描述】

已知:list1 = [1, 2, 3, 4, 5]

list2 = [1, 4, 5]

求:list3 。   list3中包括所有不在list2中出现的list1中的元素。

【解决方法一】可以使用set(集合)操作

list3 = list(set(list1) – set(list2))

set操作会将一个list转换成一个集合。

假设:list_t = [1, 2, 3, 1]

那么:list(set(list_t)) = [1, 2, 3]

重复的项就会被删除。

【解决方法二】list3 = [i for i in list1 if i not in list2]       #可用于list分片

这样写也很直观。

但是在list很大的时候,没有set方法快。

额外知识:a = [[i,j] for i in range(2) for j in range(3)]

这个和“其他方案”非常相似,

都是在[]里面进行判断和计算。

感觉很方便,至少比下面这样要方便、要快:

a = []

for i in range(2):

for j in range(3):

a.append([i,j])

某些问题:如果list_tmp = [[1,2],[2,3]]

即list里面不是单独的元素组成,而是list,

那么set(list_tmp)会出问题。

相关文章:

  • 最大化窗口设置_ros导航-动态窗口方法(Dynamic Window Approach)
  • 像素位移_哈苏专访 4亿像素H6D中画幅魅力在哪?
  • 化工图纸中LISP_别再问我化工工程师是干什么的了,这是最好的解释
  • c++排查线程hang住_show status和set gtid_mode 导致线程死锁案例
  • 夯大力_【技术交流】通定高速路基边坡夯拍及三背回填振动液压夯实技术
  • vscode中安装webpack_GitHub - lpreterite/vscode-mocha-webpack-example: 用webpack写个现代的JavaScript包...
  • c语言课设代写一般多少钱_cs代写 math代写
  • vs2019 值可能为0_【完整版】针对零基础小白的VS2019安装攻略
  • bin和cue怎么合并_用foobar进行APE分割及合并,cue的制作
  • vsftp如何确定地址_西门子S71500数字量输入模块如何编址?
  • adsense 注册_三天google AdSense帐户申请经验分享
  • plc和pc串口通讯接线_基础教程--RS232通讯用到串口调试软件的应用
  • host ntrip 千寻rtk_合众思壮新品RTK UFO U5连接千寻cors账号的方法教程
  • ipad鼠标圆圈变成箭头_iPad当作Mac mini 的显示器的方法
  • mc有什么红石机器人_Minecraft游戏理论:远古“巨石阵”之谜,探索mc史前高科技文明...
  • Angular 4.x 动态创建组件
  • Flannel解读
  • IDEA常用插件整理
  • JAVA 学习IO流
  • JS笔记四:作用域、变量(函数)提升
  • k8s 面向应用开发者的基础命令
  • magento2项目上线注意事项
  • niucms就是以城市为分割单位,在上面 小区/乡村/同城论坛+58+团购
  • python docx文档转html页面
  • Service Worker
  • SQLServer之索引简介
  • vue--为什么data属性必须是一个函数
  • yii2权限控制rbac之rule详细讲解
  • 工作中总结前端开发流程--vue项目
  • 官方解决所有 npm 全局安装权限问题
  • 提醒我喝水chrome插件开发指南
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 学习使用ExpressJS 4.0中的新Router
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • #微信小程序:微信小程序常见的配置传旨
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (Oracle)SQL优化技巧(一):分页查询
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...
  • (转载)微软数据挖掘算法:Microsoft 时序算法(5)
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • .bat批处理(七):PC端从手机内复制文件到本地
  • .gitattributes 文件
  • .Net 4.0并行库实用性演练
  • .net core Swagger 过滤部分Api
  • .NET Framework杂记
  • .NET 的程序集加载上下文
  • .Net的C#语言取月份数值对应的MonthName值
  • .NET企业级应用架构设计系列之技术选型
  • @ResponseBody
  • []Telit UC864E 拨号上网
  • [Avalon] Avalon中的Conditional Formatting.
  • [BUG]Datax写入数据到psql报不能序列化特殊字符
  • [CentOs7]搭建ftp服务器(2)——添加用户
  • [docker] Docker的数据卷、数据卷容器,容器互联