自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 PyQt5 异步执行 + 实时更新进度条QProgressDialog

下面是一个完整的的示例,使用了QThread和QObject的信号机制来实现后台任务与 UI 的解耦。

2025-07-24 17:22:25 269

原创 PyQt5 QProgressBar的使用

在 PyQt5 中,用于显示进度(如文件下载、任务执行进度等)。

2025-07-24 17:14:09 60

原创 Pandas DataFrame Filter

常常需要使用pandas对DataFramedf) 进行各种过滤操作,来获得特定的对象,以下是几种过滤的方法。

2025-07-23 20:37:34 64

原创 Python中如何读取Excel

Python读取 Excel 数据可以使用pandas库,它功能强大且语法简洁。

2025-07-23 20:31:12 309

原创 SENT(Single Edge Nibble Transmission)协议

全称:Single Edge Nibble Transmission用途:主要用于汽车中传感器(如压力/温度/位. 置传感器)与ECU之间通信标准:SAE J2716(目前最新版本为2016版)通信方式:单线、单向(Sensor ➝ ECU)

2025-07-16 21:05:00 925

原创 Python Click库的使用

Python 的 click是一个用于创建命令行界面的库,语法简洁、功能强大,特别适合构建复杂的 CLI 工具。

2025-07-16 18:20:14 282

原创 Python中Exception的处理

import sys"""自定义异常类"""passraise MyCustomError("发生了自定义错误")func_b()try:func_a()# 打印基本异常信息print(f"异常类型: {type(e).__name__}")print(f"异常内容: {e}")# 获取 traceback 对象# 遍历 traceback 栈帧while tb:print(f"文件: {filename}, 函数: {code_name}, 行号: {lineno}")

2025-07-15 16:41:21 347

原创 Python中如何从Set中删除元素

在 Python 中,是一个用于从集合(set)中移除指定元素的方法。如果该元素存在于集合中,它会被移除;如果该元素不存在,则什么也不会发生(不会抛出错误)。

2025-07-15 14:51:34 209

原创 如何使用Nxp TJA1043实现特定网络管理报文唤醒

摘要:本文针对TJ1043芯片控制ECU电源时实现"仅网络管理报文唤醒"的需求,提出基于Vector AUTOSAR的解决方案。通过配置硬件中断过滤非NM报文,在EcuM_GoHalt状态占用资源暂停任务执行,并设计CAN接收中断处理逻辑区分报文类型。关键点包括:1)上电时仅允许NM报文上传;2)使用定时器检测200ms无报文时触发下电;3)分两种下电场景处理数据保存与重启判断。最后通过EcuM状态机协调ShutdownTask执行顺序,确保系统可靠关闭。该方案有效解决了ECU选择性唤醒

2025-07-14 21:46:40 1145

原创 Python DataFrame中loc与iloc

在 pandas 中,loc和iloc是用于 按标签(label)或位置(integer position)选择数据 的两个核心方法。loc基于行/列的显式标签(index 或 column name)。包含结束位置(闭区间)。

2025-07-14 21:16:07 348

原创 Python pandas库DataFrame

【代码】Python pandas库DataFrame。

2025-07-14 18:28:40 376

原创 Python sorted() 函数的高级用法

自定义排序顺序:奇数在前,偶数在后,都按升序排列print(sorted_numbers) # 输出: [1, 5, 5, 9, 2, 6]

2025-07-13 11:11:13 129

原创 Python 中的 itemgetter 和 attrgetter 的使用方法

在python编程中有时希望取出dict数据中所有元素的某一个key值或者从自定义数据类型中取出某个属性。这时往往使用iter来操作,但是这样的操作往往比较复杂且代码量相对比较大,这时可以使用itemgetter 和 attrgetter.

2025-07-13 11:00:45 227

原创 PyQt5中QLineEdit的使用

QLineEdit是PyQt5中用于单行文本输入的基本控件,下面将详细介绍它的使用方法。

2025-07-12 10:21:55 136

原创 Autosar Assistant——Davinci Developer模块导入及布局功能

可将 Sheet 页及其包含的模块信息快速导出为 JSON 格式,极大节省了在已有项目中人为查找和统计模块位置的时间。对电脑性能要求高,尤其在执行批量操作(如模块在Sheet页中的布局)时更为明显。整体上极大减少了工程师在布局、命名和模块定位上的手动、重复性操作。

2025-07-12 10:11:24 336

原创 Pyqt5 QtWidgets的使用

是 PyQt5 中的核心模块之一,包含了用于构建图形界面应用的所有主要控件(Widgets),例如窗口、按钮、文本框、表格、布局等。

