Coding养成--Python

ASME B31.3-2024工艺管道标准介绍 ASME B31.3-2024《过程管道》是ASME发布的最新版工业管道标准,适用于石油、化工、制药等行业的管道系统设计、建造和维护。该版标准进行了多项重要更新,包括软管管理、应力指数调整、新增管件类型、焊接检查和泄漏测试等条款修订,并新增了书面报告要求。标准共594页,为全球过程工业提供管道安全规范,对保障管道系统完整性、可靠性具有重要意义,被多国强制采用或推荐使用。 阅读详情

#The diary of a Python learner

Date:21.12.2023 Thurs.


Focus:返回函数、闭包对于内存的保护

Key:

闭包尽量避免循环变量作为外层参数

若要对外层函数赋值,同时保证不被初始化,提前用nonlocal在内层声明


Practice:

1.利用闭包返回一个计数器函数,每次调用它返回递增整数:

# -*- coding: utf-8 -*-
def createCounter():
  x=0
  def counter():
    nonlocal x
    x=x+1
    return x
  return counter

# 测试:
counterA = createCounter()
print(counterA(), counterA(), counterA(), counterA(), counterA()) # 1 2 3 4 5
counterB = createCounter()
if [counterB(), counterB(), counterB(), counterB()] == [1, 2, 3, 4]:
    print('测试通过!')
else:
    print('测试失败!')

2.

# -*- coding: utf-8 -*-
import


Difficulty?

循环变量时应再加一层函数使循环变量不直接被引用,同时用i作为每次循环的指针

注意外层函数返回的是内层函数还是使用内层中返回的参数


Addition:同层代码和return以及内层def同样缩进

振动分析-46-设备振动监测和故障诊断能力提升需要理解和掌握的知识体系 提升振动分析能力对于确保机械设备的高效运行和预防故障至关重要。 阅读详情

相关推荐

用Matlab系统辨识工具箱搞定温控系统建模:从阶跃响应到传递函数(附完整代码)

本文详细介绍了如何使用Matlab系统辨识工具箱进行温控系统建模,从阶跃响应数据采集到传递函数参数辨识的全过程。通过实际案例和完整代码,帮助工程师快速掌握PID控制参数整定技巧,提升温控系统设计效率。特别适合单片机开发者和自动化控制工程师参考。

weixin_30736301的博客 309

Coding养成--Python(18)

从str转换为datetime可以用.strptime('2025.02.21','%Y-%m-%d %H:%M:%S')(1970年以前的时间timestamp为负数),当前时间就是相对于epoch time的秒数,称为timestamp。,最佳方法是将其转换为timestamp再存储,因为timestamp的值与时区完全无关。Key:通过datetime获取时间、转换为timestamp、与str的互转、时区转换。表示的时间需要时区信息才能确定一个特定的时间,否则只能视为本地时间。

RedDevil_7的博客 444

simulink调用C代码函数-C Caller模块

simulink中如何调用写好的C代码函数?使用C Caller模块调用C代码。

weixin_40531919的博客 5670

Coding养成--Python(17)

a-zA-Z\_][0-9a-zA-Z\_]*可以匹配由字母或下划线开头,后接任意个由一个数字、字母或者下划线组成的字符串,也就是Python合法的变量;1.\d\s\w分别为数字、空格、字母\数字,‘.’代表可以匹配任意字符,{}可以声明字符长度,\s代表空格,后面加一个+表示至少一个。[0-9a-zA-Z\_]+可以匹配至少由一个数字、字母或者下划线组成的字符串,如'a100','0_Z','Py3000'等等;py也可以匹配'python',但是加上^py$就变成了整行匹配,就只能匹配'py'了。

RedDevil_7的博客 455

【入门篇】第五章 第一次与 AI Agent 交互

本文介绍了OpenClaw中最基本的用户与AI Agent交互方式,剖析了Agent和Gateway两个核心组件的作用,通过简单示例展示了从用户请求到结果返回的完整执行流程,说明了最小交互过程对验证系统可用性的重要意义,为后续学习复杂任务执行机制奠定基础。

lanyv的博客 512

Claude + Figma MCP 实战教程

• 拥有 Figma 的 Dev 或 Full seat(专业/企业账号)权限 才能启用 Dev-Mode MCP 服务 。• MCP 是通过标准接口连接 Claude 与 Figma,效率高,但目前仍为 Beta,稳定性可能有限。3. 服务启动后,会在本地运行,比如 http://127.0.0.1:3845/mcp 。如果设置正确,会显示已连接的 figma-dev-mode-mcp-server  。• 如果多次转换复杂组件,可能需要多次选择与多次生成,建议合理拆分设计任务。

