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

运用数组和矩阵对数据进行存取和运算——NumPy模块 之四

  目录

  NumPy模块介绍

  3.4 NumPy 数组重塑与转置

  3.4.1 操作机制的理论逻辑

  3.4.2 一维数组的重塑

  3.4.3 多维数组的重塑

  3.4.4 数组的转置操作

  3.4.5 知识点总结与课程回顾

  3.4.6 课后练习题


  NumPy模块介绍

  NumPy 是 Python 科学计算领域的重要基石,与当前 “躺吃旅行” 话题看似不相关,但在数据处理分析上意义重大。我将从它的核心功能、应用场景和优势等方面展开介绍。

  NumPy(Numerical Python)是 Python 语言中用于科学计算的基础库,它提供了高性能的多维数组对象以及大量用于对数组进行操作的函数,是数据科学、机器学习、人工智能等领域不可或缺的工具。NumPy 的核心数据结构是ndarray(多维数组),这种数组允许在内存中以连续的方式存储同类型的数据,相较于 Python 原生列表,它在存储和运算效率上有着显著提升。通过 NumPy,用户可以轻松实现数组的创建、索引、切片、变形,以及各种数学运算,如矩阵乘法、统计计算、傅里叶变换等。

  在实际应用中,NumPy 广泛应用于数据分析、机器学习算法的底层实现、图像和信号处理等领域。例如,在机器学习中,数据集通常会被加载并转换为 NumPy 数组进行预处理和模型训练;在图像处理中,图像数据也会被表示为多维数组,借助 NumPy 提供的函数完成图像的滤波、变换等操作。此外,NumPy 还与众多科学计算库紧密集成,如 SciPy、Pandas 等,共同构建起强大的 Python 科学计算生态,极大地提升了数据处理和分析的效率。

  本期课程,我将从概念、逻辑、实操、应用4各层面阐释我对这个模块的理解,希望为喜欢Python的学习者提供一个内容详实、逻辑清晰、容易上手的课程。

  3.4 NumPy 数组重塑与转置

  3.4.1 操作机制的理论逻辑

  (一)内存布局与视图机制

  NumPy 数组在内存中以连续的块存储元素,无论数组的维度如何,其元素在内存中都是线性排列的。例如,二维数组[[1,2],[3,4]]在内存中实际存储为[1,2,3,4]。

  重塑和转置操作并不会改变数组在内存中的实际存储顺序,而是通过修改数组的元数据(如形状、步长等)来创建一个新的 "视图"。视图与原数组共享底层数据,因此这些操作非常高效,不会占用额外的内存空间。

  (二)形状与步长的关系

  数组的形状(shape)定义了每个维度的大小,而步长(strides)则定义了在内存中访问下一个元素时需要跳过的字节数。例如,对于一个形状为(2,3)的二维数组,其步长可能为(24,8),表示在第一个维度上移动一步需要跳过 24 个字节(即 3 个元素),在第二个维度上移动一步需要跳过 8 个字节(即 1 个元素)。

  重塑和转置操作通过调整形状和步长来改变数组的访问方式,而不改变底层数据的存储顺序。

  3.4.2 一维数组的重塑

  (一)基本概念

  一维数组的重塑是指将一个一维数组转换为多维数组的过程。在重塑过程中,需要保证新数组的元素总数与原数组相同。

  (二)案例及代码演示

import numpy as np# 创建一个一维数组
arr = np.arange(12)
print("原一维数组:")
print(arr)# 将一维数组重塑为3行4列的二维数组
reshaped_arr1 = arr.reshape(3, 4)
print("\n重塑为3行4列的二维数组:")
print(reshaped_arr1)# 使用-1自动计算维度
reshaped_arr2 = arr.reshape(2, -1)  # -1表示该维度的大小由系统自动计算
print("\n重塑为2行的二维数组(自动计算列数):")
print(reshaped_arr2)

  3.4.3 多维数组的重塑

  (一)基本概念

  多维数组的重塑是指将一个多维数组转换为另一种维度结构的数组的过程。同样,在重塑过程中,需要保证新数组的元素总数与原数组相同。

  (二)案例及代码演示