2025-07-11 13:54:43 258

原创 PyQt5中QGridLayout的使用

在 PyQt5 中,是一种,允许你像表格一样精确地控制控件的位置(行、列),常用于表单、设置面板等。

2025-07-11 10:25:23 287

原创 python中如何获得文件名及使用endwith获得后缀

在Python中经常会遇到需要解析一个文件的文件名及其后缀,下面介绍几种方法来获得文件名及其后缀。

2025-07-11 09:22:43 148

原创 Python rapidfuzz库的使用

rapidfuzz是一个高性能的 Python 字符串模糊匹配库,功能类似于fuzzywuzzy,但速度更快、依赖更少(纯 Python + C 实现)。

2025-07-10 10:52:27 205

原创 python如何判断一个类中是否包含某个属性

self.a = 1。

2025-07-10 10:34:00 124

原创 Python中iter()的用法

return valelse:print(num) # 输出 1 2 3用法说明iter(obj)获取obj的迭代器获取下一个元素不断调用函数,直到等于sentinel停止。

2025-07-09 13:51:30 288

原创 Python中Zip()函数的使用

Python 的zip()函数是非常实用的内置函数,用于,适用于成对或多组数据的处理。

2025-07-09 13:31:19 469

原创 Autosar Assistant——Davinci Developer集成Review功能

完成基于Vector DaVinci工具链的软件集成工作后,通常需投入大量人工进行集成结果Review,例如检查模块版本、连线、初始值、Runnable顺序等配置是否符合架构输入。报告中对发现的问题进行高亮标记或统计汇总,醒目呈现差异与异常,便于工程师快速定位和核查问题,从而显著提升集成验证效率。Modify: 工程与目标模块均存在,但具体配置值或属性不同的项(修 改)。检查每个SWC模块的配置(如版本、参数)是否与目标版本或架构定义一致。:对比架构输入中定义的模块常量值与工程中的实际配置是否一致。

2025-07-07 18:04:03 1274

原创 Python中如何对自定义数据类型排序

dataclassname:strscore:int可以看到List中的自定义数据类型按照Score进行了递增排序。

2025-07-07 18:00:26 312

原创 Python中如何将枚举类型序列化

在Python开发中经常需要定义一些枚举类型来区分对象中的不同属性。但是当对这个对象进行序列化时,往往会报错,本文主要解决该问题。

2025-07-06 12:33:32 136

原创 Python中如何将非内置数据类型导出成Json格式