weixin_49869937的博客 4446

Coding养成--Python(19)

实现参数的优先级查找,即先查命令行参数,如果没有传入,再查环境变量,如果没有,就使用默认参数。本身也是一个dict,但是查找的时候,会按照顺序在内部的dict依次查找。如果希望key不存在时,返回一个默认值,就可以用。,这样就可以非常高效地往头部添加或删除元素。可以根据参数设置的顺序确定查找目标参数的顺序。元素的个数,并可以用属性而不是索引来引用。时,如果引用的Key不存在,就会抛出。是一个函数,它用来创建一个自定义的。串起来并组成一个逻辑上的。

RedDevil_7的博客 410

数字IC后端实战:如何用ICC搞定复杂模块的floorplan与powerplan(附避坑指南)

本文深入解析数字IC后端设计中复杂模块的floorplan与powerplan实战技巧,重点介绍多边形模块边界处理、MTCMOS电源网络优化及存储器摆放陷阱规避。通过Synopsys ICC工具的具体操作示例和项目实战经验,帮助工程师高效解决设计难题,提升芯片性能与可靠性。

weixin_29213525的博客 350

Coding养成--Python(20)

解析参数,只需定义好参数类型,就可以获得有效的参数输入,能大大简化获取命令行参数的工作。一般位置参数放在最后,关键字参数要有开头索引。详情参考廖老师的例子,如下。是位置参数,而其他则是类似。这样的“关键字”参数。更神奇的是,如果输入。

RedDevil_7的博客 292

12S BMS 核心设计:基于 STM32H743+BQ34Z100 的 SOC/SOH 实现与全链路技术解析(上)

本文详细介绍了基于STM32H743和BQ34Z100的12串锂电池管理系统(BMS)设计。该系统采用主控制器+专用电量监测计架构,可实现高精度SOC(±1%)和SOH(±2%)估算,支持36V-50.4V电压范围。硬件设计包括电压/电流采样、温度测量、保护电路等模块,软件实现基于HAL库开发,采用DMA方式提高I2C通信效率。系统通过TI专利的ImpedanceTrack™算法实现三维融合估算,并具备完善的保护功能。该设计适用于电动工具、轻型电动车等中功率设备,具有精度高、响应快。

bother3000的博客 1393

OceanBase数据库LSM-Tree存储引擎深度解析:合并写入与压缩优化策略

OceanBase数据库采用创新的LSM-Tree架构设计,通过"基线-增量"分离存储实现高性能。内存中的MemTable处理写入,磁盘上的SSTable存储有序数据,利用多级缓存加速读取。写入时先写日志再更新内存,合并操作将增量数据整合为基线数据以优化查询性能。相比传统B+树引擎,OceanBase在写入吞吐、压缩效率和存储成本方面优势显著,特别适合写入密集型场景。合并操作作为核心机制,通过多种触发方式和执行策略平衡性能与资源消耗。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1341

Coding养成--Python(5)

自建顶层包,但必须有'._init_.py'添加搜索路径:在sys.path中。Focus:模块定义&调用安装。一个.py就是一个模块。

RedDevil_7的博客 403

时间序列预测 | 决策树时间序列预测建模,单步、多步(Python)

时间序列预测 | 决策树时间序列预测建模,单步、多步(Python)

天天酷科研的博客 744

Coding养成--Python(14)

Key:fork可实现多进程、WIN系统上multiprocessing模块可替代、进程间通信可通过Queue和Pipes实现。fork通过复制一个子进程来实现多线程,子进程返回0,父进程返回子进程的ID分别可通过getppid、getpid得到。针对具体的子进程,如果想要指定输入和输出可以利用communicate功能输入设置,利用popen创建子进程。multiprocessing模块,先设计一个函数准备调用,然后可以通过传入参数,创建一个。Focus:任务/进程/线程。方法启动,这样创建进程比。

RedDevil_7的博客 336

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Coding养成--Python(16)

Key:通过manager发布服务器进程,将运行进程分布到子服务器上。才能通过网络将任务正确地发送到其他机器上的进程。才能通过网络将任务正确地发送到其他机器上的进程。服务器启动queue,注册到网络然后写入任务。实例,绑定到端口 5000 并设置验证码。对象注册到网络上,并分别给它们命名为。authkey作为保证传输通信的工具。模块提供了一种机制,能将本地的。获得的接口来添加任务,这样。获得的接口来添加任务,这样。对象包装并注册到网络上。获取到可以在网络上访问的。Focus:分布式进程。