import numpy as np# 创建一个3行4列的二维数组
arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
print("原二维数组:")
print(arr)# 将二维数组重塑为4行3列的二维数组
reshaped_arr1 = arr.reshape(4, 3)
print("\n重塑为4行3列的二维数组:")
print(reshaped_arr1)# 将二维数组重塑为3维数组
reshaped_arr2 = arr.reshape(2, 2, 3)
print("\n重塑为2页2行3列的三维数组:")
print(reshaped_arr2)

  3.4.4 数组的转置操作

  (一)T 属性的用法

  T 属性是 NumPy 数组的一个属性,用于返回数组的转置视图。对于二维数组,转置就是将行和列互换。

import numpy as np# 创建一个2行3列的二维数组
arr = np.array([[1, 2, 3], [4, 5, 6]])
print("原二维数组:")
print(arr)# 使用T属性进行转置
transposed_arr = arr.T
print("\n转置后的二维数组:")
print(transposed_arr)

  (二)transpose () 函数的应用

  transpose () 函数可以用于更复杂的轴交换操作,特别是对于多维数组。它接受一个轴编号的元组作为参数,表示新的轴顺序。

import numpy as np# 创建一个三维数组
arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
print("原三维数组:")
print(arr)# 使用transpose()函数进行轴交换
transposed_arr = arr.transpose(1, 0, 2)  # 将原轴0和轴1交换
print("\n轴交换后的三维数组:")
print(transposed_arr)

  3.4.5 知识点总结与课程回顾

  (一)重点内容

  1. 重塑和转置操作都是通过创建视图来实现的,不会改变底层数据的存储顺序。

  2. 一维数组可以通过 reshape () 方法转换为多维数组,多维数组也可以通过 reshape () 方法转换为其他维度的数组。

  3. 数组的转置可以通过 T 属性或 transpose () 函数实现,T 属性适用于简单的行列互换,transpose () 函数适用于更复杂的轴交换操作。

  (二)难点内容

  1. 理解重塑和转置操作背后的内存布局和视图机制。

  2. 对于多维数组,正确使用 transpose () 函数进行轴交换可能需要一定的空间想象力。

  (三)趣味案例

  1. 图像处理中的图像旋转:在图像处理中,经常需要对图像进行旋转操作。可以使用 NumPy 的数组转置功能来实现图像的旋转。例如,将一张风景照片顺时针旋转 90 度。

  2. 数据分析中的数据重构:在数据分析中,有时需要将数据从一种格式转换为另一种格式。例如,将一个包含多个学生成绩的二维数组重构为一个包含每个学生各科成绩的三维数组,以便更好地进行分析。

  3. 游戏开发中的矩阵变换:在游戏开发中,经常需要对游戏对象进行变换操作,如旋转、缩放等。这些变换可以通过矩阵运算来实现,而 NumPy 的数组操作可以方便地实现这些矩阵运算。

  3.4.6 课后练习题

  (一)练习题 1

  创建一个一维数组arr = np.arange(24),将其重塑为一个 4 行 6 列的二维数组,然后将这个二维数组转置,最后输出转置后的数组。

  (二)练习题 2

  创建一个三维数组arr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]),使用 transpose () 函数将其轴顺序调整为 (2, 0, 1),然后输出调整后的数组。

  (三)练习题 3

  创建一个 5 行 5 列的二维数组,数组元素为 1 到 25 的整数。将这个二维数组进行重塑,使其成为一个一维数组,然后再将这个一维数组重塑为一个 5 行 5 列的二维数组,但行列顺序与原数组相反。输出最终的二维数组。

  听我课的同学们不要手懒,我每节课都会准备一些趣味案例和课后练习题,大家看完这些内容,可以上手操作一下。可以将自己实操的结果放到评论中,不懂的地方也可以跟我交流,欢迎交流,老师有问必答。

