2023-6-9

news2024/11/19 0:46:29

1.网络训练:

在训练前先要看看读取数据的时间(常见的性能瓶颈)

2.import dis

dis 是 Python 内置的一个模块,其全称为 “Disassembler for Python bytecode”,用于反汇编 Python 字节码。它可以将 Python 代码编译成字节码形式,并显示出字节码的操作码(opcode),以及相应的操作数和常量等信息。

在使用 dis 模块时,需要先定义需要反汇编的函数或代码块,然后使用 dis.dis() 函数进行反汇编操作。

3. [0] * 3 [0, 0, 0] [0 for _ in range(3)] 三者内存不同 (cpython 源码问题)

[0] * 3 的内存分配 空的list为56个byte 一个指针为8个byte 56 + 8 * 3 = 80 内存空间为80byte (空间使用最小)

[0, 0, 0] 直接申请8个指针 8*8 + 56 = 120

[0 for _ in range(3)]申请 4个指针 4*8 +56 =88

4 默认参数问题:

在这里插入图片描述
如上代码,因为大多数人的items都为[],所以在class中默认items=[],但是在更新p1和p2的时候出错,因为p1 和 p2 的items 指向同一块内存空间。在这里插入图片描述
如图所示,所以不能使用这种方法对参数进行初始化操作,如果需要这种功能,则需要用以下方法:
在这里插入图片描述

5. 列表推导式

[变量 for 变量 in iterable(可迭代对象)]
(1)生成 1-9的平方 [1, 4, 9, 16, 25, 36, 49, 64, 81]
    
    [i*i for i in range(1, 10)]

(2)生成1到10中的偶数 [2, 4, 6, 8]

[i for i in range(1, 10) if i % 2 == 0]

(3)生成1到10中每个偶数的平方,三次方,四次方组成一个列表
在这里插入图片描述

[[x ** i for i in [2, 3, 4] for x in range(1, 11) if x % 2 == 0]]

