- 博客(28)
- 收藏
- 关注
原创 pyqt中样式设置-QLabel,QMessageBox,QInputDialog
pyqt中的UI界面的各类样式进行设置,以及默认窗口的样式设置。1,设置图标。############self.mylabel = QtWidgets.QLabel()self.mylabel.setMaximumSize(200,80)#设置图标大小self.mylabel.setPixmap(QPixmap(FIG1)) #设置具体图标 FIG1表示图标位置“./figures/fig1.png”2,设置弹跳窗口的样式,PYQT有几种自带弹跳窗口,此仅介绍两种QMessageBo
2022-05-12 23:59:42 2608
原创 python调用excel宏函数,封装
背景:excel中自定义宏函数VBA进行不同excel粘贴复制,用用户窗口做成图形界面小程序。原本打算用Microsoft软件生成exe,查了一圈文章,发现VBA中的用户窗口无法生成exe。可以采用VB6.0或者VS搭建用户窗口生成,但是由于VB6.0软件版本太低,很多用户窗口函数调用与目前excel自带函数不兼容,作为小白,恰好电脑安装有pycharm,则直接打算用python调用库做出美观的图形小程序调用excel宏,执行操作。分为几部分:目录1,python调用excel函数及内容2,
2022-05-06 00:30:37 4283
原创 运行vue-admin-template和vue-element-admin及可能问题点解决
系统:windows10,64位需求:安装node.js,git客户端(ssh公钥设定好),安装node-sass。前提安装好node.js ,配置好环境安装好的nodejs文件夹下如下图所示,其中node_global和node——cache是自行创建,在配置环境时需要加载。环境配置:我的电脑(右键)-->属性-->高级系统属性-->高级-->环境变量-->用户变量-->path中,新建增加nodejs安装文件夹位置和nodejs安装文件夹.
2021-07-20 15:59:04 1513
原创 linux系统下安装vscode,下载速度问题及安装问题解决。
系统ubuntu16.04,64位1、从官网下载压缩包官网上的linux版本下载很慢,需要切换源,更改下载地址。官网正常地址如下:https://az764295.vo.msecnd.net/stable/507ce72a4466fbb27b715c3722558bb15afa9f48/code-stable-x64-1623937300.tar.gz需要将源替换为国内镜像地址:上述az764295.vo.msecnd.net替换为vscode.cdn.azure.cn。h...
2021-06-22 10:22:47 5672
原创 python中sqlite数据库实时读写切换问题
sqlite数据库正常情况下,会在写库时锁住数据库,不允许其他用户占用数据库。但是实际应用过程中,可能需要sqlite数据库满足不同用户同时进行读写。此时可以采用回调函数进行判断解锁。在python中,实现方式如下。数据写入方式有两种,一种是采用sql语言直接执行sql语句,另一种是采用pandas库,用to_sql的方式写入,这种方式可以一次写入多条数据。下面两个函数表征写入数据,如果数据库空闲,则可写入数据,如果数据库不空闲,报数据库锁定错误,则会执行rollback进行回调。def conn
2020-10-29 16:38:03 872
原创 linux系统下mongodb安装及mongdb启动出错问题解决和robo3t安装
linux:ubuntu18.04常用几种数据库中,redis数据库侧重轻便,主要是用于缓存,通过网络访问。sqlite处理小批量数据较方便,主打嵌入式,支持多个操作系统及大部分sql语言。mongodb读写方便,灵活,适合大量数据读写,通过网络访问。HBase主要特点是大,适合TB数量级存储及读写,主要用于大数据处理。python内部的sqlite,可直接读写数据库,相对简便。为方便存储读取处理大量数据,先采用mongodb实现,实现pymongo库调用之前,需要在系统安装mongodb,以及一般方便
2020-10-15 11:55:34 1719
原创 sqlite3创建表及取数优化问题
在jupyter-lab中使用python调用sqlite库。先连接需要写数据的库,如下所示。import pandas as pdimport sqlite3 as sqlimport datetimeimport timedbfile = '../redis_data.db'#保存库位置及库名字conn = sql.connect(dbfile)#连接库curn=conn.cursor()python采用to_sql可以自动存储数据到数据库中,如果需要自定义数据库指定库内不同表表
2020-10-14 10:33:41 458
原创 plotly保存图片(orca问题)并使用opencv(cv2安装问题)生成视频
环境:ubuntu18.4 python3.6,jupyter-lab1,查看plotly版本。一般plotly绘制图形保存时,会提示需要安装orca,这个插件是在conda里安装的。但是在plotly的官网里,对于plotly4.9版本以上的,推荐安装kaleido。此处采用pip安装kaleido。import plotlyprint(plotly.__version__)安装kaleidopip3 install -U kaleido -i https://pypi.mir...
2020-08-28 17:43:08 1180
原创 两个sqlite数据库拼接
环境:jupyter-lab - python3.6 , linux x64 unbuntu ,sqlite3目的:两个相同结构的数据库相连接(类似append)dbfile1上连接dbfile2的所有内容。cons = sql.connect(dbfile1)sqls1 = 'attach database "'+dbfile2+'" as s;'cons.execute(sqls1)cons.execute("BEGIN")for row in cons.execute("SELE
2020-07-30 18:06:45 2161
原创 采用boost.python中输出数组到python
环境:ubuntu,x64;jupyter-lab;jupyter-lab中安装boost库.目的:在python环境下,输入数据到C++的函数,C++函数返回数组,供python调用.C++的数组可以用python的numpy.narry表示,但是由于版本问题,调用boost::python::numpy时会提示无此库,需要安装特定的boost库.故本次采用boost::python::list的方式保存C++的输出数组.下面显示例子.1,编写tests.cpp,主要用MyFunc函数调用.此
2020-07-23 14:12:59 1170
原创 linux下启动redis库
1,linux下安装可以从redis官网下载,我安装的版本为redis 5.0.8,可以采用make进行编译安装,具体步骤不作详细介绍。相关的查看linux是否安装redis,一般redis默认安装位置为/usr/local/redis,如果安装正常,可以在此文件夹下看到bin和etc文件夹,如下图所示。2,启动redis有两种方式方式一,前端启动:进入redis的bin目录下,运行redis-server文件,则可以进入redis,看到redis的默认启动端口port和进程ID:PID。此
2020-06-12 12:01:29 567
原创 python调用m文件
系统环境:windows,64bitmatlab 2018b,64bit python3.6前提:windows下需要有matlab软件和python。python调用m文件需要安装matlab.engine,注意matlab版本与python版本的兼容性,一般matlab仅支持python3.6以下版本,可以通过命令窗口查看python版本,开始-->运行-->输入“cmd”,进入cmd。在窗口输入“python”即可查看系统的python版本号。1,进入matlab的安装位...
2020-06-04 15:51:48 6381 2
原创 linux系统安装node.js
ubuntu 18.04安装node和npm,免编译安装。下载安装版本,可以进入到此链接查看相关版本。如果需要将此压缩包安装在特定目录下,则在终端进入该目录,再执行下面命令。安装完成后会生成wget-log文件和安装包。wget -c https://nodejs.org/dist/latest-v12.x/node-v12.16.1-linux-x64.tar.xz 解压安装包...
2020-04-02 16:11:55 228
原创 python中读取特定字符串,文件自然排序,单列时间前后时间差,批量读取csv文件
python3.6字符串list,取特定字符,可以借助正则表达式,很方便,举例说明:cli=['cm_00102_cont','cm_00102','cm_00103_cont', 'cm_00103','cm_00104','cm_00104_cont']match = [x for x in cli if ('cm_' in x and '_cont' not in ...
2020-04-01 10:31:58 381
原创 linux系统下makefile缩进问题
1,linux系统下可以直接用vim编写makefile文件,创建makefile并进入。在gcc前加入tab进行识别,如果出现Makefile:3: *** 遗漏分隔符 (null)。 停止。"则表示缩进错误。可以通过在vimrc文件修改tab缩进的识别。vimrc文件为vim的配置文件,一般在root用户的etc/vim/vimrc文件里。vi /etc/vim/vimrc在文件...
2020-03-30 16:02:13 1029
原创 python创建文件夹,读取目录下所有excel的文件并保存新的csv文件
1,pathe目录下,所有excel文件的名字,存储在fil_name的list中,且不考虑size最小的excel。def findalldir(pathe): files= os.listdir(pathe) allsize = [] fil_name=[] for i in files: file_path = os.path.join(...
2020-03-30 09:24:09 1880
原创 linux系统安装boost.python
目的:linux系统下特定python版本调用c++,需要安装boost库1,boost官网下载最新boost.地址:https://sourceforge.net/projects/boost/ ,放置在/opt目录下2,采用root用户,进入安装包目录下。sudo -icd /opt/boost_1_66_03,安装依赖库 sudo apt install libbo...
2020-03-28 17:16:05 2153
原创 linux系统下安装jupyterlab及.py格式转换
linux系统下安装有python3,直接用pip可以安装jupyterlab.sudo apt install pip3 //安装pip3(python3对应) 如果想要快速安装,可以采用镜像的方式pip3 install jupyterlab -i 镜像地址国内镜像地址如下:阿里云 http://mirrors.aliyun.com/pypi/simple中国科技...
2020-03-17 13:07:39 1418
原创 python常用函数记录
python的语言,越简洁越好。1,如下所示,for循环前面有变量。foo = [x for x in bar if x.occupants > 1]举个简单例子:给出10个数据,查找到大于5的数据输出numbers = [12, 34, 1, 4, 4, 67, 37, 9, 0, 81]要实现上述结果,可以采用下述方式,for--in循环,并采用if判断,以...
2019-09-19 08:55:59 174
原创 MATLAB数据处理读取csv文件,批量命名,文件自然顺序读取
MATLAB进行数据分析及处理,常常会需要访问各种文件,以及批量处理。下面总结一下常用的数据处理函数及方式。1,读取当前文件夹下所有csv文件,并将每个文件中的特定数据组成一个矩阵,并组合。file=dir('KH\*.csv'); %读取KH文件夹下全部csv文档[~, ind] = sort([file(:).datenum], 'ascend'); %读物的文件按照时间顺序...
2019-09-19 08:46:00 7059
转载 stateflow基础知识之(时序逻辑)
stateflow状态转移和动作过程中,可以使用两种类型的时序逻辑:基于事件和绝对时间。基于事件的时序逻辑可跟踪重复发生的事件,绝对时间时序逻辑则基于 Stateflow 图的仿真时间定义时间段。要对这些重复事件或仿真时间进行操作,可以使用称为时序逻辑操作符的内置函数。1,tateflow可实现时序逻辑,通过时间控制stateflow图的执行,包括基于事件的时序逻辑和绝对时间的时序逻辑。操作符 ...
2018-07-04 10:25:57 17766
原创 20180626 卡尔曼滤波算法计算SOC
卡尔曼滤波算法包括线性卡尔曼滤波(KF),扩展卡尔曼(EKF),自适应卡尔曼(AEKF),以及无迹卡尔曼(UKF)等卡尔曼变形模式,线性卡尔曼滤波器针对线性系统,...
2018-06-28 08:48:54 15760 1
原创 20180621-ISO26262功能安全基础
嵌入式安全分类:1,系统外部的攻击,主要包括软件中的逻辑攻击,入侵硬件系统的入侵攻击以及错误注入类的非入侵攻击这三大类。2,系统本身的安全功能方面,如功能安全。功能安全,指在设计过程中规定性考虑产品安全,并在整个开发过程中有序管理的一套系统。 嵌入式系统的功能安全标准为IEC61508,将安全生命周期分为16个阶段。目前汽车上用的最多的是基于ISO26262进行功能...
2018-06-21 10:20:50 4503
翻译 20180615_嵌入式linux基础知识
嵌入式计算机是整个嵌入式系统的核心,主要包括应用软件层、系统软件层、硬件抽象层、硬件层。执行部件是控制对象,接受来自嵌入式计算机系统发出的指令,执行相应的操作。Figure1 嵌入式系统组成硬件抽象层:主要包括对底层硬件进行初始化与对硬件设备进行配置等(硬件设备的驱动实现)。硬件层:微控制器,设备输入输出(I/O)接口,存储器(ROM,EEPROM)等外设。系统软件层:(RTOS)实时操...
2018-06-15 11:05:47 205
原创 20180614 MATLAB环境下自动代码生成
为加速软件开发过程,汽车电子开发过程会采用自动代码生成技术,目前该技术主要集中于应用层控制策略和算法的开发。将传统的算法与软件代码实现的两个步骤,实现为算法的开发及测试集成于一体的发开模式。 现阶段国内较成熟的自动代码生成技术主要有两大类:MATLAB中的real-time workshop 和Despace的targetlink生成代码。RTW能够生成与ANSI/ISO标准相兼...
2018-06-14 09:33:06 9065
原创 20180608 电动车发展
在燃油汽车火速发展之前,电动汽车就以及存在于市场上,但是由于电池本身特性的局限,并未大量普及。现在,传统燃油汽车由于能源的局限性,作为对环境相对友好的新能源汽车,电动车,又重新被大众关注。与此同时,智能方向的发展也带动传统汽车行业的发展,自动驾驶也加入汽车发展行列,旨在为大众提供更舒适,自由的驾驶感。 电动车,自动驾驶是目前火势比较猛的两大发展方向。能源的紧缺及政府的鼓励,也...
2018-06-08 09:21:47 243
原创 2018-6-5 自动代码生成
基于MATLAB强大的计算功能及友好用户界面,目前汽车行业大多用MATLAB实现模型开发,最终完成相应的算法及功能实现。当一个新的算法开发之前,需要有相应的需求文档,分析算法实现的可能性以及最终能达成的目标,以及算法本身的逻辑。在MATLAB环境实现算法,并进行白盒黑盒模拟测试,建立测试文档。测试完成后,则一般需要将算法生成目标控制器能适用的代码。 这种基于模型的设计的有一定优势,...
2018-06-05 09:19:15 1490
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人