自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 NumPy入门指南:30分钟掌握核心技巧

NumPy├── ndarray: 多维数组├── 创建: array, zeros, ones, arange, random...├── 属性: shape, ndim, size, dtype├── 索引: 切片, 布尔索引, 花式索引├── 操作: reshape, transpose, concatenate, split├── 运算: + - * / **, 聚合(sum, mean), 广播├── 数学: sqrt, exp, log, sin...

2025-09-05 16:48:20 445

原创 NumPy广播机制:高效数组运算的秘诀

的数组在进行算术运算(如加、减、乘、除)时,能够自动地“对齐”并进行计算,而无需显式地复制数据来使它们的形状完全相同。开始,逐个向前检查两个数组的维度大小。两个数组要能进行广播,它们的每个维度必须满足以下。广播机制极大地简化了代码,避免了不必要的内存消耗,是高效进行向量化操作的核。这节省了大量内存和复制数据的时间,使得向量化操作非常高效。循环,但这效率很低。是 NumPy 中一个非常强大且优雅的机制,它允许。如果维度不满足规则,广播会失败并抛出。中,NumPy 并不会创建一个和。,然后进行逐元素相加。

2025-08-27 15:13:15 423

原创 SQL窗口函数(Window Functions)从入门到精通|超详细实战讲解

查每个部门工资最高的前3名员工”“计算每个用户的订单金额累计和”“对销售额进行排名,并标出Top 10”“求每个班级学生的成绩与平均分的差值”这些需求如果用传统的GROUP BY或子查询来实现,往往代码复杂、效率低下。而窗口函数(Window Function)正是为解决这类“分组内计算”问题而生的强大工具!本文将带你全面掌握 SQL 窗口函数的核心语法、常用函数和实战技巧,助你轻松应对复杂分析场景。窗口函数(Window Function)是一种在结果集的“窗口”或“分区”内进行计算。

2025-08-26 09:24:19 1091

原创 OLTP与OLAP:实时处理与深度分析的较量

定义:特点:应用场景:定义:特点:应用场景:

2025-08-08 09:07:17 326

原创 深入理解数据库连接池(Connection Pool):原理、优势与常见实现

连接池是现代应用开发中不可或缺的技术,它通过连接复用有效解决了数据库连接的性能瓶颈。无论你是开发Web应用、微服务,还是大数据系统,掌握连接池的原理和使用方法,都能帮助你构建更高效、更稳定的系统。🔚一句话总结连接池不是“创建连接”,而是“管理连接”——让连接“活”得更久,用得更高效!Java JDBC 规范欢迎关注我的优快云博客,获取更多Java、数据库、系统设计相关技术分享!如有疑问,欢迎在评论区留言交流!✅本文为原创,转载请注明出处。

2025-08-06 13:27:08 758

原创 Python配置管理:从字典到高级实践

✅结论在 Python 中,使用字典(dict)管理配置是一种简单、高效、广泛采用的最佳实践,尤其适用于数据库连接、API 接口等场景。🔧进阶建议随着项目发展,建议逐步过渡到pydantic或等更强大的配置管理工具,以提升代码的健壮性、可维护性和安全性。📌核心优势回顾结构清晰,可读性强支持**kwargs解包,调用简洁易于集中管理与外部加载兼容 JSON/YAML,便于配置文件化如果你有更多关于 Python 配置管理的技巧,欢迎在评论区分享交流!

2025-08-05 09:00:14 928

原创 AI与AGI:从狭义智能到通用智能

随着技术的发展,人工智能(AI)已经成为我们日常生活中不可或缺的一部分。从语音助手到自动驾驶汽车,AI的应用无处不在。然而,当我们谈论AI时,通常指的是狭义人工智能(Narrow AI)。本文将探讨什么是通用人工智能(Artificial General Intelligence, AGI),并将其与当前主流的狭义人工智能进行对比。AI是指利用计算机和机器模拟、模仿或扩展人类智能的技术和系统。它使计算机系统能够自主地执行各种任务,包括感知、理解、推理、学习、决策和交互等,而无需明确的人类编程指令。

2025-07-31 18:38:36 394

原创 Python-多线程编程

进程:操作系统分配资源的基本单位,拥有独立的内存空间。线程:进程中执行的一个实体,共享同一进程的资源(如内存、文件句柄等)。

2025-07-17 18:32:32 460

