Python
文章平均质量分 90
Small___ming
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【Python基础】内置函数字典的 dict.get() 方法、hasattr()、getattr()等用法解释
函数/方法作用主要用途.get()安全获取字典值避免KeyError,提供默认值hasattr()检查对象是否有属性动态属性检查getattr()获取对象属性安全属性访问,支持默认值setattr()设置对象属性动态设置属性类型检查考虑继承关系的类型判断callable()检查是否可调用判断对象是否为函数/方法。原创 2025-11-17 23:19:10 · 505 阅读 · 0 评论 -
【Python基础】Python路径操作全解析:os.path、glob与pathlib从入门到精通
新项目首选pathlib:它是Python 3.4+的标准库,提供了面向对象的路径处理方式,代码更简洁、可读性更好。避免硬编码路径分隔符:使用os.path.join()或pathlib的/运算符,避免使用硬编码的’/‘或’'。使用glob进行模式匹配:特别是当需要遍历特定模式的文件时,glob与pathlib结合使用效果最佳。处理路径安全:在处理用户输入的路径时,使用.resolve()确保路径的安全性,避免目录遍历攻击。考虑EAFP风格。原创 2025-10-14 22:04:20 · 1048 阅读 · 0 评论 -
【Numpy基础】NumPy 的 indices 与 Python 的 slice:功能区别与适用场景
Slice(切片)是 Python 中的内置类型,用于表示序列的切片操作。它通常用在索引中,用于选择序列的子集。# 基本切片操作print(arr[1:4]) # 输出 [1, 2, 3]# 使用 slice 对象print(arr[s]) # 输出 [1, 2, 3]print(arr[2:7:2]) # 输出 [2 4 6]是 NumPy 库中的一个函数,用于生成一组表示网格索引的数组。它返回一个数组,其中每个元素都是其所在位置的索引值。原创 2025-09-15 15:51:05 · 861 阅读 · 0 评论 -
【Python基础】为什么 Python 的切片语法使用元组而非列表?
实际上,这种语法在内部被转换为使用slice# 多维数组的切片操作result = arr[:, 2, 1:3] # 这里的切片参数实际上被组合为元组特性元组 (Tuple)列表 (List)可变性不可变可变内存效率更高较低创建速度更快较慢哈希能力可哈希(如元素可哈希)不可哈希语义固定结构、记录动态集合安全性参数不会被意外修改可能被修改。原创 2025-09-15 15:36:49 · 706 阅读 · 0 评论 -
【Python学习】Python文件路径处理:os.path.join vs f-string 深度解析
在Python开发中,正确处理文件路径是每个开发者必备的技能。和Pathlib提供的不仅仅是路径拼接,它们确保路径的正确性、安全性和可移植性。在大多数情况下,性能差异可以忽略不计。虽然简洁,但只应在明确知道目标平台且路径简单的情况下使用。更快,但这点微优化通常不值得牺牲代码的安全性和可移植性。:当处理文件路径时,始终使用专门设计的路径处理工具。📌 经验法则:如果路径包含变量或需要跨平台,永远选择。,并揭示它们的关键区别。原创 2025-08-18 11:42:01 · 861 阅读 · 0 评论 -
【深度学习基础】张量与Tensor的区别?从标量到深度学习的多维世界
本文系统梳理了数学与深度学习中张量(Tensor)的核心概念。数学中的张量是多重线性映射,强调坐标变换不变性,而深度学习中的Tensor是计算机实现的多维数组,支持自动微分和GPU加速。文章详细解析了标量(0阶)、向量(1阶)、矩阵(2阶)及高阶张量的特性与应用场景,并通过对比表指出两者的关键差异:数学张量是抽象实体,深度学习Tensor则注重计算效率。最后介绍了Tensor的创建、转换、运算等实操方法,为理解神经网络的数据结构提供了清晰框架。原创 2025-07-16 14:09:32 · 1088 阅读 · 0 评论 -
【深度学习基础】PyTorch中model.eval()与with torch.no_grad()以及detach的区别与联系?
对比维度.detach()是否禁用梯度否是是(对特定张量)是否改变层行为是(Dropout/BatchNorm)否否是否共享数据否否是显存优化效果无直接影响显著优化(禁用计算图存储)局部优化(减少特定张量的显存占用)是否需要组合使用通常与一起使用通常与一起使用可单独使用,或与结合方法核心作用确保模型在评估阶段行为正确(如 Dropout、BatchNorm)。全局禁用梯度计算,减少显存和计算资源消耗。.detach()局部隔离梯度计算,保留数据但不参与反向传播。关键原则训练阶段。原创 2025-07-16 13:12:53 · 983 阅读 · 0 评论 -
【数据处理】Python对CMIP6数据进行插值——详细解析实现(附源码)
写在前面—为什么要写这篇博客?在气候科学和地球数据分析中,数据插值是一项基础且关键的任务。由于不同模型或观测数据的空间分辨率、层次结构存在差异,将数据统一到标准网格是后续分析的前提。本文结合一个实际的气候数据处理项目,详细介绍如何利用Python实现数据插值。代码主要功能包括:要想做好数据预处理,首先就要先了解CMIP6数据以及NC文件,关于CMIP6数据以及NC文件的的介绍可以参考:原始数据可能包含不规则网格或非标准变量名,预处理阶段需解决以下问题:查找变量:根据预定义的变量别名表(如可能对应、等),原创 2025-05-15 15:37:22 · 1051 阅读 · 0 评论 -
【数据处理】xarray 数据处理教程:从入门到精通
输出结果五、数据可视化表:可视化方法操作/方法功能输入参数输出参数.plot()快速可视化(等值线图、色阶图)xy: 维度名;: 颜色条参数;transform: 投影转换对象散点图可视化xy: 维度名;c: 颜色变量;size: 点大小对象示例代码# 绘制等值线图# 绘制散点图读取数据→ 2.访问变量→ 3.选择/切片→ 4.计算/分析→ 5.保存/可视化。原创 2025-05-14 15:28:05 · 2459 阅读 · 0 评论 -
【数据处理】 深入解析CMIP6数据与NetCDF(NC)文件:从入门到精通玩转NC文件!
小编最近在做一个气候项目,然后需要用到CMIP6数据,这个数据集里全是.nc文件,作为一个程序猿,小编也是第一次遇到这种文件,本着用什么学什么的原则,既然我们用到了,那就简单学习总结一下吧,如有不对的地方,还请各位读者指出!CMIP6网址第六次国际耦合模式比较计划(Coupled Model Intercomparison Project Phase 6,CMIP6)是当前全球气候研究的重要数据来源。原创 2025-05-13 12:01:51 · 1625 阅读 · 0 评论 -
【数据处理】NetCDF 文件:从入门到精通
NetCDF(Network Common Data Form)是一种自描述、平台无关、二进制格式的数据文件,广泛应用于气象、海洋、地球科学等领域。它能够存储多维科学数据(如时间、纬度、经度、高度等),并且自带元数据信息,便于数据交换和共享。(1) 坐标变量(Coordinate Variables)定义:与维度同名的一维变量,用于描述该维度的物理坐标。示例:# 定义维度# 创建坐标变量lat[:] = np.arange(-90, 90, 2.5) # 纬度值。原创 2025-05-13 11:53:55 · 2354 阅读 · 0 评论 -
【数据处理】精通 Pandas:从理论到实践的完整指南
Pandas 是基于 NumPy 构建的开源库,提供了高效的数据结构和数据分析工具。其核心数据结构是DataFrame(二维表格型数据结构)和Series(一维数组)。Pandas 的设计目标是让数据操作像 Excel 或 SQL 表一样直观。语句参数说明说明示例df.head(n)n:显示的行数(默认5)查看前 n 行数据df.head(3)df.tail(n)n:显示的行数(默认5)查看后 n 行数据df.tail(2)df.info()无参数。原创 2025-05-13 10:44:33 · 915 阅读 · 0 评论 -
【包的问题】路径是正确的,为什么会导入失败?如何科学的设置包的路径?
不知道大家有没有遇到过这种问题,在本地电脑上倒入自己定义的包没有任何问题,但是一到服务器上就报错,这到底是什么问题呢?于是小编总结了下面的解决方法,希望可以帮助你解决问题!推荐使用方法1:直接修改脚本,动态添加项目根目录到路径,兼容性最佳。若使用相对导入(方法2),需通过python -m运行脚本,避免直接执行子目录中的文件。方法3适合临时调试,但需每次设置环境变量。一定要注意自定义包的命名!在一个项目中,包含多个自定义包的时候一定要采用绝对路径,不然可能会报错!原创 2025-05-06 15:25:11 · 1273 阅读 · 0 评论 -
【python画图】:从入门到精通绘制完美柱状图
配色方案:使用seaborn颜色主题标签处理:自动旋转长标签输出格式:矢量图优先通过掌握这些技巧,你可以轻松制作出适合学术论文、商业报告等各种场景的专业级柱状图。建议保存参数速查表作为日常参考,并多加实践不同参数的组合效果。原创 2025-04-17 17:18:09 · 2212 阅读 · 0 评论 -
【Python画图】从入门到精通:如何画好折线图?
以下是对Python绘制折线图可配置参数的全面总结表格,分为核心参数样式参数坐标轴设置高级方法。原创 2025-04-16 10:50:36 · 2011 阅读 · 0 评论 -
【Python基础】深入浅出讲明白如何用Python画好各种图
不知道看到这篇博客的小伙伴是遇到什么问题才来看我这边篇博客,为了不浪费大家的时间,博主先简单介绍一下为什么要写这篇博客。博主最近在画图,但是遇到一个问题,就是相似的图要画很多遍,可能就只是稍微改几个参数,几行代码,这样子写几个方法的话代码重复率太高了,于是乎博主想写一个万能的画图代码,该代码只需要完成基本参数的设置,其他的无需改动,可以实现自动画图。为了实现该想法,我们就必须要知道画图需要提供什么,所以本篇博客将会先介绍plt的一些基本用法,了解这些用法之后再将其转化为我们的目标代码。功能。原创 2025-04-15 20:45:34 · 1044 阅读 · 0 评论 -
【Python】列表的创建:[[] for _ in range(2)] 与 [[]] * 2有什么区别?
2Why?????我想要的效果是mean_value存储两个数据的平均值,理论上来说shape应该是(2,1,3,1),但是这里为什么是(2,2,3,1)???输出:(2, 1, 3, 1)问题成功解决了!那么这两种创建列表的方式有什么不同呢?于是小编做了如下总结!list在 Python 中,列表的创建和复制行为分为浅复制(Shallow Copy)和深复制(Deep Copy)。它们的核心区别在于对嵌套对象(如子列表、字典等)的处理方式。1. 浅复制(Shallow Copy)原创 2025-04-15 19:27:26 · 806 阅读 · 0 评论
分享