在Python开发中往往使用自定义的数据类型来封装属性特定对象。但是这些自定义的数据类型在导出成Json文件时往往会报出不支持的错误。本篇文章将介绍如何解决这个问题。2、将自定义数据类型导出到Json文件中:3、运行程序:可以看到最后一行报错。OwnObject不支持Json序列化。2、然后在json.dump中加入lambda表达式 :3、导出的Json文件:[{"prop1": "param1", "prop2": 1}, {"prop1": "param2",

2025-07-06 11:12:52 415

原创 Jenkins中如何上传文件到目标位置

在使用Jenkins时往往需要将本地文件上传到Jenkins服务器上固定的位置,方便后续操作。配方将介绍如何将本地文件上传到Jenkins的目标路径。

2025-07-05 19:06:22 140

原创 Gradle中如何设定使用JAVA_HOME以外的JRE版本

由于Davinci Team需要运行在JRE8,其运行环境是基于Gradle,而Jenkins和Tomcat是运行在JRE8以上的版本导致Gradle需要单独的JRE运行环境。

2025-07-05 18:55:46 311

原创 Autosar Assistant----Bsw模块信息导出与导入

在使用Davinci Configurator时一些配置项可能被无意图的更改,如有时鼠标滚轮滚动导致下拉列表项配置发生了变动。有时也需要对比两版软件前后的配置差异。虽然Vector提供了Diff工具,但是这个工具使用起来不是很方便。同时在使用Pipeline时,基础工程的配置也需要动态的创建,基于上述两种场景,Autosar Assistant中这个工具集成了Bsw模块信息以Json格式导出,也可以以Json格式输入生成对应的arxml。

2025-06-26 16:31:28 186

原创 Autosar Assistant ----Simulink连线信息导出功能介绍

今天给大家介绍Autosar Assistant第一个功能----Simulink信息的导出。

2025-06-26 15:12:07 302

原创 Autosar Crypto机理

AUTOSAR Crypto模块是保障汽车ECU通信安全的核心组件,主要提供加密、认证和完整性校验功能。其核心配置包含三个关键参数:密钥(Key)用于指定算法所需的密钥存储位置和输入元素;算法(Primitive)定义具体加密算法及相关参数;任务队列(Queue)将任务分配到不同处理通道。值得注意的是,密钥存储位置直接影响与HSM的联调过程,因为密钥管理模块会根据密钥位置调度不同的底层驱动函数。配置时需通过Csm_KeyElementSet等函数设置密钥元素,同时要注意算法参数的默认值处理。整个加密任务的执

2025-06-25 18:17:08 420

原创 “Autosar Assistant” —— 提升软件集成效率的实用工具

是一款自主开发的、基于Vector DaVinci 工具链的自动化集成辅助工具,旨在提升 Autosar 项目开发过程中的软件集成效率与配置一致性。强大的Simulink-AUTOSAR桥梁 :直接从Simulink模型(即使是骨架模型)提取端口连线信息,并能结合AUTOSAR工程进行智能校正,处理Ground/Constant等特殊连接。这是确保模型与工程一致性的基础。

2025-06-25 10:20:52 498

原创 基于Vector Davinci Configurator的自定义组件

自定义Autosar中间件

2025-06-21 13:23:00 265

原创 Tomcat&Jenkins部署

目前只有Tomcat9支持Jenkins,由于针对Tomcat部署Jenkins所以使用是war包及servlet容器。如果发现多个Tomcat被部署可以通过命令行 sc delete tomcat(x) x表示版本,将相应tomcat服务称除。在浏览器中输入http://localhost:8080/jenkins/看是否可以访问Jenkins。3.使用本地浏览器输入http://localhost:8080/看是否会出现Tomcat的界面。war可以下载最新的。如果没有出现Tomcat的界面可以查看。

2024-06-24 17:30:31 832 1

原创 Streamlit如何不显示多页面信息在sidebar

在主python路径下创建pages文件夹,同时在该文件夹下创建相应页面的python文件即可创建多页面。1.在主python路径下创建.streamlit文件夹并在文件夹下创建config.toml文件。Streamlit中创建多页面是比较简单的,网络上也有很多教程,这里只简单讲一下。这样的设计是不太美观,在Streamlit中不想显示多页面在sidebar中。这样在sidebar中就不会出现多页面的信息了。在pages下创建一个空的page1.py。

2024-06-24 17:12:50 1030

原创 Streamlit控件样式修改

在python脚本中使用markdown来修改相应属性,可以看到被修改的属性会以中划线划掉说明原来的属性不再使用了,想要控制Streamlit的样式,可以通过markdown配合css来控制相应控件的样式。修改相应属性,需要在Button后加入‘{}’在‘{}’中修改相应属性。将鼠标放在想要更改控件的上方,同时右击鼠标选择Inspect。2,选中控件大类,并右击Copy-->Copy Selector。将Button的背景颜色变成红色。3.在复制到python脚本中.未修改前Button的属性。

2024-06-24 17:12:17 1589 2

原创 streamlit工具栏实现

在实际应用中可能通过按钮操作一些功能,当功能比较多时往往要加入很多按钮,所以按钮的管理就很重要了。下面通过像visual studio中工具栏一样的Toolbox来管理。这个的工具栏显然没有达到预期,Button的宽度并没有完全占据容器,可能通过增加Button的属性来使其宽度占据整个容器的。可以看到在左侧显示出了可折叠的。

2024-06-24 17:11:46 1195

原创 Streamlit empty组件

在Streamlit中empty组件可以做为占位符,来消除一些控制信息。如当登录成功后希望登录信息消失,可以通过下面的方法。这时只用在验证登录信息成功后加入placeholder.empty()即可达到目标效果。注意Streamlit界面显示控件的顺序是其声明的顺序,而不是其使用的顺序。但是想要达到的效果是当登录成功后,登录页面消失。先创建两列,然后分别在两列下显示是第几列。如果输入正确登录信息。

2024-06-24 17:11:15 838

原创 Streamlit控件数据的获得

Checkbox控件获得只有控件的状态,如果想要获得控制的内容需要在代码中转换。正常情况下通过将控件赋值给一个变量,通过该变量就可以拿到控件的数据。文本框中输入的内容为。

2024-06-24 17:10:07 489

原创 streamlit动态Table的创建

在实际应用中,使用Table来完成数据的增加删除,这就需要Table可以动态的完成行的增删,在streamlit中可以通过data_editor来完成相应的功能,通过属性num_rows设置为‘dynamic'来完成行的自动增删,通过column_config可以设置每一列的控件类型。

2024-06-24 17:09:34 887

空空如也

空空如也

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

TA关注的人

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