原创 Python枚举技巧:轻松获取索引与值

在日常开发中,我们经常需要遍历一个序列(如列表、元组或字符串)并同时获取元素的索引和值。Python 提供了一个非常方便的内置函数——,它可以帮助我们轻松地实现这一点。本文将详细介绍 的用法,并通过一些实用的例子展示它的强大功能。 是 Python 内置的一个函数,它可以接受一个可迭代对象(如列表、元组、字符串等),并返回一个枚举对象,该对象生成由索引和对应元素组成的元组 。 iterable:要遍历的可迭代对象。 start(可选):起始索引,默认为 。📊 使用 的好处 简化

2025-07-17 18:20:11 469

原创 Python--NumPy切片

在编程中,“切片”就是从一个数据结构中取出一部分的意思。就像你从一块蛋糕中切下一块来吃一样 😊在NumPy中,你可以对一维、二维甚至更高维的数组进行切片操作。写法含义arr[1]取第1行arr[1, 2]取第1行第2列的元素取前两行、中间两列组成的子数组arr[:, 1]取所有行的第1列arr[1, :]取第1行的所有列。

2025-07-14 13:06:24 359

原创 Python 异常处理机制详解:try-except 捕获异常

在 Python 中,异常(Exception)是指程序在运行过程中发生的错误。当程序遇到错误时,会抛出一个异常对象,如果这个异常没有被处理,程序就会终止执行。。除了内置异常,我们也可以自定义异常类,以满足特定业务需求。try:raise MyError("这是一个自定义异常!")print("捕获到自定义异常:", e)捕获到自定义异常: 这是一个自定义异常!try-except是 Python 中处理异常的核心机制,掌握它可以帮助我们写出更安全、更健壮的程序。异常的基本概念try-except。

2025-07-11 17:48:23 489

原创 Python私有属性:隐藏数据的秘密武器

在类中定义的属性默认是公开的(public),也就是说外部可以直接访问和修改这些属性值。p = Person("张三")print(p.name) # 输出:张三p.name = "李四"print(p.name) # 输出:李四这样虽然方便,但也存在风险:如果用户随意修改对象的状态,可能导致程序逻辑混乱甚至崩溃。为了防止这种情况,我们可以使用私有属性(private attribute)来限制外部直接访问。在 Python 中,要定义一个私有属性,只需在属性名前加双下划线__

2025-07-01 15:49:00 873

原创 迭代器 vs 生成器:Python的懒加载神器

迭代器是一个可以记住遍历位置的对象。它实现了两个方法:__iter__():返回迭代器自身__next__():返回下一个值,如果没有更多元素了,会抛出异常生成器是一种特殊的迭代器,它使用yield关键字来返回值。每次调用next()时,生成器函数会从上次暂停的地方继续执行。对比项迭代器生成器创建方式实现__iter__和__next__使用yield或生成器表达式内存占用一般更小(惰性求值)可重用性通常只能遍历一次同样只能遍历一次适用场景自定义迭代逻辑。

2025-06-30 18:39:40 184

原创 解密闭包:函数如何记住外部变量

闭包是一个函数对象,它不仅记住它的代码逻辑,还记住了定义它时的自由变量(即非全局也非局部,但被内部函数引用的变量)。即使外部函数已经执行完毕,这些自由变量的值仍然保存在内存中,可以通过闭包访问和使用。闭包是由函数及其相关引用环境组合而成的实体。它允许函数“记住”并访问其定义范围内的变量,即使那个函数在其定义的作用域外被调用。闭包广泛应用于各种编程模式中,如装饰器、工厂函数等。

2025-06-30 18:36:43 358

原创 Python元组:高效不可变数据结构详解

Python 中的元组(Tuple)是一种非常常用的数据结构。它与列表(List)类似,但具有不可变性(immutable),这使得它在某些场景下更加安全和高效。本文将详细介绍元组的特性、常用操作及最佳实践,帮助你更好地理解和使用元组。元组是 Python 中的一种有序、不可变的集合类型。元组中的元素可以是任意类型的对象(如整数、字符串、浮点数、甚至其他元组等)。元组一旦创建后,其内容不能被修改(即不可变)。print(t1) # 输出: (1, 2, 3)

2025-06-26 11:19:48 427

原创 Python 中的 random 模块