相关文章:

运用数组和矩阵对数据进行存取和运算——NumPy模块 之四

目录 NumPy模块介绍 3.4 NumPy 数组重塑与转置 3.4.1 操作机制的理论逻辑 3.4.2 一维数组的重塑 3.4.3 多维数组的重塑 3.4.4 数组的转置操作 3.4.5 知识点总结与课程回顾 3.4.6 课后练习题 NumPy模块介绍 NumPy 是 Python 科学计算领域的重要基石,与当前 “躺吃旅行…...

机器学习第六讲:向量/矩阵 → 数据表格的数学表达,如Excel表格转数字阵列

机器学习第六讲:向量/矩阵 → 数据表格的数学表达,如Excel表格转数字阵列 资料取自《零基础学机器学习》。 查看总目录:学习大纲 关于DeepSeek本地部署指南可以看下我之前写的文章:DeepSeek R1本地与线上满血版部署:…...

服务器多JAR程序运行与管理指南

在同一台服务器上同时运行多个JAR程序是完全可以的,但需要注意以下几点以确保稳定性和性能: 关键注意事项 端口冲突 如果JAR程序是网络服务(如Web应用),确保每个程序监听不同的端口(例如:8080、…...

vue实现进度条带指针

效果最终 function calculatePointerPosition(value) {if (value < 2.6) return 12.5; // 非常差位置if (value < 5.1) return 37.5; // 较差位置if (value < 7.1) return 62.5; // 良好位置return 90; // 非常满意位置 }function getStatusText(value) {if (valu…...

【C++】智能指针

前言 上文我们学到了C11的异常&#xff0c;了解到了C与C语言处理错误的区别&#xff0c;异常的特点在于抛出与接收。【C11】异常-CSDN博客 本文我们来学习C中的下一个功能&#xff1a;智能指针 1.智能指针的使用场景 在上文我们知道了抛异常的知识&#xff0c;抛异常的“抛”这…...

Adobe Acrobat pro在一份PDF中插入空白页

在Adobe Acrobat pro中先打开我们的PDF文件&#xff1b; 用鼠标点击需要插入空白页处的上一页&#xff1b; 然后如下图操作&#xff1a; 默认会在光标处的下一页插入一张空白页&#xff0c;你也可以修改插入页的页码或者向前一页插入...

Oracle adg环境下调整redo日志组以及standby日志组大小

1.在adg环境中&#xff0c;调整redo日志组大小以及standby日志组大小主要思路如下&#xff1a; a、先备库增加standby redo 删除老standby redo, b、然后主库增加redo删除老redo, c、备库增加新redo删除老redo, d、最后主库增加standby redo。 #主库 [oracleDB196 ~]$ sql / a…...

Nlog适配达梦数据库进行日志插入

前言 原来使用的是SQLServer数据库&#xff0c;使用Nlog很流畅&#xff0c;没有什么问题。现在有个新项目需要使用麒麟操作系统和达梦数据库&#xff0c;业务流程开发完成之后发现Nlog配置文件中把数据库连接内容修改之后不能执行插入操作。 原Nlog.config配置 <?xml ve…...

记一次redis未授权被种挖矿

#挖矿程序 /etc/httpgd /etc/nnt.sh #大小问 #定时任务名为root /var/spool/cron/root 内容&#xff1a;*/50 * * * * sh /etc/nnt.sh >/dev/null 2>&1 定时任务只有所有者可以写&#xff0c;且chmod修改权限失败。 #先查看定时任务的拓展属性&#xff0c;不可变(i…...

Docker私有仓库实战:官方registry镜像实战应用

抱歉抱歉&#xff0c;离职后反而更忙了&#xff0c;拖了好久&#xff0c;从4月拖到现在&#xff0c;在学习企业级方案Harbor之前&#xff0c;我们先学习下官方方案registry&#xff0c;话不多说&#xff0c;详情见下文。 注意&#xff1a;下文省略了基本认证 TLS加密&#xff…...

LeetCode 热题 100_只出现一次的数字(96_136_简单_C++)(哈希表;哈希集合;排序+遍历;位运算)

LeetCode 热题 100_只出现一次的数字&#xff08;96_136_简单_C&#xff09; 题目描述&#xff1a;输入输出样例&#xff1a;题解&#xff1a;解题思路&#xff1a;思路一&#xff08;哈希表&#xff09;&#xff1a;思路二&#xff08;哈希集合&#xff09;&#xff1a;思路三…...

基于FastAPI框架的日志模块设计

以下是一个基于FastAPI框架设计的日志模块&#xff0c;结合SQLite数据库实现增删改查功能的完整实现方案&#xff1a; 1. 项目结构 your_project/ ├── app/ │ ├── logs/ # 日志模块目录 │ │ ├── models.py # 数据库模型定义 │ │ …...

网页禁止粘贴的解决方法(以学习通网页为例)

网页禁止粘贴的解决方法&#xff08;以学习通网页为例&#xff09; 学数据挖掘&#xff0c;学习通过作业的简答题要英文做答还竟然不能复制粘贴&#xff0c;受不了了 下面给出解决办法 1.想着是网页JS的问题&#xff0c;既然不能直接粘贴&#xff0c;那就在源码里面修改 2.于…...

Linux常用命令详解(下):打包压缩、文本编辑与查找命令

一、打包压缩命令 在Linux系统中&#xff0c;打包与压缩是文件管理的核心操作之一。不同的工具适用于不同场景&#xff0c;以下是最常用的命令详解&#xff1a; 1. tar命令 作用&#xff1a;对文件进行打包、解包、压缩、解压。 语法&#xff1a; tar [选项] [压缩包名] […...

前端面经 计网 http和https区别

HTTP 超文本传输 忒点&#xff1a; 支持CS 客户/服务器模式 方便快捷 简单 允许传输任意类型的数据 在报文头中的Content-Type中声明 无连接&#xff0c;一次连接仅处理一个请求 无状态 不保留上一次的状态 HTTPS 解决HTTP明文传输 在HTTP基础上增加SSL协议 HTTP版本 …...

mac一键安装gpt-sovit教程中,homebrew卡住不动的问题

mac一键安装gpt-sovit教程 仅作为安装过程中解决homebrew卡住问题的记录 资源地址 https://www.yuque.com/baicaigongchang1145haoyuangong/ib3g1e/znoph9dtetg437xb#mlAoP 下载一键包 下载后并解压&#xff0c;找到install for mac.sh&#xff0c;终端执行bash空格拖拽in…...

05_jdk8新特性

文章目录 一、jdk8新特性1. Lambda表达式2. Stream API3. 函数式接口4. 默认方法5. 方法引用6. 新的日期和时间API7. Optional类8. 并发增强 二、常用函数式接口1. Supplier<T>2. Consumer<T>3. Function<T,R>4. Predicate<T> 一、jdk8新特性 JDK 8&a…...

解决IDEA Maven编译时@spring.profiles.active@没有替换成具体环境变量的问题

如果不加filtering true&#xff0c;编译后的文件还是 spring.profiles.active 编译前的application.yml 编译后的application.yml【环境变量没有改变】 解决方案 找到 SpringBoot 启动类所在的pom.xml&#xff0c;在 resources 增加 filtering true&#xff0c;然后重新…...

HTML17:表单初级验证

表单初级验证 常用方式 placeholder 提示信息 <p>名字:<input type"text" name"username" maxlength"8" size"30" placeholder"请输入用户名"></p>required 非空判断 <p>名字:<input type"…...

vue3+dhtmlx-gantt实现甘特图展示

最终效果 数据源demo {"data": [{"actual_end_date": "2025-04-23","actual_start_date": "2025-04-15","duration": 10,"end_date": "2025-05-01","id": "2|jvUiek",&…...

Jupyter-AI Pandas-AI本地使用功能优化

引言 Jupyter-ai 和 Pandas-ai 的优化主要是个人工作遇到的需求,个人觉得是一个不错的体验优化,所以进行分享仅供参考,不喜勿喷,共同进步!Jupyter-AI优化主要包含以下方向(当前已实现): Jupyter-AI中 Chat 扩展和 NoteBook 的 Cell 工作去部分,使用的Language Model 和 …...

Model.eval() 与 torch.no_grad() PyTorch 中的区别与应用

Model.eval() 与 torch.no_grad(): PyTorch 中的区别与应用 在 PyTorch 深度学习框架中&#xff0c;model.eval() 和 torch.no_grad() 是两个在模型推理&#xff08;inference&#xff09;阶段经常用到的函数&#xff0c;它们各自有着独特的功能和应用场景。本文将详细解析这两…...

mac M2下的centos8:java和jenkins版本匹配,插件安装问题

java和jenkins版本匹配如下&#xff1a; Java Support Policy 如果版本不匹配&#xff0c;jenkins无法正常启动&#xff0c;插件也无法安装成功。 实际操作过程发现&#xff1a;表格也并不全然正确&#xff0c;还是需要特定的版本才能正常 参考如下&#xff1a; jenkins安装…...

PyTorch 中的 Autograd 实现细节解析和应用

摘要: 本文深入探讨 PyTorch 框架的核心组件之一——Autograd 机制。我们将解析其内部工作原理,包括计算图的构建、梯度的计算与传播,并探讨其在神经网络训练、模型调试及可解释性等方面的广泛应用。 通过理解 Autograd 的实现细节,开发者可以更高效地利用 PyTorch 进行深度…...

【AI提示词】波特五力模型专家

提示说明 具备深入对企业竞争环境分析能力的专业人士。 提示词 # Role:波特五力模型专家## Profile - language:中文 - description:具备深入对企业竞争环境分析能力的专业人士 - background:熟悉经济学基础理论&#xff0c;擅长用五力模型分析行业竞争 - personality…...

python 的 ​uv、pip​ 和 ​conda​ 对比和技术选型

你好&#xff0c;我是 shengjk1&#xff0c;多年大厂经验&#xff0c;努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注&#xff01;你会有如下收益&#xff1a; 了解大厂经验拥有和大厂相匹配的技术等 希望看什么&#xff0c;评论或者私信告诉我&#xff01; 文章目录 一…...

《Python星球日记》 第63天:文本方向综合项目(新闻分类)

名人说&#xff1a;路漫漫其修远兮&#xff0c;吾将上下而求索。—— 屈原《离骚》 创作者&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 目录 一、项目需求分析1. 项目背景与目标2. 功能需求3. 技术方案概述 二、数据清洗与…...

面试题:请解释Java中的设计模式,并举例说明单例模式(Singleton Pattern)的实现方式

Java中的设计模式 设计模式是在软件开发过程中针对特定场景而使用的通用解决方案。设计模式可以帮助开发者编写出更加清晰、灵活和可维护的代码。设计模式分为三大类&#xff1a; 创建型模式&#xff1a;用于对象的创建过程&#xff0c;如单例模式、工厂模式、建造者模式等。…...

MySQL全量、增量备份与恢复

目录 一&#xff1a;MySQL数据库备份概述 1.数据备份的重要性 2.数据库备份类型 2.1从物理与逻辑的角度分类 物理备份 逻辑备份 2.2从数据库的备份策略角度分类 完全备份 差异备份 增量备份 3.常见的备份方法 3.1物理冷备份 3.2专用备份工具 MySQL dump或MySQL hot…...

rust 全栈应用框架dioxus server

接上一篇文章dioxus全栈应用框架的基本使用&#xff0c;支持web、desktop、mobile等平台。 可以先查看上一篇文章rust 全栈应用框架dioxus&#x1f448; 既然是全栈框架&#xff0c;那肯定是得有后端服务的&#xff0c;之前创建的服务没有包含后端服务包&#xff0c;我们修改…...

Clinica集成化的开源平台-神经影像研究

Clinica集成化的开源平台-神经影像研究 &#x1f31f; Clinica集成化的开源平台-神经影像研究引言 &#x1f6e0;️ 一、环境搭建与数据准备1. 安装Clinica&#xff08;附避坑指南&#xff09;2. 数据标准化&#xff08;BIDS格式处理&#xff09; &#x1f9e0; 二、sMRI预处理…...

LabVIEW中算法开发的系统化解决方案与优化

在 LabVIEW 开发环境中&#xff0c;算法实现是连接硬件数据采集与上层应用的核心环节。由于图形化编程范式与传统文本语言存在差异&#xff0c;LabVIEW 中的算法开发需要特别关注执行效率、代码可维护性以及与硬件资源的适配性。本文从算法架构设计、性能优化到工程实现&#x…...

【Pandas】pandas DataFrame cov

Pandas2.2 DataFrame Computations descriptive stats 方法描述DataFrame.abs()用于返回 DataFrame 中每个元素的绝对值DataFrame.all([axis, bool_only, skipna])用于判断 DataFrame 中是否所有元素在指定轴上都为 TrueDataFrame.any(*[, axis, bool_only, skipna])用于判断…...

【递归、搜索与回溯】专题一:递归(一)

&#x1f4dd;前言说明&#xff1a; 本专栏主要记录本人递归&#xff0c;搜索与回溯算法的学习以及LeetCode刷题记录&#xff0c;按专题划分每题主要记录&#xff1a;&#xff08;1&#xff09;本人解法 本人屎山代码&#xff1b;&#xff08;2&#xff09;优质解法 优质代码…...

pythonocc 拉伸特征

micromamba install -c conda-forge pythonocc-core opencascade.js安装不起来&#xff0c;ai用pythonocc练个手 拉伸线框 线成面 from OCC.Core.gp import gp_Pnt, gp_Dir, gp_Vec from OCC.Core.BRepBuilderAPI import BRepBuilderAPI_MakeEdge, BRepBuilderAPI_MakeWire f…...

防爆手机与普通手机有什么区别

在石油化工、矿山能源、危化品运输等特殊行业中&#xff0c;一部手机的选择可能直接关系到生产安全与人员生命。防爆手机作为工业安全通信的核心工具&#xff0c;与日常使用的普通手机存在本质差异。本文将从技术原理、安全标准、功能设计及适用场景等维度&#xff0c;解析二者…...

动手学深度学习12.3.自动并行-笔记练习(PyTorch)

以下内容为结合李沐老师的课程和教材补充的学习笔记&#xff0c;以及对课后练习的一些思考&#xff0c;自留回顾&#xff0c;也供同学之人交流参考。 本节课程地址&#xff1a;无 本节教材地址&#xff1a;12.3. 自动并行 — 动手学深度学习 2.0.0 documentation 本节开源代…...

第二十二天打卡

数据预处理 import pandas as pd from sklearn.model_selection import train_test_splitdef data_preprocessing(file_path):"""泰坦尼克号生存预测数据预处理函数参数:file_path: 原始数据文件路径返回:preprocessed_data: 预处理后的数据集""&quo…...

SET NX互斥功能的实现原理

Redis 的 SET key value NX 命令通过其原子性和底层数据结构的特性实现互斥功能&#xff0c;具体实现如下&#xff1a; 1. 互斥功能的实现原理 SET NX 的核心是 原子性操作&#xff1a;当且仅当键&#xff08;key&#xff09;不存在时&#xff0c;才会设置键的值。Redis 的单线…...

前端 CSS 样式书写与选择器 基础知识

1.CSS介绍 CSS是Cascading Style Sheet的缩写&#xff0c;中文意思为"层叠样式表"&#xff0c;它是网页的装饰者&#xff0c;用来修饰各标签 排版(大小、边距、背景、位置等)、改变字体的样式(字体大小、字体颜色、对齐方式等)。 2.CSS书写位置 2.1 样式表特征 层…...

一小时学会Docker使用!

文章目录 前言一、安装ssh连接工具二、安装docker三、Docker常见命令四、docker-compose使用 前言 Docker&#xff1a; Docker简单来说就是简化环境配置的&#xff0c;我们配置环境只需要简单的docker pull&#xff0c;docker run即可&#xff0c;而删除环境也很容易&#xff…...

android studio开发aar插件,并用uniapp开发APP使用这个aar

android studio开发aar插件&#xff0c;并用uniapp开发APP使用这个aar 使用android studio打包aar和Unity导入aar详解...

操作系统实战——QEMU模拟器搭建【rCore 操作系统】

操作系统大作业——QEMU模拟器搭建rCore操作系统 按照本篇步骤走&#xff0c;帮你少走很多弯路&#xff01;博主在自己做的过程中踩了很多坑&#xff0c;过程还是很痛苦的&#xff0c;走了很多弯路&#xff0c;现在都已经在文章中把坑填平了&#xff0c;把弯路修直了。 创作不易…...

web:InfiniteScroll 无限滚动

InfiniteScroll 无限滚动 分页加载 <div class"data-box" v-infinite-scroll"loadMore"> <li v-fori in dataList></li> </div>form: {current: 1,size: 10,}loadMore(){console.log(this.dataList.length, this.total ,8888)if…...

【Redis 进阶】哨兵模式

思维导图&#xff1a; 一、哨兵模式概述 &#xff08;一&#xff09;传统主从复制模式的局限性 在传统的Redis主从复制架构中&#xff0c;若主节点发生故障&#xff0c;运维人员需手动执行故障转移操作&#xff0c;将一个从节点提升为新主节点&#xff0c;并逐一通知所有客户…...

告别卡顿,图片查看界的“速度与激情”

嘿&#xff0c;小伙伴们&#xff01;今天电脑天空给大家介绍一款超好用的图片查看神器——ImageGlass&#xff01;这可不是普通的图片查看软件哦&#xff0c;它简直就是图片界的“全能王”。首先&#xff0c;它能打开的图片格式多到让你眼花缭乱&#xff0c;什么PNG、JPEG、GIF…...

02_线性模型(回归分类模型)

用于分类的线性模型 线性模型也广泛应用于分类问题&#xff0c;可以利用下面的公式进行预测&#xff1a; $ \widehat y w[0]*x[0]w[1]*x[1]…w[p]*x[p]b > 0$ 公式看起来与线性回归的公式非常相似&#xff0c;但没有返回特征的加权求和&#xff0c;而是为预测设置了阈值…...

力扣2094题解

记录&#xff1a; 2025.5.12 题目&#xff1a; 思路&#xff1a; 暴力遍历。 解题步骤&#xff1a; 1.统计数字出现次数&#xff1a;使用数组cnt来记录输入数组中每个数字的出现次数。 2.生成三位偶数&#xff1a;通过循环从100开始&#xff0c;每次递增2&#xff0c;生成…...

人物角色设定机制

模块一&#xff1a;角色塑造进阶技巧 将角色设定(Character Headcanon)提升至更高层次 当您通过Character Headcanon Generator生成基础设定后&#xff0c;可运用以下专业技巧深化角色塑造&#xff1a; 情感核心图谱分析法 解构角色情感驱动机制及其情境表现&#xff1a; 主…...

Python动态渲染页面抓取之Selenium使用指南

目录 一、Selenium技术架构解析 二、环境搭建与基础配置 1. 组件安装 2. 驱动配置 3. 基础操作模板 三、动态内容抓取核心策略 1. 智能等待机制 2. 交互行为模拟 3. 反爬应对方案 四、实战案例&#xff1a;电商评论抓取 五、性能优化与异常处理 2. 异常捕获 六、进…...