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

[深度学习] python基础支持汇总

这个系列放一些看神经网络源码过程中的python语法现象

文章目录

  • 前言
  • 一、list操作:+/+=/extends/append的区别
    • 1.引入
    • 2.细致
    • 场景再现


前言

例如:这个系列放一些看神经网络源码过程中的python语法现象, 直接解析语法太干瘪无聊.希望用这个方式来巩固所学知识

一、list操作:+/+=/extends/append的区别

1.引入

说实话,我之前都没注意过,都是实用主义,够用即可,写python不过一年时间,之前做后端(php)的,回想刚学python的时候,就感觉它太灵活.
相同点:"+"和"extend"都能将两个列表成员拼接到到一起
不同点: + : 生成的是一个新列表(id改变)
extend : 是将一个列表的成员一个个取出添加到原列表中 , 改变的是原列表的值 , id不变.
append:是将对象,直接追加到后面和+,+=,extends解决的问题不同

2.细致

1、+法,只能操作两个类型一致的对象,比如两个列表相加;你整个列表和元祖相加,就报“TypeError”
2、extend方法,传入的参数是iterable,可迭代对象,重点来了:列表、元祖、集合等可迭代的,靠,都可以传!这就有说法了,范围和应用就太广了
3、+=,注意,这是个大坑。因为+=内部通过__iadd__魔法函数实现,而__iadd__内部调用了extend()方法,所以:+=是可以加元祖、集合、可迭代对象的!

# 加元祖
list1 += (22,33,44)
# 加集合
list1 += {55,66,77}

# 加可迭代对象
d = {'a':1, 'b':2}
list1 += d.values()
print(list1)

场景再现

是在看mobilenet网络的时候,看到了这个结构,有人用extend实现,有人用+实现
在这里插入图片描述
在这里插入图片描述

相关文章:

  • 西安市做网站的/深圳网络推广外包公司
  • 做招聘的网站有哪些/seo没什么作用了
  • 手机网站建设信息/新品推广策划方案
  • 营销网站建设维护/网络营销常用的方法有哪些
  • dreamweaver做网站教学/优化疫情防控 这些措施你应该知道
  • 企业搭建网站哪家好/厂房网络推广平台
  • 18.定位元素练习-淘宝网
  • 搭建springWeb保姆级教程
  • 浅谈旅行商问题(TSP问题)
  • [附源码]JAVA毕业设计口腔医院网站(系统+LW)
  • 急诊医学-急救医学-复习资料-总结-重点-笔记
  • 浏览器高度兼容性
  • DPD(Digital Pre-Distortion,数字预失真)
  • 基于N32G45的按键驱动
  • Springboot旅游餐饮服务平台r1n3j计算机毕业设计-课程设计-期末作业-毕设程序代做
  • 【VSCode + Anaconda】VSCode [WinError 126]找不到指定模块
  • Java数据结构与Java算法学习Day03---线性表(简略笔记记录)
  • 智工教育:注册计量师一级和二级的科目一样吗?