
python基础
文章平均质量分 81
niuguangshuo
字节跳动音视频算法专家
展开
-
Python设计模式:代理模式
代理模式(Proxy Pattern)是一种结构型设计模式,它为其他对象提供一种代理以控制对这个对象的访问。代理模式通过引入一个代理对象来间接访问真实对象,从而在不改变真实对象的情况下,增加对其访问的控制和管理。在软件开发中,直接访问某个对象可能会涉及到复杂的操作、资源管理或安全问题。例如,在处理大型对象时,可能不希望在程序启动时就加载所有数据,而是希望在真正需要时才进行加载。此外,某些对象可能需要进行权限检查、日志记录或其他操作,这些都可以通过代理模式来实现。原创 2025-04-02 21:40:36 · 279 阅读 · 0 评论 -
Python设计模式:责任链模式
责任链模式(Chain of Responsibility Pattern)是一种行为型设计模式,它允许将请求的发送者和接收者解耦。通过将多个处理对象连接成一条链,责任链模式可以让请求沿着这条链传递,直到有一个对象处理它为止。这种模式的核心思想是将请求的处理逻辑分散到多个处理者中,每个处理者负责处理特定类型的请求。原创 2025-04-01 19:09:57 · 593 阅读 · 0 评论 -
Python设计模式:克隆模式
克隆模式的核心思想是通过复制一个已有的对象(原型)来创建一个新的对象(克隆)。这种方式可以避免重复的初始化过程,从而提高效率。clone。原创 2025-04-01 11:44:27 · 857 阅读 · 0 评论 -
Python设计模式:中介模式
中介模式是一种行为设计模式,它通过引入一个中介对象来协调多个对象之间的交互。中介者负责管理对象之间的通信,避免了对象之间的直接引用,从而降低了系统的复杂性和耦合度。原创 2025-03-28 12:59:39 · 589 阅读 · 0 评论 -
数据挖掘上机报告---利用 Count-Min Sketch 识别频繁通信主机对
一、报告任务对于一个通信数据包,文件中每一行为:X,Y,代表IP为X的主机发向IP为Y的主机的一个数据包。使用Count-Min Sketch方法识别Top-10频繁通信主机对。二、算法原理Count-Min Sketch算法,用于解决大数据统计难题。算法的特点是:不存储所有的不同的元素,只存储它们Sketch的计数。基本的思路是为:1.创建一个长度为m的数组,用来计数,初始化每个元素的计...原创 2019-04-17 11:31:48 · 601 阅读 · 0 评论 -
在 Linux 服务器中保持 Python 脚本不挂断:使用 nohup 和 screen
为什么要确保程序不挂断?在远程工作时,网络连接可能会不稳定,或者你可能需要临时关闭终端。若在这些情况下运行的脚本未能保持活跃,可能会导致数据丢失或任务中断。尤其是在处理长时间运行的任务(如数据分析、机器学习模型训练等)时,意外中断会浪费大量时间和资源。因此,选择合适的方法来确保程序持续运行是非常重要的。使用方式与优劣势2.1 使用nohup使用方式:nohup(no hang up)命令用于忽略挂起信号,使得程序在用户退出后仍然继续运行。基本用法如下:nohup python your_script原创 2024-10-30 15:29:09 · 527 阅读 · 0 评论 -
Python设计模式:状态模式
状态模式是一种行为设计模式,它允许对象在其内部状态改变时改变其行为。换句话说,状态模式使得一个对象在其状态改变时能够表现得就像是改变了其类。原创 2025-03-26 11:33:01 · 932 阅读 · 0 评论 -
Python设计模式:监听模式
监听模式(Observer Pattern)是一种行为设计模式,允许对象(称为“观察者”或“监听者”)在另一个对象(称为“被观察者”或“主题”)的状态发生变化时接收通知。这种模式的核心思想是解耦,使得被观察者和观察者之间没有直接的依赖关系,从而提高系统的灵活性和可维护性。在监听模式中,观察者可以动态地注册和注销到被观察者。当被观察者的状态发生变化时,它会通知所有注册的观察者,观察者可以根据需要执行相应的操作。这种模式特别适用于需要处理异步事件的场景,例如用户界面事件、数据变化通知等。原创 2025-03-19 18:03:10 · 979 阅读 · 0 评论 -
Deepseek本地部署指南:在linux服务器部署,在mac远程web-ui访问
32B 模型在推理基准测试中表现优异,接近 70B 模型的推理能力,但对硬件资源需求更低。通过上面的步骤,已经可以直接在 Linux服务器通过命令行的形式使用Deepseek了。设置OLLAMA_HOST=0.0.0.0环境变量,这使得Ollama服务能够监听所有网络接口,从而允许远程访问。为了确保您的Linux服务器允许从外部访问Ollama服务,您需要配置防火墙以允许通过端口11434的流量。在完成上述配置后,您可以通过远程设备(如Mac)测试对Ollama服务的访问。原创 2025-02-06 08:52:57 · 30165 阅读 · 30 评论 -
彻底解决 macOS 下Matplotlib 中文显示乱码问题
安装支持中文的字体:确保系统中安装了支持中文的字体。本文列出的一般都是系统自带的。配置 Matplotlib 使用这些字体:在 Matplotlib 中设置字体,以确保中文字符能够正确显示。# 设置字体为支持中文的字体matplotlib.rcParams['axes.unicode_minus'] = False # 解决负号 '-' 显示为方块的问题matplotlib.rcParams['font.family'] = 'Kaiti SC' # 可以替换为其他字体'''原创 2024-11-26 12:33:59 · 1083 阅读 · 0 评论 -
在 PyCharm 中使用 “Run on Console“ 查看和操作变量
Run on Console” 是 PyCharm 的一个特性,允许开发者在集成控制台中运行 Python 代码。通过这个功能,您可以在代码执行后直接与控制台进行交互,查看变量的值,并进行进一步的操作。通过 PyCharm 的 “Run on Console” 功能,您可以在程序运行完成后方便地查看和操作每个变量。这种交互式的调试方式能够极大地提高开发效率,帮助您快速验证代码逻辑和修复问题。原创 2024-11-07 11:16:42 · 957 阅读 · 0 评论 -
Matplotlib 学习指南
Matplotlib 是一个用于绘制二维图形的库,尤其适合科学计算和数据分析。它的核心模块pyplot提供了一种类似 MATLAB 的接口,使得绘图变得简单直观。通过pyplot,用户可以方便地创建图形、设置图表属性和显示图表。Matplotlib 是一个功能强大的数据可视化库,适用于各种类型的图表和数据分析。通过本文的示例,您可以了解如何使用 Matplotlib 创建线图、散点图、柱状图、饼图等。掌握这些基本操作将有助于您在数据科学和数据分析中的工作。原创 2024-11-11 17:21:47 · 405 阅读 · 0 评论 -
理解 Python 中的迭代器和生成器
_iter__():返回迭代器对象本身。__next__():返回序列中的下一个值。如果没有更多的值可返回,则应该引发异常。下面是一个自定义迭代器的示例,它生成一个给定范围内的整数。else:# 使用自定义迭代器print(num)生成器是一个特殊类型的迭代器,使用yield关键字来返回值。生成器函数在执行时会暂停,并在后续调用时继续执行。生成器可以用更简洁的方式创建迭代器。迭代器和生成器是 Python 中非常强大的工具,它们允许您以高效且优雅的方式处理可迭代对象。原创 2024-11-08 17:48:08 · 503 阅读 · 0 评论 -
Pandas 常用操作指南
Pandas 是一个功能强大且灵活的数据分析库,适用于数据清洗、处理和分析。通过本文的示例,您可以看到 Pandas 提供了丰富的数据操作功能,包括数据选择、过滤、排序、分组、合并、清洗、导入导出等。掌握这些基本操作将有助于您在数据科学和数据分析中的工作。希望这篇博客能帮助您更好地理解和使用 Pandas!原创 2024-11-10 19:38:05 · 286 阅读 · 0 评论 -
深入理解 Python 中的闭包概念
闭包(Closure)是一个函数对象,它可以记住并访问定义时的作用域,即使在其外部调用时。简单来说,闭包是一个函数及其相关的环境(即自由变量)组合而成的对象。闭包的主要特性是它能够“捕获”外部作用域的变量,使得这些变量在函数外部仍然可用。原创 2024-11-08 16:35:25 · 685 阅读 · 0 评论 -
Python 中 YAML 和 JSON 对比
通过上述示例,我们展示了如何在 Python 中对 YAML 和 JSON 数据进行增、删、查、改(CRUD)操作。虽然 YAML 和 JSON 都是流行的数据序列化格式,但它们在语法和可读性上有所不同。YAML 更加可读,适合用于配置文件,而 JSON 则更轻量、解析速度快,广泛用于 Web 数据交换。在选择使用哪种格式时,应根据具体的应用场景和需求做出决定。希望本文能够帮助您更好地理解 Python 中 YAML 和 JSON 的操作及其优劣势!原创 2024-11-08 19:22:03 · 451 阅读 · 0 评论 -
PEP 8命名规范
文件名: user_management.pyclass User: # 类名def __init__(self, username, age): # 函数名self.username = username # 变量名self.age = age # 变量名def is_adult(self): # 函数名# 常量名def add_user(user): # 函数名。原创 2024-11-08 19:39:12 · 519 阅读 · 0 评论 -
Python 中常见方法的函数重写
在 Python 中,函数重写是面向对象编程的核心特性之一。通过重写父类的方法,子类可以提供特定的实现,从而实现多态和灵活的代码设计。常见的重写方法包括__init__speak__str____repr____len____add____iter__和__call__等。这些方法使得 Python 的对象更加灵活和强大,能够适应不同的需求和场景。通过合理使用函数重写,您可以编写出更具可读性和可维护性的代码。原创 2024-11-08 19:34:10 · 612 阅读 · 0 评论 -
Python简明教程读书笔记
1.在面向过程 的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在面向对象 的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。2.对于编辑器的基本要求之一是语法加亮功能,利用这一功能,你的Python程序的不同部分被标以不同的颜色,这样你可以更好 看清楚 你的程序,使它的运行显得形象化...原创 2018-09-05 19:53:25 · 315 阅读 · 0 评论