RedDevil_7的博客 218

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Coding养成--Python(15)

Addition:注意多个锁由于可以存在多个锁,不同的线程持有不同的锁,并试图获取对方持有的锁时,可能会造成死锁,导致多个线程全部挂起,既不能执行,也无法结束,只能靠操作系统强制终止。Key:Thread中多线程中利用Lock防止全局变量被交替修改、TreadLocal创建可全局读取对应变量字典。当多线程修改全局变量时,为了防止交替修改导致错误,一般使用Lock,每个子线程使用完,再用release释放锁。Thread模块可以创造多个线程,主线程叫Mianthread,子线程可修改命名。

RedDevil_7的博客 290

Coding养成--Python(10)

Key:self.name创建的是实例的属性,直接在class下面写name=xxx定义的是类的某个属性,通过Student.name可以直接调用。Focus:OOP中的实例和类的属性。

RedDevil_7的博客 443

Coding养成--Python(2)

复习了一下filter函数可以进行对输入的T/F进行判断并筛选。Focus:lambda匿名函数。可以直接在return里用。lambda不需要返回值。

RedDevil_7的博客 450

Coding养成--Python(9)

Addition:通过has/set/getattr实现对内在属性的判断/设置/获取。type(xxx)==type(yyy)该方法可以判断函数/串/数值。Focus:OOP中关于获取对象信息的方法。

RedDevil_7的博客 427

Coding养成--Python(6)

Key:通过Class Stdudent(object) 来创建类;通过_init_(self,xxx,xxx)来绑定类的属性,其中第一个固定为self;可以通过内部设置函数的方式实现从类内部数据封装。Addition:注意后期通过实例添加方法,对于同类其他实例无效。Focus:OOP面向对象编程--Class&instance。

RedDevil_7的博客 429

Coding养成--Python(13)

pickle是python序列化的方式, dump进行序列化。Key:pickle、json格式序列化,对类的实例序列化。Addition:对于_slot_形式的无法直接序列化。json是标准的格式,也是JS的格式。1.对中文进行JSON序列化时,Focus:pyhton序列化。对类进行序列化时,无法直接处理。写一个函数(传入,传出)利用_dict_序列化。load进行反序列化。

RedDevil_7的博客 233

Coding养成--Python(3)

log层return的是wrapper,wrapper层要return并执行func。Focus:装饰器—— decorator,@func |(上)Key:装饰器为了给目标函数增加新功能同时不在内部修改函数。@xx相当于声明xx函数增加功能,并将功能在下一行def。Addition:‘._name_’可生成当前函数的名称。‘time.time()’可生成当前执行时间。将实现另外功能的内容直接放在print里?.time是内置的?

RedDevil_7的博客 481

Coding养成--Python(4)

将关键字‘**kw’定义为‘base=xx’(几进制),但注意如果不写会导致误认为‘*args’传入左边。Focus:偏函数-通过functools.partial函数简化调用函数。其目的是为了简化函数调用的形式,比如通过将参数固定减化调用时的形式。

RedDevil_7的博客 490

Coding养成--Python(8)

Key:子类可以获得父类中所有的方法;如子类有同名方法,则可以直接覆盖父类的方法;子类会继承父类数据类型;若想实现某种功能,只需要保证父类或子类具有某函数,然而另一个非继承独立的类也有该函数的话,效果类似——即动态语言的‘鸭子’特点。Addition:动态语言的鸭子类型特点决定了继承不像静态语言那样是必须的。Focus:OOP中的继承和多态。

RedDevil_7的博客 428

Coding养成--Python(11)

Key:创建IO,然后写入用.write(),用getvalue()读取。Focus:文件读写strIO和BytesIO。

RedDevil_7的博客 232

Coding养成--Python(7)

Key:通过self._name=name使其成为私有变量,避免直接访问;而类似_name_这类变量是特殊变量,外部可以访问。Addition:其实私有变量在内部变成了_student_name,在外部也可以直接访问,但这是有风险的。Focus:OOP中的访问限制方法。字段对外隐藏起来,用。

RedDevil_7的博客 367

Coding养成--Python(12)

Key:利用listdir(’.’)遍历当前目录下列表、abspath、relpath等方法。Focus:基于内置OS读取操作文件和目录。Addition:输出当前目录下所有文件。OS不支持copy,

RedDevil_7的博客 231
下一篇: Coding养成--Python(2)
RedDevil_7
博客等级 码龄5年 109粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值