python小代码记录
程序员进化不脱发!
深度学习,硬件使用,专注python开发
展开
-
python 反三角函数下角度与弧度与正弦值的相互转换
【代码】python 角度与弧度与正弦值的相互转换。原创 2022-12-29 17:11:14 · 1332 阅读 · 0 评论 -
python 简单线程
老是忘了 t1 = threading.Thread(target=函数名) 的写法,一会儿小写一会儿大写,简直气人,记录下输出原创 2022-12-08 09:59:17 · 136 阅读 · 0 评论 -
列表转RGB图,深度图python (numpy+ opencv)
list变图像打印输出图像输出原创 2022-12-06 17:12:23 · 1358 阅读 · 0 评论 -
python 打印类所有属性和方法
对有些api一个名字用好几个类,索引也不知道是哪个的,时候用原创 2022-12-06 16:24:55 · 1558 阅读 · 0 评论 -
python @ 装饰器(修饰器,语法糖)使用与不使用对比,应用记录
由于看python代码里面函数上的@ 不爽很久了,为了避免自己又忘记了这里来记录下。简单总结:@ 的作用就是在使用 @ 下面的函数(如下图的cs2)的时候,会在该函数执行前将该函数作为参数扔到@后跟着的处理函数先行处理(或预备处理)些东西,如下图的 time_cs 就是本文举的封装一个计时函数的装饰器的日志。阅读下面代码对比使用语法糖的使用,即可了解。本篇博客自参考b站大佬up的视频区分a()和a如下一个是: 函数a在电脑中的十六进制地址一个是: 函数a返回的值输出2.在python中函数原创 2022-12-05 18:25:54 · 834 阅读 · 0 评论 -
OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized.
我的解决方法,直接把 D:\Anaconda\envs\yolov5_face 环境路径下的 两个libiomp5md.dll 都删除了就ok了。原创 2022-11-04 21:16:55 · 231 阅读 · 0 评论 -
webots 摄像头opencv(python)获得图像
我改了点,写个备份免得以后忘了。原创 2022-10-07 22:26:24 · 2248 阅读 · 4 评论 -
tcp客户端重连例子 python
代码】tcp客户端重连例子python。原创 2022-08-01 14:21:02 · 861 阅读 · 0 评论 -
python转C++笔记记录
2. 结构体注意可以直接通过结构体名称定义结构体类型变量的写法输出3.引用和传值(和取地址符号没有关系)详细比较引用输入5,传入后取地址,对地址上的数据区数据进行修改引用输入4,传入后取数据区,不对地址上的数据区数据进行修改4.数组5.迭代器写法6.集合使用7.键值对8.栈9.队列10.集合和键值对无排序输出11.for循环写法12.to_string13.auto自动获得类型...原创 2022-07-07 11:51:53 · 936 阅读 · 0 评论 -
CloudCompare-点对选取
CloudCompare——实现点云由粗到精的配准这里只提一点,下面这部步骤只需要选一个就行了作为标准也就是不动的那个就行了,不要都选。原创 2022-07-06 15:36:24 · 472 阅读 · 0 评论 -
python读取大数据txt文件
按这个链接写法,行或者生成器的方法读取省内存原创 2022-07-06 14:25:53 · 1163 阅读 · 0 评论 -
tkinter窗口选择pcd文件并显示点云(open3d)
tkinter窗口选择pcd文件并显示点云(open3d)tkinter窗口选择pcd文件并显示点云(open3d)tkinter窗口选择pcd文件并显示点云(open3d)原创 2022-07-04 13:49:31 · 837 阅读 · 0 评论 -
python Tkinter 简单读取文件路径并显示到页面
读取选择的文件路径并显示到页面上原创 2022-07-04 09:55:49 · 3122 阅读 · 0 评论 -
python tcp发送16进制字符
python tcp客户端十六进制发送原创 2022-06-22 17:18:22 · 2751 阅读 · 1 评论 -
python tcp发送16进制字符
python tcp客户端十六进制发送原创 2022-06-22 16:46:29 · 742 阅读 · 0 评论 -
python分离arw与jpg图片
相机拍摄arw图片与jpg图片在一起,手动分太麻烦,自己写了个脚本自动分原创 2022-06-14 23:57:14 · 233 阅读 · 1 评论 -
python安装opencv(换源)
pip install opencv-python安装完成后注意引用包的时候是cv2如下例子读入一张图片测试import cv2import numpy as npimg = cv2.imread("1.jpg")cv2.imshow("lena",img)cv2.waitKey(10000)原创 2021-07-22 14:39:40 · 1237 阅读 · 2 评论 -
docker容器打包成镜像
docker commit -a="NJL" -m="add chinese and vscode env " html-ros html-ros-china-vscode:1.0 docker commit -a="用户名" -m="描述" 容器id或名字 打包后的镜像的名字:版本号原创 2022-04-29 18:26:31 · 2628 阅读 · 0 评论 -
命令窗口进行分割Terminator
帮助分割成多个窗口——跳转连接用了之后就像下面这样了原创 2022-04-11 16:44:12 · 273 阅读 · 0 评论 -
docker 上传自己的镜像到docker hub账号
参考视频其他没啥说的,echo 命令创建txt记一下echo 'cs' > a.txt原创 2022-03-11 10:36:06 · 1749 阅读 · 0 评论 -
json文件储存读取简单记录
”“”存储“”“import jsondef save_setting_file(path, item): # 先将字典对象转化为可写入文本的字符串 item = json.dumps(item) try: with open(path, "w", encoding='utf-8') as f: f.write(item + ",\n") print("保存"+path+"文件到本地完成") exce原创 2022-01-24 15:28:16 · 391 阅读 · 0 评论 -
线程下主动抛出异常简单小代码
python3.7环境下测试可用import threadingimport timedef a(): print("进入测试线程") time.sleep(5) raise RuntimeError('主动抛出异常,终止发送线程,并从新拉起') print(00000000000000000) time.sleep(10)t_client_send = threading.Thread(target=a, args=( ))# t_client_se原创 2022-01-06 22:08:11 · 1029 阅读 · 0 评论 -
python使用tkinter编写一个数据显示窗口(实时显示更新的数据)
以下代码为python3版本,python2版本使用需保证更新数据的那部分代码处于主进程中,如果放在线程中会出现错误,所以建议能用 python3就用python3,只用我为什么知道python2会出现这个问题,那就是ros没python3的版本…示意图(数据就会在后面的框里面变换):以下为代码,我这里在下面提供两个代码示例:1.(第一部分)修改为可以直接运行显示,但注释掉了刷新数据的线程部分的,无法对数据进行更新。"""注意这个 窗口拉起接口在 一 二 部分中被调用的不同的写法"""self.原创 2021-12-31 16:56:11 · 11695 阅读 · 4 评论 -
简单进程间数据交互
来源from multiprocessing import Process, Queue # 导入Process和Queueimport os, time, randomdef write(q): # 定义函数,接收Queue的实例参数 for v in range(10): print('Put %s to Queue' % v) q.put(v) # 添加数据到Queue time.sleep(1)def read(q):原创 2021-12-26 02:48:57 · 191 阅读 · 0 评论 -
getattr,setattr,delattr,hasattr,getattr,使用例子(python类的内建函数 简单例子)
class Foo: def __init__(self,name,age): self.name=name self.age=age def show(self): return self.name,self.ageobj=Foo("lihua",18)print(" getattr 获取定义类的一个特定变量的,现在的值,例如:getattr(obj,'name'):" + str(getattr(obj,"name")))setatt原创 2021-12-12 03:21:50 · 618 阅读 · 0 评论 -
python raise主动抛出错误
来源class OldBoyError(Exception): # 自定义错误类型 def __init__(self,message): self.message=message def __str__(self): # 打印异常的时候会调用对象里面的__str__方法返回一个字符串 return self.messagetry: raise OldBoyError("主动错误抛出...") # raise是主动抛出异常,可以调用自定义的异原创 2021-12-11 02:07:31 · 971 阅读 · 0 评论 -
python TCP避免粘包的一种分装
python2,python3 均运行可用,具体解释见参考server端#!/usr/bin/env python2.7#coding:utf-8# -*- coding: utf-8 -*-from socket import *import jsonimport structimport timeimport threadingclass Server_link(): """用于初始化。tcp服务端""" def __init__(self,HOST = '127原创 2021-12-03 17:43:35 · 2424 阅读 · 0 评论 -
不同列表生成
来源传送门a0 = range(1,100,5) #第一个参数表示开始位,第二个参数表示结束位(不含),第三个参数表示步长,就是每5个数返回一次。print(a0)a1 = [i for i in range(1,10)] #列表生成式表示返回i的值,并且返回9次,每次返回的是i的值。print(a1)a2 = [2 for i in range(1,10)] #这里表示返回2,并且返回9次,但是每次的值都是2。print(a2)a3 = [i for i in range(10) if i%原创 2021-11-29 03:02:43 · 341 阅读 · 0 评论 -
python logging 模块的一种封装
代码的引用来源这里我修改了一点,详细参考传送门这篇博客的目的主要是注意在多个文件调用的时候调用的一种方法,以下为日志的输出,通过 cs1.py 文件调用 _panda_logging_init.py 中初始化的 logger_panda 句柄得到,注意下图使用的文件的使用结构1.继承logging 进行二次封装import loggingclass MyLogging(logging.Logger): def __init__(self, name, level=logging.原创 2021-11-11 14:57:09 · 879 阅读 · 1 评论 -
python 函数帧率测量(速率)
import timest1 = time.perf_counter()def fun(): global st1 while True: print('刷新帧率' + str((1 / (time.perf_counter() - st1)).__round__(1)) + 'fps') # 显示帧率 st1 = time.perf_counter() print("*" * 50) print("\n")fun原创 2021-11-11 10:56:26 · 1115 阅读 · 0 评论 -
python2和python3下不同的十进制转十六进制字符串的互转
注意这里转换的是带有符号位的十六进制,无符号的直接俄 hex(十进制)就可以了import platformimport structpython_version = platform.python_version()[0:1]hex_string = struct.pack('h', float_num)if python_version == "2": """python版本不同处理流程不同""" print("2222") hex_string2 = hex_s原创 2021-10-22 14:37:39 · 388 阅读 · 0 评论 -
python (正负)十六进制与十进制的互相转换
import structimport binasciia=struct.pack('h',-9000) # int16 为 short (有符号位) 使用 h 输出:d8dcprint(a.hex())print("\n")a=struct.pack('i',-9000) # int32 为 4给十六进制的字节构成,int (有符号) 使用 i 输出:d8dcffffprint(a.hex())print("\n")a='adcdadbc'# a='00000000'b=bi原创 2021-10-18 19:54:36 · 6625 阅读 · 0 评论 -
一个强制退出线程的例子python
通过给线程里面抛异常来强制退出线程,以下程序为开启一个线程打印2秒的字符后强制线程结束import serialimport threadingimport timeimport binasciiimport structimport ctypesimport inspectdef _async_raise(tid, exctype): # todo 强制退出线程 忽略掉报错 try: """raises the exception, performs cl原创 2021-10-14 15:13:00 · 433 阅读 · 0 评论 -
python 线程互斥锁使用的一种写法
mutex = threading.Lock() mutexFlag = mutex.acquire(True) # True表示堵塞 if mutexFlag: if not 其他布尔值变量: mutex.release() # 解锁 continue原创 2021-09-30 10:24:56 · 136 阅读 · 0 评论 -
python删除文件夹下的所有文件
import osfor root,dirs,files in os.walk("E:\cv_one\Python\BasicDemo\sample_data/2003_sample/rois"): print(files)原创 2021-09-18 15:37:10 · 2822 阅读 · 0 评论 -
python取反
a = Falsea = bool(1-a)如上, !a居然不行,????原创 2021-09-14 18:31:02 · 216 阅读 · 0 评论 -
json多个对象的文件读写
文件样子{"id": "777.jpg", "num": 88}{"id": "777.jpg", "num": 0}{"id": "777.jpg", "num": 1}{"id": "777.jpg", "num": 2}{"id": "777.jpg", "num": 3}{"id": "777.jpg", "num": 4}{"id": "777.jpg", "num": 5}{"id": "777.jpg", "num": 6}{"id": "777.jpg", "num": 7原创 2021-06-06 04:14:46 · 1833 阅读 · 0 评论 -
python list(列表)使用,常见使用方法小结
a = [0,2,3,4]b_list = ["a","b"]print("*"*50)print('a = [0,2,3,4] , b_list = ["a","b"]')print("\n")print("1.添加一个列表到另一个列表的末尾")b_list.extend(a)print(b_list)print("\n")print("2.特别的,如果是字符串的话,会被当作列表切片")c = "qwe"b_list.extend(c)print(b_list)prin原创 2021-04-07 20:33:06 · 292 阅读 · 1 评论 -
python 简单递归返回字典树搜索的路径(键)
字典长这样a = {"head_class":145,"next_class":{"head_class":987, "next_class":{"head_class": 666, "next_class" : None} } }现在要输入head_class = 666,与字典a,查找到得到head_class = 666的路径(键),如下a["next_class"]["next_class"]["head_class"]head_class和next_原创 2021-03-22 16:46:23 · 660 阅读 · 0 评论 -
python倒序切片小例子
a = [1,55,45,44,66,88,99,788,845]print(a[1:])print(a[1:][:3])# print(a[:3])print(a[1:][:3][::-1])print(a[::1])print(a[:1])print(a[:-1])print(a[-1:])print(a[-2:-1])print("*"*100)b= [["ss","sfd"],["a","df"]]print(b[-1:])print(b[0])print(b[-1.原创 2021-03-19 11:49:48 · 236 阅读 · 0 评论