- 博客(17)
- 收藏
- 关注
原创 Pandas清洗数据和预处理
核心分类:pandas 数据清洗方法可按场景分为缺失值处理、重复值处理、异常值处理、类型转换、字符串清洗五大类,覆盖 90% 以上的清洗需求。优先原则:缺失值优先填充(而非删除),异常值优先用四分位数法筛选,字符串数据先做标准化(去空格、统一大小写)。关键技巧fillna()是日常清洗中使用频率最高的方法,建议熟练掌握。
2026-03-03 00:43:02
24
原创 预防SQL注入攻击
核心防线:使用参数化查询 / 预处理语句,杜绝手动拼接用户输入到 SQL 中,这是预防 SQL 注入的根本;辅助防线:输入白名单校验、最小权限原则、屏蔽报错、WAF 防护,多维度降低风险;特殊场景:动态表名 / 字段名需用白名单校验,数据值仍保持参数化;持续防护:定期审计代码、渗透测试,确保防护措施落地生效。记住:没有单一的 “万能方案”,需组合使用以上措施,形成 “参数化 + 校验 + 权限 + 监控” 的完整防护体系,才能彻底抵御 SQL 注入攻击。
2026-02-21 00:44:25
528
原创 Pandas数据分箱
pd.cut():按数值宽度分箱,适合数据分布均匀的场景,支持自定义区间,是业务规则明确时的首选。pd.qcut():按样本数量分箱,每个箱子样本数大致相等,适合数据分布不均(如收入、销量)的场景。分箱时可通过labels参数自定义标签,让结果更易理解,通过统计各箱子的样本数。
2026-02-18 23:38:33
280
1
原创 Python数据类型及其函数
方法核心逻辑可变类型(列表 / 字典 / 集合):方法聚焦「增删改查」;不可变类型(字符串 / 元组 / 数字):方法聚焦「查询 / 转换」,无修改类方法。高频实用技巧strip()清洗输入、split()分割文本、join()拼接序列;append()pop()实现栈 / 队列、sort()排序;get()安全取值、items()遍历键值对;集合:自动去重、&/|/-实现交集 / 并集 / 差集。避坑点元组不可变,无append()remove()等修改方法;
2026-02-05 00:10:54
621
原创 Python线程数据共享
线程共享进程内存空间,天然能访问全局 / 共享变量,但多线程同时修改会导致数据竞争;安全共享的核心是将操作变为原子操作:基础场景用Lock加锁,数据流共享用Queue,私有数据用;非安全共享的典型问题是 “原子操作被打断”,表现为数据结果异常、不稳定,加锁是最直接的解决方式。
2026-02-04 23:50:40
599
原创 进程中常用函数及其作用
进程管理核心Process()创建进程、start()启动、join()等待,这三个是最基础且必用的函数。进程通信核心Queue()创建队列、put()存数据、get()取数据,是多进程间传递数据的首选方式(进程安全)。批量任务核心:进程池的(异步)和map()(批量),适合大量重复任务,比手动创建多个Process更高效。调试辅助用于定位进程,is_alive()用于监控进程状态。
2026-02-04 00:11:51
292
原创 Python 多进程之间的通信
进程的内存空间是相互隔离的,这意味着:核心特点:适用场景:主进程向子进程分发任务、子进程向主进程返回结果、子进程之间传递数据。完整代码示例:执行结果:plaintext2. 管道(multiprocessing.Pipe)- 轻量级、双向通信核心特点:适用场景:两个进程之间的高频、轻量数据交换(如实时状态同步)。完整代码示例:3. 管理器(multiprocessing.Manager)- 共享复杂数据结构核心特点:适用场景:多个进程需要共享 / 修改同一个复杂数据结构(如共享配置
2026-02-03 16:21:14
535
原创 Python中多线程、线程池、进程池使用
核心选择原则:IO 密集用线程池,CPU 密集用进程池,混合场景可组合使用两者。性能调优关键:线程池 / 进程池的需根据任务类型和硬件配置合理设置,并非越大越好。避坑要点:多线程注意 GIL 限制,多进程注意数据传递方式,所有并发任务都需做好异常处理和超时控制。
2026-02-03 11:02:20
374
原创 Python的生产者和消费者模式
生产者和消费者模式是一种解耦生产者:只负责生成数据(任务),不关心数据如何被处理;消费者:只负责处理数据(任务),不关心数据如何生成;缓冲区(队列):作为两者的中间桥梁,解决生产 / 消费速度不匹配、并发访问冲突的问题,是整个模式的核心。简单比喻:就像餐厅里,厨师(生产者)只管做菜放到出餐台(缓冲区),服务员(消费者)只管从出餐台取菜送给顾客,两者互不干扰,出餐台平衡了厨师做菜快、服务员送餐慢的问题。核心逻辑:生产者生产数据→放入缓冲区(队列)→消费者从缓冲区取数据处理,解耦生产和消费。选型原则。
2026-01-31 23:22:00
343
原创 excel表格计算展示店内销量top5的品类及其销量占比
C:C,Sheet3!E:E,"其它")/SUMIFS(Sheet3!C:C,Sheet3!
2026-01-29 20:00:06
300
原创 Numpy和Pandas的常用函数
一阶差分,对序列中的元素进行差分运算,也就是用当前元素减去前一个元素得到差值,默认情况下,它会计算一阶差分,即相邻元素之间的差值。0 或 'index' 表示按列计算,1 或 'columns' 表示按行计算,默认值为 0。表示要向前或向后移动的周期数,用于计算差值。常见统计信息(count、mean、std、min、25%、50%、75%、max)按某列的值排序,可传入列表来按多列排序,并通过ascending参数设置升序或降序。判断是否为缺失值(如 NaN 或 None)计算分位数(q: 0~100)
2026-01-28 12:56:55
639
原创 np.random.seed()的使用
核心作用np.random.seed(整数)固定随机数生成器的初始状态,使后续随机数结果可复现;使用要点:种子需在生成随机数之前设置,相同种子生成相同序列,不同种子 / 无种子生成不同序列;实践建议:测试 / 演示时固定种子(比如 42、100 等),生产环境如需真随机则不设置种子,或使用更安全的随机源。
2026-01-27 11:18:34
265
原创 python的resample()函数
resample()是 pandas 处理时间序列重采样的核心函数,必须基于 DatetimeIndex 索引。降采样(高频→低频)需要搭配聚合函数(sum/mean 等),升采样(低频→高频)需要搭配填充函数(ffill/bfill 等)。频率字符串是关键(如 'H'= 小时、'D'= 天),可组合使用(如 '10T'=10 分钟、'2H'=2 小时)。
2026-01-27 10:46:16
508
原创 NumPy 的 ndarray 所特有的广播机制
核心作用:广播让不同形状(满足规则)的 ndarray 能直接进行元素级运算,无需手动扩展数组,提升代码简洁性和运行效率。关键规则:从最后一维向前比对,维度大小需相等或其中一个为 1(缺少维度视为 1)。注意点:若维度不满足兼容条件会报错,此时需要手动调整数组形状(如reshape)后再运算。
2026-01-23 23:14:39
241
原创 python单例模式的运用
核心目标:单例模式的核心是确保一个类仅创建一个实例,且全局可访问。实现方式重写__new__:基础且直观,适合自定义控制实例创建逻辑。装饰器:灵活可复用,适合多个类需要单例的场景。模块导入:Python 特有,最简单,适合无需复杂逻辑的单例。适用场景:需要全局唯一状态(如配置、连接、缓存)的场景,避免资源浪费和数据不一致。
2026-01-19 21:36:22
426
原创 Python 中的魔术方法(特殊方法)
Python魔术方法是以双下划线__开头和结尾的特殊方法,由解释器自动触发,无需手动调用。这些方法赋予类更灵活的行为,使其能像内置类型一样工作。常用魔术方法包括:构造初始化类(init、new)、字符串表示类(str、repr)、算术运算类(add、sub)、比较运算类(eq、gt)、容器操作类(len、getitem)和上下文管理类(enter、exit)。通过实现这些方法,自定义类可以支持加减运算、索引访问、with语句等特性,使代码更Pythonic。建议结合实际场景练习这些魔术方法的使用。
2026-01-16 20:18:23
410
原创 kettle 获取多张 表前缀不一样,表结构一样的表中的数据
从sql server 多张表结构相同的的表,查询统计结果,写入到mysql数据库中
2024-06-19 16:59:46
608
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