6. matplotlib b站视频:(https://www.bilibili.com/video/BV1Pe4y1R79d/?spm_id_from=333.337.search-card.all.click&vd_source=bc3cd51950b607b63949ae5696d82dc2)

from matplotlib import pyplot as plt
fig, array = plt.subplots(3, 3)
print(fig) # fig = Figure(640x480)
print(array)
 # array = 
#[[<Axes: > <Axes: > <Axes: >]
# [<Axes: > <Axes: > <Axes: >]
# [<Axes: > <Axes: > <Axes: >]]

在这里插入图片描述
在这里插入图片描述
代码1:
在这里插入图片描述
代码2:
在这里插入图片描述
两个代码画出的图都为:
在这里插入图片描述
下面的图为画2*2的图

在这里插入图片描述
下面为fig的使用
使用fig写出整个图像的题目和x轴y轴

7. enumerate

产生原因: 例如 a = [23, 12 ,123, 34] 我们要打印出每个元素 并且需要知道每个元素所在的index

 for i in a:
 	print(i) # 这样无法得知每个元素的index
 for i, v in enumerate(a, start=1): # start 默认值为0 如果改为1则默认从1开始数
 	print(i, v) # i为index v为值

8. zip

a = ['1', '2', '3']
b = ['a', 'b', 'c']
for i, j in zip(a, b):
	print(i, j)
# 输出结果为 1 a \n 2 b \n 3 c
for i in zip(a, b):
	print(i)
# 输出结果为 ('1', 'a') \n ('2', 'b') \n ('3', 'c')

9.layer._class_._name_ 为输出一层的名字

10. 迭代器

迭代器的定义:
1.类中定义了__iter__和__next__两个方法
2.__iter__返回对象本身,即self
3.__next__返回下一个数据,如果没有数据,则抛出一个StopIteration的异常

我们创建一个迭代器类型
在这里插入图片描述
之后创建一个迭代器对象

obj1 = IT()
v1 = next(obj1)
v2 = next(obj1)
v3 = next(obj1) # 抛出异常

obj2 = IT()
for item in obj2:
	print(item)
# 迭代器在for循环内部首先会执行迭代器对象的__iter__方法并且获取返回值 返回本身 之后一直会反复执行next(对象)

11 生成器 (是特殊的迭代器)

使用yield关键字返回每次要返回的值
列表推导式的[]换为()就是生成器
[i for i in range(666666)] 直接把666666个元素装到列表中
(i for i in range(666666)) 记住规则 从0开始 每次加1
return 和 yield
到return 后就不执行函数后边的东西了
yield
在这里插入图片描述
在这里插入图片描述
yield后边没跟数字所以返回None
在这里插入图片描述
特别的 net.parameters()为生成器对象

12 可迭代对象 如果一个类中有__iter__方法(不一定有__next__)并且返回一个迭代器(生成器是特殊的迭代器 )对象:则称这个类创建的对象为可迭代对象。

区分可迭代对象和迭代器对象(都可以用for loop)
迭代器对象返回自己 可迭代对象返回一个迭代器

在这里插入图片描述IT为迭代器对象 Foo为可迭代对象

v1 = range(10) v1 为可迭代对象

生成自定义range:
在这里插入图片描述
常见数据类型
v1 = list([1,2,3,4])
v1为可迭代对象,因为声明了__iter__方法并且返回了一个迭代器对象

判断是否为迭代器或可迭代对象
在这里插入图片描述
Iterator 判断是否为迭代器对象__iter__和__next__
Iterable 判断是否为可迭代对象__iter__
两个都为True则为迭代器 一个True 一个False为可迭代对象

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/633789.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

视频换天造物实践秒变科幻大片实践记录

视频换天造物实践秒变科幻大片实践记录&#xff0c;过程中遇到些坑&#xff0c;结果还是相当震撼 预装软件&#xff1a; matplotlib scikit-image scikit-learn scipy numpy torch torchvision opencv-python opencv-contrib-python 安装使用的时候可能碰上scikit-image 新版…

傅里叶级数简介

先看动图 将函数f(x) 用 sin(nx) cos(nx) 的形式表示出来的方式就是傅里叶级数 这里有几个使用条件 收敛性&#xff1a;符合迪力克雷收敛条件。简单理解为 f(x) 必须是一个丝滑的曲线。周期性&#xff1a; f(x) 必须是一个周期函数 还有一个基础条件&#xff0c;三角函数具…

element-plus布局排版问题总结(更新ing)

文章目录 el-container空隙修改app组件 el-container空隙 源码-更改了容器的显示&#xff0c;占满屏幕 <template><div class"common-layout"><el-container><el-header><el-row class"el-row1"><el-col :span"12&…

oppo r11 升级8.1系统 图文教程

Time: 2023年6月11日13:39:25 By:MemroyErHero 1 预留一定的空间,存放刷机包. 2 导入刷机包 r11.ozip 到手机上 3 手机文件管理器 打开 r11.ozip 文件 4 点击立即更新即可 5 重要的事情说三遍,刷机过程中 不能关机 不能断电 否则会变成砖头 重要的事情说三遍,刷机过程中 …

cmake 基本使用

目录 CMake都有什么? 使用cmake一般流程为&#xff1a; 1 生成构建系统 使用命令在build外编译代码: cmake基本语法 指定使用最低版本的cmake 指定项目名称 指定生成目标文件的名称 指定C版本 cmake配置文件使用 cmake配置文件生成头文件 版本号定义方法一: 版本号定…

软件测试正在面试银行的可以看下这些面试题

前言 最近呢有很多的小伙伴问我有没有什么软件测试的面试题&#xff0c;由于笔者之前一直在忙工作上的事情&#xff0c;没有时间整理面试题&#xff0c;刚好最近休息了一下&#xff0c;顺便整理了一些面试题&#xff0c;现在就把整理的面试题分享给大家&#xff0c;废话就不多说…

C 语言实现简单工厂模式

文章目录 1. 背景介绍2. 设计实现3. 运行测试4. 总结 1. 背景介绍 印象中&#xff0c;设计模式是由面向对象的语言(C、JAVA)才能完成的&#xff0c;而 C 语言是面向过程的语言&#xff0c;不能实现设计模式。但C 语言中有 函数指针、回调函数 等机制&#xff0c;使用这些机制便…

Java中线程的生命周期

Java中线程的生命周期 Java中线程的声明周期与os中线程的生命周期不太一样&#xff0c;java中线程有6个状态&#xff0c;见下&#xff1a; NEW: 初始状态&#xff0c;线程被创建出来但没有被调用 start() 。RUNNABLE: 运行状态&#xff0c;线程被调用了 start()等待运行的状态…

Elasticsearch:使用 Redis 让 Elasticsearch 更快

Elasticsearch 是一个强大的搜索引擎&#xff0c;可让你快速轻松地搜索大量数据。但是&#xff0c;随着数据量的增长&#xff0c;响应时间可能会变慢&#xff0c;尤其是对于复杂的查询。在本文中&#xff0c;我们将探讨如何使用 Redis 来加快 Elasticsearch 搜索响应时间。 Re…

【数据结构】常见排序算法——常见排序介绍、归并排序、各大排序复杂度和稳定性

文章目录 1.常见排序2.归并排序2.1归并排序基本思想2.2归并排序的实现2.3归并排序特性总结 3.各大排序复杂度和稳定性 1.常见排序 2.归并排序 归并排序&#xff08;MERGE-SORT&#xff09;是建立在归并操作上的一种有效的排序算法,该算法是采用分治法&#xff08;Divide andCon…

商业图表工具推荐,热门商业图表工具有哪些?

在如今的商业环境下&#xff0c;数据分析和可视化是非常重要的一环。不仅可以帮助企业更好地了解自身情况&#xff0c;还能为决策提供有力支持。因此&#xff0c;选择一个好用的商业图表工具对于报表开发人员来说是非常重要的。下面将为大家介绍7款热门商业图表工具&#xff0c…

Mac电脑删除第三方软件工具CleanMyMac X

经常使用Mac的人都知道&#xff0c;Mac除了可以在AppStore下载应用程序&#xff0c;还有许多软件是需要在网页上搜索下载的第三方软件。那么这类第三方软件软件除了下载方式不同之外还有什么是和从App store下载的软件有区别的吗&#xff1f;答案是肯定的&#xff0c;那就是这些…

Docker容器进入的4种方式

Docker容器进入的4种方式 Docker容器进入的4种方式 在使用Docker创建了容器之后&#xff0c;大家比较关心的就是如何进入该容器了&#xff0c;其实进入Docker容器有好几多种方式&#xff0c;这里我们就讲一下常用的几种进入Docker容器的方法。 进入Docker容器比较常见的几种…

带你了解自动化测试只需要一分钟

目前自动化测试并不属于新鲜的事物&#xff0c;或者说自动化测试的各种方法论已经层出不穷&#xff0c;但是&#xff0c;能够明白自动化测试并很好落地实施的团队还不是非常多&#xff0c;我们接来下用通俗的方式来介绍自动化测试…… 首先我们从招聘岗位需求说起。看近期的职业…

软件测试什么样的技术才能拿20K薪资?

年少不懂面试经&#xff0c;读懂已是测试人。 大家好&#xff0c;我叫木江&#xff0c;一名历经沧桑&#xff0c;看透互联网行业百态的测试从业者&#xff0c;经过数年的勤学苦练&#xff0c;精钻深研究&#xff0c;终于从初出茅庐的职场新手成长为现在的测试老鸟&#xff0c;早…

MySQL数据库基础 09

第九章 子查询 1. 需求分析与问题解决1.1 实际问题1.2 子查询的基本使用1.3 子查询的分类 2. 单行子查询2.1 单行比较操作符2.2 代码示例2.3 HAVING 中的子查询2.4 CASE中的子查询2.5 子查询中的空值问题2.5 非法使用子查询 3. 多行子查询3.1 多行比较操作符3.2 代码示例3.3 空…

深入浅出对话系统——自然语言理解模块

自然语言理解 首先回顾一下自然语言理解的概念。 自然语言理解(Natural Language Understanding)包含三个子模块&#xff1a; 其中领域识别和意图识别都是分类问题&#xff0c;而语义槽填充属于序列标注问题。所以&#xff0c;在自然语言理解中&#xff0c;我们要解决两个分类…

阿里云(Linux)安装Docker教程

首先安装docker&#xff0c;需要找到帮助文档&#xff0c;那肯定是我们的官网&#xff1a; Install Docker Engine on CentOS | Docker Documentation 找到对应的位置&#xff0c;这里是安装在CentOS中&#xff0c;版本需要Ce…

2021~2022 学年第二学期《信息安全》考试试题(A 卷)

北京信息科技大学 2021~2022 学年第二学期《信息安全》考试试题&#xff08;A 卷&#xff09; 课程所在学院&#xff1a;计算机学院 适用专业班级&#xff1a;计科1901-06&#xff0c;重修 考试形式&#xff1a;(闭卷) 一、选择题&#xff08;本题满分10分,共含10道小题,每小题…

Jenkins结合gitee自动化部署SpringBoot项目

安装 安装教程 插件选择 Gitee Plugin 配置 源码管理 填写源码地址 注意&#xff1a;请确保genkins所在的服务器有权限git拉取远程仓库代码&#xff0c;如果不可以请参考ssh配置centos 配置ssh拉取远程git代码 源码管理 构建触发器 1.勾选Gitee webhook 触发构建 2.生成we…