![](https://img-blog.csdnimg.cn/1ff34b601af949e3b3cd30fcd6599dc9.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Python
文章平均质量分 50
Python相关的知识点总结,以及一些常用的Python使用小窍门
RNG_uzi_
人生苦短,我用Python
展开
-
小工具开发
因不太喜欢重复性工作,为了提高日常工作效率,在业余时间开发一些小工具用于帮助自己“偷懒”。小工具功能:1、Hightec编译的hex文件,与多模式标定hex文件合成2、Bootloader文件,Hightec编译的hex文件,与多模式标定hex文件合成3、keil编译的h86文件一键转为hex4、elf转hex文件(Infineon和Renesas)5、.o批量打包为.a6、map、m66变量地址,类型等自动索引7、根据标定数据自动生成标定C代码。原创 2024-06-16 22:12:38 · 287 阅读 · 0 评论 -
Python将视频转化为图片
将视频按照一定的帧率转化为图片,与PotPlayer进行对比,发现相同的设置,本文代码比PotPlayer保存的图片清晰度高。原创 2019-09-20 14:25:48 · 3280 阅读 · 1 评论 -
PyQt5 QLineEdit控件 实现拖入文件时自动显示文件路径
PyQt5 QLineEdit控件 实现拖入文件时自动显示文件路径转载 2022-07-03 15:46:51 · 1421 阅读 · 0 评论 -
pyqtgraph动态刷新数据(横坐标为时间)
pyqtgraph动态刷新数据(横坐标为时间)原创 2022-04-15 15:51:25 · 4718 阅读 · 0 评论 -
Flask 框架简单入门
Flask框架介绍Flask 框架什么是Flask?flask是一种基于python ,并且依赖于Jinja2模板引擎(提供网页解析)和 Werkzeug WSGI服务(python web应用与web 服务之间的接口)的一种微型框架。其中:Jinja2模板引擎:通俗来讲就是服务器接收到用户请求之后,将数据传入HTML文件中后,经过模板引擎的渲染将其呈现在网页中响应给用户。Werkzeug WSGI:python web 应用程序是一个被调用的对象,它无法直接与web 服务器直接建立联系,所以WS转载 2022-01-14 12:11:18 · 1286 阅读 · 0 评论 -
Python创建虚拟环境的三种方式
Python创建虚拟环境的三种方式比较Python创建虚拟环境的三种方式首先:为什么需要虚拟环境?Pipenv vs Virtualenv vs Conda1. Virtualenv2. Pipenv3. Conda参考资料Python创建虚拟环境的三种方式首先:为什么需要虚拟环境?在使用Python语言时,通过pip(pip3)来安装第三方包,但是由于pip的特性,系统中只能安装每个包的一个版本。但是在实际项目开发中,不同项目可能需要第三方包的不同版本,迫使我们需要转载 2021-12-13 13:51:24 · 8753 阅读 · 1 评论 -
python技巧2:用input( )同时输入多个数
用map( ) , split( )以及input( ) 可以实现用input( )同时输入多个数。1.map( )map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。2.split( )拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)3.map(function,input(“以空格分开”).split())由于input( )输出的是用空格分开的字符串,split( )会分割开各个值并放转载 2021-12-04 14:47:59 · 7970 阅读 · 1 评论 -
Python调用C语言(DLL)
Python调用C语言的三个步骤1)编写C语言函数代码2)将C代码转换成动态库(Windows下为.dll,Linux下为.so)3)利用Python自带库(ctypes)调用步骤2中生成的库文件本文文件的代码请参考文末下载链接使用Visual Studio软件将C程序编译为DLL首先创建test01.c#include<stdio.h>#include<malloc.h>//无参数,无返回类型__declspec(dllexport) void __stdc原创 2021-12-04 09:34:19 · 5719 阅读 · 1 评论 -
Python调用C++语言(DLL)
前言:本文可结合Python调用C语言(DLL)使用,效果更佳。采用导出形式:_declspec(dllimport)创建DLL项目运行Python将参数进行传递给DLL,然后从DLL返回指针(包含多个变量)打开VisualStudio 创建DLL点击下一步命名为Dll1即可点击创建即可然后定义宏:在头文件中定义即可,宏的作用的是允许该函数能够被外部访问,并直接调用。如下:代码:// pch.h: 这是预编译标头文件。// 下方列出的文件仅编译一次,提高了将来生成的生成性原创 2021-12-03 17:46:50 · 5325 阅读 · 1 评论 -
vsstudio配置PyQt5用于Python3.6的UI界面工具
vsstudio配置pyqtdesigner pyuic等转载 2021-12-01 09:35:23 · 990 阅读 · 0 评论 -
周立功上位机获取CAN通讯数据解析 V2.0
周立功上位机获取CAN通讯数据解析 V2.0运行环境:win7 、 python3.5.2功能:使用周立功can通讯上位机保存数据,保存数据格式为txt。将上位机获取的16位字符串解析位正常数据效果:转化之后的.xls文件,保存在after transfer文件夹内代码如下:import osimport xlwtimport sys# from tkinter impo...原创 2019-10-05 17:06:10 · 5782 阅读 · 5 评论 -
在Windows下搭建虚拟环境
虚拟环境介绍安装virtualenv创建虚拟环境安装virtualenvwrapper创建虚拟环境anaconda创建虚拟环境第一种方式第二种方式虚拟环境安装响应的第三方模块python版anaconda版通用类虚拟环境介绍如果在一台电脑上, 想开发多个不同的项目, 需要用到同一个包的不同版本, 如果单纯不创建虚拟环境的话, 在同一个目录下安装或者更新, 新版本会覆盖以前的版本, 其它的项目就无法运行了。virtualenv的优点:是不同..转载 2021-11-12 23:33:20 · 888 阅读 · 0 评论 -
VSCode配置 GitHub的Gist 同步设置和插件
在本地电脑上的vscode上配置了很全面的扩展(插件),由于后期可能要在不同的电脑设备上操作,所以希望可以将本地vscode上的扩展进行同步。在网上搜了很多关于vscode同步扩展(插件)到github博客,但是基本都不是很全面,所以将自己成功操作的步骤进行总结,方便大家进行操作。原创 2021-10-21 19:51:46 · 3446 阅读 · 3 评论 -
Python读取配置文件(config.ini),写入配置文件
一、读取配置文件说明: 上位机运行初始化时需要读取配置文件,使用所提方法,上位机运行过程中如果修改了参数,下次上位机启动可以直接读取上一次修改的参数进行配置。实例:我的目录如下(根目录下包括config_read.py、config_write.py、config.ini):config.ini的内容如下:[config]platformname = Leovoapppackage = com.romweappactivity = com.romwe.SplashActivity[cmd转载 2021-10-20 15:47:10 · 1718 阅读 · 0 评论 -
Golang 编译生成 DLL 文件
1、注释 //export PrintBye 和 //export Sum 在编译 DLL 的时候是必须的,说明了 DLL 需要输出的函数。注意注释和下面的函数名之间不能有空行。2、函数 main 也是必不可少的,但是不知道是否能够用它来做 DLL 的初始化,这个以后再仔细研究。python通过调用步骤3中生成的go2python.dll,实现对go的调用。编译生成 go2python.dll 和 go2python.h 两个文件。3、go脚本文件名,不能命名为xxx_test.go。原创 2021-09-17 14:30:09 · 6185 阅读 · 1 评论 -
vscode调试C程序和Python脚本
以前一直使用notepad++写一些简单的脚本,后来发现vscode这个编辑器挺好用,并且带有丰富的插件。测试代码。在博客最后介绍一下vscode比较好用的几个插件。原创 2021-06-28 14:46:38 · 2801 阅读 · 14 评论 -
Python列表和矩阵的保存
1、需求:使用Python进行数据处理时,有时候遇到 列表(List) 格式,想要保存为txt方便查看。2、实现2.1、list转化为str,然后保存为txt步骤1:创建python_list2str_txt.py,将下列代码复制到创建的python_list2str_txt.py中:import osimport sysimport numpy as nplist_a = [[1,2,3], [4,5,6], [7,8,9]]list2str =原创 2021-06-09 21:49:10 · 3517 阅读 · 1 评论 -
Python调用Matlab
1、安装环境:win10python3.7matlab2018a2、安装步骤:2.1、使用pip安装matlab,运行如下命令:pip install matlab2.2、安装matlab.engine首先找到matlab的安装路径,如:D:\Program Files\MATLAB\R2018a\extern\engines\python然后打开命令窗,运行如下命令(如图1所示):python setup.py build --build-base="builddir" ins原创 2021-06-09 20:47:22 · 1240 阅读 · 0 评论 -
从零教你设计ROS试验车(系列1~5)
从零开始制作ROS试验车可以参考以下5个序列进行试验车开发,有问题欢迎留言。从零教你设计ROS试验车(1)1、试验车结构设计2、试验车通讯设计从零教你设计ROS试验车(2)1、IMU传感器报文解析2、制作上位机进行试验车运动调试从零教你设计ROS试验车(3)1、试验车升级2、人机交互界面设计、演示从零教你设计ROS试验车(4)1、单目相机和双目相机对比试验2、双目相机自主避障试验有相关问题可以评论或者私信哈~...原创 2021-06-02 14:11:03 · 302 阅读 · 0 评论 -
Python和C语言运行速度对比(累加1亿次)
1、说明:测试是在win10平台下进行的,先给大家看一下计算机的配置:测试环境:Python3.6.4GCC 8.1.0 # 需要自己安装哦~G++ 8.1.02、测试C和Python分别累加到1亿,花费的时间2.1、C语言程序首先使用创建Test.c文件,然后将Test.c文件转化为DLL(Win下使用Python调用DLL,Ubuntu下调用so)。将下列程序复制到Test.c文件中,然后运行gcc -shared -o Test.dll Test.c生成DLL文件#include原创 2021-05-28 17:10:02 · 11403 阅读 · 46 评论 -
MySQL基础操作(详细教程)
目录:1、数据库连接2、创建数据库表3、数据库插入操作4、数据库查询操作5、数据库更新操作6、删除操作7、执行事务8、实战前言:系统:windows 10python:3.6.4mysql:5.7.33Navicat Premium 12正文:mysql下载连接(CSDN):https://download.csdn.net/download/RNG_uzi_/17861891Navicat Premium 12下载连接(CSDN):https://download.cs原创 2021-04-25 16:29:49 · 466 阅读 · 0 评论 -
Ubuntu下Python与C/C++混合编程(简单调用)
说明:测试环境为ubuntu18.04,使用语言Python3,C++. 由于python中无法定义(short)类型,或者(int)类型,所以使用Python调用C++的方法,在C++中计算,然后用Python调用.C++调用PythonPython模块代码:#!/usr/bin/python#Filename:TestModule.pydef Hello(s): print "Hello World" print sdef Add(a, b): print 'a='转载 2020-12-18 09:23:00 · 1582 阅读 · 2 评论 -
Python中的按位取反
说明: 以下内容摘自:大佬博客地址。对定义进行了介绍,并举例例子进行了说明。按位取反运算符,用来对一个二进制数按位取反,即将0变1,将1变0,按理说十进制的5(0000 0101)按位取反应该为(1111 1010)十进制250,但是在Python中运算结果并非如此,结果如下:>>> ~-65计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。在计算机系统中,数值一律用转载 2020-12-05 20:55:55 · 7104 阅读 · 0 评论 -
点云bin格式和pcd格式相互转化
使用python-pcl, 也就是python版本的pcl库(C++版本的这里暂时不做说明)参考python-pcl文件中的cluster_extraction.py文件中已经添加啦备注, 可作为参考.# -*- coding: utf-8 -*-# Euclidean Cluster Extraction# http://pointclouds.org/documentation/tutorials/cluster_extraction.php#cluster-extractionimport原创 2020-12-04 22:30:39 · 4817 阅读 · 10 评论 -
Python之Event事件(简单教程)
摘要: 同进程的一样,线程的一个关键特性是每个线程都是独立运行且状态不可预测。如果程序中的其 他线程需要通过判断某个线程的状态来确定自己下一步的操作,这时线程同步问题就会变得非常棘手。为了解决这些问题,我们需要使用threading库中的Event对象。 对象包含一个可由线程设置的信号标志,它允许线程等待某些事件的发生。在 初始情况下,Event对象中的信号标志被设置为假。如果有线程等待一个Event对象, 而这个Event对象的标志为假,那么这个线程将会被一直阻塞直至该标志为真。一个线程如果将一个Even转载 2020-10-30 23:26:52 · 15317 阅读 · 1 评论 -
基于Python的周立功CAN上位机
进行开发该上位机可大大节省开发时间。本篇博客主要介绍一下基于。当然,《创芯科技》厂家也提供了上位机和基于。为了节省开发时间,我们选用的源码为。工具具备之后,我们正式开始用。会很麻烦,所以本文主要介绍。《创芯科技》开发的上位机。针对《创芯科技》型号为。原创 2020-10-12 13:04:23 · 15518 阅读 · 0 评论 -
python中的补码
python中的补码写在前面:使用python的PYQT5模块进行制作上位机,根据传感器的通讯协议对报文进行解析,里面用到补码。如果是在下位机(STM32F407)中,因为使用的编程语言为C语言,所以直接定义变量类型为int即可直接求出补码,但是Python中稍微有些不同,请看下面的例子。例子以-3为例:源码:b’1000 0011’反码:b’1111 1100’补码:b’1111 1101’1、在python中 bin(-3)结果为'-0b11'所以我们需要bin(-3 &原创 2020-10-07 16:28:49 · 5185 阅读 · 0 评论 -
NumPy 文件存取 tofile,fromfile, load,save
文章目录一,tofile()和fromfile()二.save()和load()三.savetxt()和loadtxt()四.文件对象file转载NumPy提供了多种存取数组内容的文件操作函数。保存数组数据的文件可以是二进制格式或者文本格式。二进制格式的文件又分为NumPy专用的格式化二进制类型和无格式类型。一,tofile()和fromfile()tofile()将数组中的数据以二进制格式写进文件tofile()输出的数据不保存数组形状和元素类型等信息fromfile()函数读回数据时需要..转载 2020-08-02 14:01:48 · 1766 阅读 · 0 评论 -
import上一级目录的模块(Python)
import上一级目录的模块(Python)python中,import module会去sys.path搜索,sys.path是个列表,并且我们可以动态修改。要import某个目录的module,我们sys.path.insert(0,somedir)来加入搜索路径,就可以import了。既然这样,要import上一级目录的module,可以sys.path.insert(0,parentdir)。不过这种写绝对路径的方式,如果文件放到其它地方,就不行了。所以用动态方法来获取上一级目录。imp转载 2020-07-01 10:56:10 · 5381 阅读 · 1 评论 -
使用Python的statsmodels模块进行多元线性回归分析
运行环境: win7、python3.6实现功能: 对多个参数进行回归分析,得出回归方程,回归统计量P值等创建statsmodels_test.py将下面代码复制到该py文件from pandas import DataFrameimport statsmodels.api as sm#import statsmodels.regression.linear_model as smimport pandas as pd'''# 测试集Stock_Market = {'Year': [原创 2020-06-15 00:53:22 · 3782 阅读 · 0 评论 -
视频2图片video_to_images
本程序主要讲视频转化为图片创建video_to_images.py#-*- coding: utf-8 -*-#使用本程序的方法:#1. 安装python3#2. 安装numpy, 命令 pip3 install numpy#3. 安装opencv-python, 命令:pip3 install opencv-python#4. 将该脚本放置在存储视频的文件夹中,利用python执行此脚本。import osimport sysfiledir = os.path.dirname(sys原创 2020-06-02 20:36:30 · 951 阅读 · 1 评论 -
统计xml文件包含的标注信息 parse_dataset_annotation
YOLO算法,统计标注的xml文件中包含的标记框信息创建parse_dataset_annotation.pyimport osimport sysfiledir = os.path.dirname(sys.argv[0]) #获取脚本所在目录os.chdir(filedir) #将脚本所在的目录设置为工作目录wdir = os.getcwd()print('当前工作目录:{}\n'.format(wdir)) #打印当前工作目录from xml.dom.m原创 2020-06-02 20:34:53 · 444 阅读 · 1 评论 -
复制文件到一个文件夹并进行排序copy_imgs_to_dir
文件存储方式|--parentdir|----copy_imgs_to_dir.py|----Video0|--------xxx0.mp4|--------xxx1.mp4|----Video1|--------xxx0.mp4|--------xxx1.mp4|----Video2|--------xxx0.mp4|--------xxx1.mp4创建文件名为:copy_imgs_to_dir.pyimport os #专门用于文件处理import sys原创 2020-06-02 20:30:50 · 544 阅读 · 0 评论 -
修改文件名并进行排序rename
这篇程序主要是将文件名名称进行修改文件存取方式|--parentdir|----rename.py|----Video|--------xxx0.mp4|--------xxx1.mp4|--------xxx2.mp4|--------xxx3.mp4创建rename.pyimport os import sysfiledir = os.path.dirname(sys.argv[0]) #获取脚本所在目录os.chdir(filedir) #将原创 2020-06-02 20:25:52 · 567 阅读 · 0 评论 -
命令行运行Python脚本时传入参数的三种方式
Python参数传递(三种常用的方式)1、sys.argv2、argparse3、tf.app.run如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式。python script.py 0,1,2 10python script.py -gpus=0,1,2 --batch-size=10python script.py -gpus=0,1,2 --batch_size=10这三种格式对应不同的参数解析方式,分别为sys.argv,转载 2020-06-01 00:29:58 · 1796 阅读 · 0 评论 -
threading线程强制关闭(实例)
前言:开启线程后,需要强制将其关闭,程序退出该线程。可进行封装,使用自己编写的py文件进行调用该代码。举例:1、创建End_threading.py2、将下面代码直接复制到End_threading.py3、运行End_threading.pyimport threadingimport timeimport inspectimport ctypes def _asyn...原创 2020-04-29 00:43:43 · 4264 阅读 · 3 评论 -
Queue队列的使用(举例说明)
前言:程序进行参数传递,尽量避免使用全局变量。使用队列进行参数传递(先进先出),可满足一般性能下的要求。举例:import queue # 不能用于多进程之间的通讯,可以用于多线程间的通讯# from multiprocessing import Queue # 可以用于进程之间的数据共享'''q = queue.Queue(3) # 创建一个队列对象,队列长度为3q.pu...原创 2020-04-29 00:36:01 · 483 阅读 · 0 评论 -
python -- lambda表达式(入门)
lambda表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数。先举个例子,对比一下,容易理解:g = lambda x : x + 1g(1)#结果为2上述例子等价于:def g(x): return x + 1更多例子:add = lambda x, y : x+yadd(1,2) # 结果为3那么到底要如何使用lambd...原创 2020-03-11 15:57:50 · 349 阅读 · 0 评论 -
Pycharm自定义文件头
Pycharm自定义文件头1. 菜单栏-> File -> Settings -> Editor -> File and Code Templates ->Python Script2.配置头文件内容,内容根据自己情况设置;复制代码##!/user/bin/python3# -*- coding: utf-8 -*-# @Time : ${DATE}...原创 2020-01-08 12:54:58 · 595 阅读 · 0 评论 -
全局变量传递是否有延迟
全局变量传递是否有延迟测试内容: 开启线程,在不同的线程中做while循环,使用全局变量传递函数,测试数据是否有丢失。测试结果: 全局变量在两个不同的def()中运行,主要是def()自身运行时间决定,如果两个def()运行时间不一致,便会出现数据丢失。代码:import osimport sysimport timeimport threadingshu1 = 0def t...原创 2020-01-01 11:52:42 · 382 阅读 · 0 评论