函数名功能生成 0~1 的浮点数生成 a~b 的整数从序列中随机选一个元素从序列中随机选 k 个不重复元素打乱序列顺序设置随机种子random模块是 Python 中最实用的标准库之一,适用于游戏开发、数据采样、模拟实验等多种场景。掌握它的使用,不仅能提高你的编程效率,也能让你写出更有趣、更有创意的程序。如果你还有关于random模块的应用想法或疑问,欢迎留言讨论 😊📌喜欢这篇文章?📲 关注我,获取更多 Python 编程干货与实战技巧!

2025-06-26 09:48:19 1015

原创 SQL语句四大分类详解:DDL、DML、DQL、DCL

SQL(Structured Query Language)是用于管理和操作关系型数据库的标准语言。无论是开发人员还是数据库管理员,掌握 SQL 是必不可少的技能。SQL 根据功能的不同,通常被划分为四大类✅ DDL(数据定义语言)✅ DML(数据操作语言)✅ DQL(数据查询语言)✅ DCL(数据控制语言)本文将带你全面了解这四类 SQL 语句的功能、使用场景及示例,帮助你更好地理解和使用 SQL。用于定义和管理数据库对象的结构,如表、视图、索引等。分类全称主要命令作用特点。

2025-06-25 11:08:41 1326

原创 Python中filter()函数详解

filter()就是一个筛选工具,它可以按照你定义的规则,从一组数据中挑出满足条件的元素。

2025-06-25 08:00:00 502

原创 Python命名空间与作用域全解析

你可以把它想象成一个“电话本”或者字典(dictionary),里面记录了你程序中使用的名字(比如变量名、函数名、类名)和它们对应的值或对象。x = 10'x': 10,这就是一个命名空间。作用域是一个规则,它决定你在一个位置能不能访问某个名字。你在哪个地方能用哪些命名空间里的名字?术语含义示例命名空间存储变量名和值的地方(像字典)作用域决定在哪个区域可以访问哪个命名空间LEGB 规则Local (L)函数内部定义的变量嵌套函数的外部函数Global (G)模块级别的变量x = 10。

2025-06-24 10:56:22 1396

原创 Python命名空间:名字管理的秘密

你可以把命名空间它记录了你程序中使用的各种名字(变量名、函数名、类名等)和它们对应的内容。比如你写了一个变量x = 10“哦,用户用了 x 这个名字,它代表的是 10。

2025-06-24 10:25:15 490

原创 MySQL连接查询全解析:内连外连与交叉

连接查询是关系型数据库中最核心的操作之一,它允许我们将多个表中的数据关联起来。:返回两个表的笛卡尔积,即左表中的每一行与右表中的每一行的所有可能组合。需要包含"所有"记录时(即使没有匹配)使用LEFT/RIGHT JOIN。如果某行在一个表中存在但在另一个表中没有匹配项,则该行不会出现在结果中。:返回左表的所有记录,即使右表中没有匹配项。:返回右表的所有记录,即使左表中没有匹配项。连接查询全面详解:内连接、外连接与交叉连接。:只返回两个表中满足连接条件的匹配行。:返回左右两表的所有记录,无匹配时用。

2025-06-23 09:39:50 386

原创 维度退化:数据建模的高效秘籍

如果某些维度属性的基数较低且经常被一起使用,则可以考虑将这些属性直接添加到事实表中。层的数据已经经过了一定程度的聚合,因此在这里实施维度退化可以直接影响到最终用户查询性能。:维度退化是指将本应存储在维度表中的属性,直接作为字段保留在事实表中的设计技术。:在这个层次上进行维度退化主要是为了减少未来数据处理流程中的复杂性,比如降低后续。:在汇总层面上做维度退化有助于加速查询速度,特别是在执行多维分析时。该维度只有1-2个属性(如只有订单ID)不适合需要维度详细信息的场景。创建含退化维度的事实表。

2025-06-21 09:13:37 499

原创 行式存储vs列式存储:数据存储方式大揭秘

像学校按"科目"整理试卷,所有学生的数学试卷在一起,语文试卷在另一个地方。:像医院按"病人"整理病历,每个病人的所有资料在一起。相当于翻阅每个学生的完整档案,只找数学成绩。:把每一行的所有数据连续存储在一起。找到该学生的行记录即可获得所有信息。需要整行数据的操作(如OLTP)需要聚合分析少量列(如OLAP):把每一列的数据分别存储在一起。直接读取"数学"这一列数据。行式存储:通俗易懂的解释。:查询某个学生的所有信息。很高(同类型数据好压缩):计算全年级数学平均分。需要读取每一行完整数据。

2025-06-20 08:13:03 398

原创 数据库中的粒度简介

换句话说,它描述了数据记录中最细级别的详细程度。粒度越粗,则表示数据汇总或抽象的程度越高。:对数据进行一定程度的聚合,减少存储空间并加快查询速度,适用于大多数常规分析需求。:高度汇总的数据,便于快速获取概览信息,但失去了很多细节,主要用于高层决策支持。选择合适的粒度级别取决于你的业务需求、可用资源以及预期的查询模式。汇总每天有多少不同的用户访问了网站,总共浏览了多少页面等信息。对每小时的数据进行平均处理,得到该时间段内的整体气象状况。:提供最详细的原始数据,适合需要深入分析的情况。每次销售交易的详细记录。

2025-06-19 08:11:03 428

原创 编码揭秘:ASCII与UTF-8的区别

编码就像一种「翻译规则」,把人类能理解的字符(比如字母、数字、符号)转换成计算机能存储和处理的二进制(:全球通用的编码,可以表示几乎所有语言的字符(包括英文、中文、:用1~4个字节表示一个字符,英文用1字节,中文通常用3字节。:最早用于英语国家,只能表示基本的英文字符、数字和符号。:UTF-8能表示更多字符,而ASCII只能表示英文。(即1字节,实际占用7位,最高位为0)表示一个字符。:全球通用,1字符=1~4字节(兼容ASCII)。),用于表示特殊符号、外语字母等。:英语的基础编码,1字符=1字节。

2025-06-18 08:19:29 1165

原创 力扣题库答案-数据库584

解决思路:简单的加个where条件筛选就可以,选出referee_id 不等于2或者值为null的姓名。

2025-05-20 19:22:31 134

原创 力扣题库答案-数据库577

解决思路:使用left join连接两张表,on条件设为empId相等,筛选出姓名以及奖金金额,使用where筛选出奖金<1000的数据。注意的点:表中没有奖金的数据为null,需要多加个判断为null的条件。

2025-05-20 19:15:45 275

原创 力扣题库答案-数据库197

通过自连接比较每一天的温度与前一天的温度,选择温度比前一天高的日期。通过DATEDIFF筛选出日期相差一天的数据,在对气温做条件筛选。

2025-05-17 15:51:03 199

原创 力扣题库答案-数据库196

该表的每一行包含一封电子邮件。电子邮件将不包含大写字母。驱动程序将首先编译并运行您的代码片段,然后再显示。(对于 Pandas 用户,请注意你应该直接修改。(对于 SQL 用户,请注意你应该编写一个。所有重复的电子邮件,只保留一个具有最小。id 是该表的主键列(具有唯一值的列)。运行脚本后,显示的答案是。

2025-05-17 14:49:43 224

原创 力扣题库答案-数据库182题

在给定的 Person 表中,id 是主键,email 字段存储电子邮件地址。任务是找出所有重复的电子邮件。可以通过使用 GROUP BY 和 HAVING 子句来实现。具体查询语句为:SELECT email FROM Person GROUP BY email HAVING COUNT(*) > 1。HAVING 子句在 GROUP BY 之后进行筛选,并且可以结合聚合函数(如 COUNT)使用,而 WHERE 子句则是在分组前进行筛选且不能直接使用聚合函数。

2025-05-17 13:45:32 114

原创 SOTA是什么意思?

SOTA效果,SOTA结果是什么意思

2024-03-01 15:17:48 4256 1

原创 _getch()与_kbhit()函数介绍与简单举例

getch()与kbhit()函数介绍与简单举例

2024-01-04 14:27:33 1935 1

原创 无图型界面centos7修改字体大小

centos改变字体大小

2023-05-16 13:39:47 2468 2

原创 关于VS C++ 无法打开 源 文件graphics的一条问题解决思路

VS C/C++只有graphics.h源文件无法打开,这个方法不知道你就out啦!!

2023-02-10 23:58:19 17085 15

原创 输入hadoop version时,解决Cannot execute /home/hadoop/libexec/hadoop-config.sh.的方法

解决Cannot execute /home/hadoop/libexec/hadoop-config.sh.的方法

2022-11-13 14:52:15 4104 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除