
python
HockerF
这个作者很懒,什么都没留下…
展开
-
selenium 工具 的基本使用
公司每天要做工作汇报,汇报使用的网页版, 所以又想起这个老朋友了。再次上手,发现很多接口都变了, 怎么说呢, 应该是易用性更强了, 不过还是得重新看看, 我这里是python3。pip安装得现在最新(20231128)版本(4.15.2), 下面做下操作记录。引入模块等待页面打开新版本的定位器不一样了, 我写了个定位发送内容得功能。定位器的基本用法PS: 写这类工具,如果不急, 一定要多加延时控制,有一定的反“反爬机制”, 也对服务器有好一点,大家好。原创 2023-11-28 10:09:50 · 467 阅读 · 0 评论 -
pyimgui 中文
imgui 是一个比较优异的轻量级界面渲染项目,其理论上做到了模块的方式去编程界面, 比qt上手容易很多, 环境搭建和项目的编译也比较好, 比qt要简单很多, 再结合python,效果更加好了。原创 2022-11-15 10:16:01 · 2565 阅读 · 1 评论 -
scons 自定义命令行参数传递
scons 命令行命令传递原创 2022-10-28 13:48:19 · 896 阅读 · 0 评论 -
[记录]关于flask服务器布局的几个问题的解决方法
一些部署flask的问题记录与解决方法原创 2022-10-12 10:32:27 · 742 阅读 · 0 评论 -
python 使用listdir 遍历目录
python 遍历目录, 有 glob, walk, listdir 等模块, 对于大多数应用场景来说, glob和walk已经非常够用了.glob相对非常方便, walk我之前也写了一个文章(python os.walk的返回值) 介绍.glob, walk虽然遍历方便, 但是不能够体现出 多级目录层次 的关系, 我也没想到我的应用场景绕不开 listdir 的坎. 使用while递归的方式实现了一个遍历. 供大家参考.import os,sysif len(sys.argv) < 1:原创 2022-04-28 11:18:51 · 2079 阅读 · 0 评论 -
python 学习上手
编程不是说掌握了好多语法, 而是能够将自己的想法正确的表达出来.我这里给大家找了点炼手的资料:2021年蓝桥杯省赛A组题解(C/C++)我下面试着用python实现一下,供大家参考:A:# 初始化各种卡片# 初始化各种卡片t = {}for i in range(10): t[i] = 2021print(t)# 开始尝试拼数num = 1is_end = Falsewhile True: b_num = int(num) while b_num &g原创 2021-12-13 14:01:00 · 499 阅读 · 0 评论 -
python 遍历字典
之前赶项目,在网上找了一个代码, 虽然是递归实现的代码,但是临时也是有很大帮助。我这里做了一个非递归实现的代码, 这样资源用得少一点, 供大家参考。def list_config(objs): if not isinstance(objs, dict) or not isinstance(objs, dict): return cur_path = [] # 保存当前路径 obs = [[0, objs]] # 保存遍历的状态 cur_path.appen原创 2021-05-07 14:07:37 · 206 阅读 · 0 评论 -
输出转换成任意进制的数
输出转换成任意进制的数def tx(d,x): print('d:',d) c = '-' d1 = d xx = '' while True: t1 = d1//x t2 = d1%x if xx != '': xx += c xx += str(t2) if t1 < 1: break d1 = t1 print(c.join(x原创 2020-12-02 07:54:53 · 201 阅读 · 0 评论 -
yolov3 anchors k-means脚本
最近再回过头了看了下经典的 yolov3 算法, 里面的 anchors 聚类是用的 k-means . 下面是 python的一个实现, 大家可以参考讨论.import os, sys import numpy as np import cv2 if len(sys.argv) < 5: print('usage:\n\t%s datacfg num_of_clusters width height') sys.exit(-1)datacfg = sys.argv[1]原创 2020-11-18 13:25:38 · 229 阅读 · 0 评论 -
去掉numpy数字中四周为0的行
功能很简单,但是代码让我折腾了一会,功能分享给大家!!!import numpy as nparray1 = np.array([[1,0,1,0,0,0,0,0,0,1,1,0,0,0,1,1,0,1,0,0], [0,1,1,0,0,1,1,1,1,0,0,0,1,0,1,0,0,1,1,1], [0,0,1,0,0,1,1,1,0,0,0,0,0,0,0,1,0,0,1,1], [原创 2020-11-12 07:21:56 · 310 阅读 · 0 评论 -
局域网分享工具:python重新实现ipmsg协议
py_ipmsg开源项目地址: gitee。注意: 目前项目还不完善,正在开发阶段。如果造成经济和数据损失,个人不承担任何责任,请妥善选择与使用。项目描述:由于linux环境下的iptux项目不太友好,并且代码结构不便于优化,个人使用python重新实现ipmsg协议. 方便后期修改和优化.项目开发:参考:传输协议实现参考: github 项目 ipmsg中文协议参考:IPmsg(飞鸽传书)协议翻译欢迎大家参考和使用....原创 2020-11-11 23:21:34 · 382 阅读 · 0 评论 -
nltk下载脚本及nltk数据
nltk数据集比较多,如果一个一个的点难免崩溃,下面是我做的一个小脚本供大家使用:import requestsimport bs4from urllib.parse import urlparsefrom bs4 import BeautifulSoupimport osimport time# nltk 数据网页为:http://www.nltk.org/nltk_data/# 直接另存为搞定, 这里指定网页位置nltk_page = 'nltk.html'# 国内下载有点,问题,原创 2020-11-07 11:46:46 · 357 阅读 · 0 评论 -
图片添加颜色,二值化数据变成rgb数据
不使用cv2的方式, 将二值化的数据变为制定的rgb颜色.rgb = [255,0,100]t = np.array([[0., 1.],[1., 0.]])t0 = t.reshape(t.shape[0],t.shape[1],1)tn = np.concatenate([t0*rgb[0],t0*rgb[1],t0*rgb[2]],axis=2)print(tn)输出:[[[ 0. 0. 0.] [255. 0. 100.]] [[255. 0. 100.]原创 2020-11-06 11:20:25 · 2083 阅读 · 0 评论 -
pyqt 修改鼠标样式,使用mask完成透明设置
pyqt 修改鼠标样式,使用mask完成透明设置有兴趣的小伙伴可以阅读和分析下面代码import sysfrom PyQt5.QtWidgets import *from PyQt5.QtGui import *from PyQt5.QtCore import *class Winform(QWidget): def __init__(self, parent=None): super(Winform, self).__init__(parent) se原创 2020-11-05 20:02:29 · 646 阅读 · 0 评论 -
Implicit conversion to integers using __int__ is deprecated
之前能运行的代码,现在运行的时候报下面错误。 Implicit conversion to integers using __int__ is deprecated, and may be removed in a future version of Python.根据小伙伴的提示,原来是因为3.8版本对float类型的数据转int型的一个提示。问题不大,我这里确实是要int类型的。所以,我将数据全部加上了 int 的强制转换,然后就好了。参考:-pygame 贪吃蛇小游戏 部分代码错误分析原创 2020-09-29 14:21:21 · 3031 阅读 · 0 评论 -
pyqt中的目录QFileSystemModel 内容用 QTreeView 显示
前两天做代码的时候自己实现了一个目录展示的效果,虽然有较强的扩展性,但是官方可能还是要完善一些。经过几个小时的摸索,大概效果如下:import sys, osfrom PyQt5.QtWidgets import QApplication, QFileSystemModel, QTreeView, QWidget, QVBoxLayout, QDirModelfrom PyQt5.QtGui import *from PyQt5.QtCore import *from PyQt5.QtWidg原创 2020-09-28 17:26:38 · 3416 阅读 · 1 评论 -
动态设计语言 - python
python在语言设计上比较灵活,属于动态语言。之前不知道这动态语言的意思,感觉很新奇,就看了下python的文档。python 3.8 数据结构 文档该文9万字,论述了python的乾坤,balabala 很多。其中 对象可以添加或删除 对象属性和方法 的操作就是 动态语言 的表现了。这样 python 相对来说对类型的操作就比较方便了。Python3.7.5中__get__、__getattribute__、__getattr__拦截顺序这篇博客中介绍了 通过 属性名 来获取 属原创 2020-09-12 15:52:21 · 185 阅读 · 0 评论 -
c语言结构体转换为 python struct 字符描述
python 的struct 处理二进制数据如 c 语言的结构体, 怎么直接将 结构体转换为 struct 是这个项目的目的。说明折腾了两天,算是一个小结,目前不支持嵌套结构体,不支持enum和一些复杂的东东。额,啥,注释也还不支持。恩恩,这个确实是我懒了,后面有时间再来填上吧。运行$ cd src$ python pystruct.py大家可以嵌入到项目中,我就没得必要弄一个很好的目录结构了,本身就很简单。运行实例struct Header{ unsigned short原创 2020-09-04 12:03:46 · 900 阅读 · 0 评论 -
随机颜色
在做标注的时候,有的时候不想去做配色,做个随机颜色,体验随机的自然美。def judge_c(t,t1,t2): tb = t1 if t1 < t2 else t2 tt = t2 if t1 < t2 else t1 t = t if t >tb else tb t = t if t <tt else tt return tdef gen_color(): t = random.randint(100,765) tp =原创 2020-08-19 10:57:57 · 788 阅读 · 0 评论 -
jupyter运行python问题
jupyter一般运行python,都是默认的当前环境的python,打个比方说,用的conda管理的python环境,一般都是当前环境加的python程序。我今天遇到一个莫名其妙的问题,我不管在哪个 conda环境下,jupyter总是运行一个特定的python。这个问题,明显就是有环境配置在搞鬼,但是我就是折腾conda环境折腾了两天时间,欲哭无泪。最后通过参考 博客 Jupyter配置, 算是找到问题了。通过运行:$ jupyter kernelspec listAvailable ker原创 2020-08-18 22:52:28 · 1303 阅读 · 0 评论 -
numpy的二维指针的坑
data是 numpy.arraydata[2: li + 2, 1:-1] = data[1: li + 1, 1:-1]与data[2: li + 2][1:-1] = data[1: li + 1][1:-1]不一样numpy,这个坑,折腾得我无语了,都怪我才疏学浅。原创 2020-07-02 17:30:41 · 224 阅读 · 0 评论 -
conda安装程序的时候宝 requests 错误
在运行python样例的时候,需要用到 wxpython 库, pip安装编译失败,转线到 conda安装, 结果报错:Preparing transaction: doneVerifying transaction: failedRemoveError: 'requests' is a dependency of conda and cannot be removed fromconda's operating environment.根据conda 的 issue 讨论中找到解决方案:原创 2020-06-22 18:40:30 · 2108 阅读 · 0 评论 -
manim 安装
之前在b站上面看到一个动画制作软件manim,对其制作过程,一直恋恋不忘。时间恍惚,过去两个月,突然想起这个事情了,于是打算来安装一下:$ conda create -n manim $ conda activate manim$ conda install pip$ pip install manimlibpip 报错:ERROR: Command errored out with exit status 1: command: ~/anaconda3/envs/manim/bi原创 2020-06-18 20:08:51 · 1091 阅读 · 0 评论 -
梦达流量卡 自动复机
由于流量稀缺,上两个月在联通买了流量卡,开始用得时候还行,不过用着用着就废物了。流量卡的网速限制在300k以内,问了客户,说他们系统信息正常,可能是基塔问题,说白了,就是白问了,没办法解决。流量卡每隔一段时间就需要‘自助复机’我对流量无非是微信qq接收消息,所以第一个问题,我可以忽略,但是第二个问题,我就不能忍了。于是我想到将 ‘自助复机’ 变成(编程) ‘自动复机’。好了,下面就是我的代码,以防大家重复造轮子,不过如果拿我的代码做违法的事情,后果自己承担:from urllib impor原创 2020-05-18 09:34:51 · 2136 阅读 · 0 评论 -
python audioread 音频处理
python 解码 音频:import timeimport audioreadimport matplotlib.pyplot as pltimport numpy as npimport sys, os filename = '~/Music/a.mp3'with audioread.audio_open(filename) as f: print(f.channels...原创 2020-04-18 18:43:11 · 4222 阅读 · 0 评论 -
python 处理 xml 标签
场景:在分析xml 结构的时候,往往一眼就被元素的参差嵌套弄晕了,有的编辑工具是支持格式化的,对我们阅读很有帮助,我这里使用python做了一个标签嵌套格式的打印工具,对 xml 阅读也有一定帮助。代码:import xml.etree.ElementTree as ET from xml.etree.ElementTree import Elementimport sys, osst...原创 2020-04-18 14:27:08 · 771 阅读 · 0 评论 -
关于 xml 处理
由于和html打交道有一段时间了,对html网页的分析,我比较习惯使用bs4来做分析。今天接触到一个 xml 格式的文件,打算自动处理了,以前我也使用过bs4,当时没有发现弊端。xml 标签有命名空间xml 标签和属性是区分大小写的xml 不包含html 。 html中包含 html标签这和html 的标签分析是不一样的,bs4 有弊端。对于第一个, xml 有命名空间的问题, b...原创 2020-04-14 11:44:42 · 303 阅读 · 0 评论 -
itchat api 说明
login登录,二维码登录import itchatitchat.login()login 方法有几个可选参数, 分别是:序号参数说明默认值1enableCmdQRFalse 图片模式,会自动调用系统的显示模块显示二维码2picDirNone 在config.py下面做了配置,默认是QR.png3qrCallback二维码生成的时...原创 2020-04-06 22:47:51 · 574 阅读 · 0 评论 -
将 javascript 的字符串和正则的内容替换为下划线
程序语言的设计就是一门艺术, 通用程序语言更是如此。其实程序说白了就是字符串,是对机器逻辑的阐述,对程序语言的处理感觉也是就成了一门艺术。最近看到一个非常大的 js 文件,大约有10万行,让我懵生了程序处理的念头。在分析和试探的阶段,我发现js代码的程序结构很大程度上是受大括号( {} )控制,而js代码的注释,字符串,正则表达中有可能存在很大程度上影响了程序结构的分析。所幸该代码段没有任...原创 2020-04-02 15:43:04 · 1092 阅读 · 0 评论 -
python 处理连续的重复行
我在处理文本数据的时候,使用了系统命令grep进行检索文本内容,然后要将检索到内容的文本进行单独处理。可是有的文本由于有多个检索项,所以存在多行的情况,这时候,百度了下,发现代码太多,不是我想要的。于是写了一个简单的python 脚本,供大家参考import ostxt = 'temp.txt'txt2 = 'temp2.txt'fr = open(txt)fw = open(tx...原创 2020-03-31 11:17:22 · 864 阅读 · 0 评论 -
tensorRT 环境搭建
首先说明,这个是 20200314 的帖子,可能各位大大看到的时候,情况已经发生了变化,各位做参考就好了。前面是拉拉杂杂的,可以直接到后面的安装其实安装 tersorRT 其实比较简单,但是要将 tensorRT 和 pytorch 安装在一个盒子里面,就尴尬了。应该在实际的运行环境,不需要这样做,因为按照官方介绍 tensorRT 是做运用环境下的部署,运行环境建议大家直接使用 tenso...原创 2020-03-14 11:43:57 · 3892 阅读 · 3 评论 -
vs code恢复配置
我家里的电脑,vscode 的 terminal除了问题,不能正常运行,重装vscode也试了也不行,重装系统也不行,让人头疼。后来想到,可能是配置文件出了问题,百度了下,Linux的配置文件在 ~/.vscode 下,修改了还是不得行,然后又看到在 ~/.config/Code/User/settings.json 下。我直接将 Code文件夹替换了:mv ~/.config/Code{...原创 2020-03-08 18:02:47 · 1725 阅读 · 0 评论 -
terminator 项目
在linux下面,终端输入是不能迈过的坎,不过好在linux下面有很多终端可以选择,各有特色。terminator 就是其中一个比较出名的终端。我们可以看看这个项目的运行界面。这个分屏功能做得特别香。项目在哪儿呢,我习惯的在github上面找,但是发现并没有,感慨github的落幕。功夫不负有心人,我在debian项目上找到一个维护的 terminator 库。不过有点不太舒服的是,这...原创 2020-03-06 10:24:44 · 155 阅读 · 0 评论 -
python 2to3 工具
由于历史原因, 尽管官方不再在python2 上做更新,但是还是有很多项目都是基于python2上做的开发和维护。这样将这些项目尽快通过python2 转化到python3。 然后享受python3 带来的便利呢。办法还是有的,就是用 python 2to3 工具。这个工具怎么使用,可以输入help进行阅读帮助文档。这里篇幅不够,我们来看看python的命令项目怎么折腾的 ^-^。$ wh...原创 2020-03-06 10:21:16 · 878 阅读 · 0 评论 -
mysql 修改数据库数据存放位置
下面代码没有测试,等我有空了再整理,供大家参考。# 修改目录# https://blog.youkuaiyun.com/ycisacat/article/details/48348315change_dir = 'sudo cp -R -p 'ms_data_dir = '/var/lib/mysql'def run_bash(cmd): if os.system(cmd) != 0:...原创 2020-03-03 22:11:26 · 189 阅读 · 0 评论 -
mysql 数据库修改root密码
在ubuntu上安装mysql服务器后,发现数据库 root 密码不对,看了博客,知道了原因。但是感觉挺麻烦的,有没有一劳永逸的方法呢,那就是自己写个脚步,以后直接使用就好了。import pymysqlimport sysimport os ############## 获取密码# 参考: https://www.cnblogs.com/super-zhangkun/p/9435...原创 2020-03-02 22:51:04 · 242 阅读 · 0 评论 -
python 不以特定字符串开头的正则表达
在python3中,我查看了文档,没有发现这个功能,最多是不以某个字符开头的匹配。不过还好最后折腾出来了。功能就是用或运算将以其他形式开头的全部匹配出来,有点笨重,我这边就两个字符,勉强还算满意t_list = ['abcabascs','bac','afdsfag','dsafewafs','dsabcadfsad','bsadfdsgwwef','abcdsfda','daseavc']...原创 2020-01-17 16:00:51 · 5604 阅读 · 1 评论 -
pep8 - pycodestyle
python用了这么就,还是第一次看到python有个格式约束项目。pycodestyle规范的格式肯定是推崇的,大家平时可以按照这个格式规范约束自己的编码习惯。...原创 2019-12-30 17:14:44 · 335 阅读 · 0 评论 -
python 下面 __FILE__, __LINE__, __FUNC__
在c语言中__FILE__, __LINE__, __FUNC__,这三个变量,用得好可以当作一个动态调试器,帮我们定位一些运行时错误,不管是调试还是运行日志的打印跟踪都非常有用。但是在python中,却没有提供这样的错误,报错都是使用的默认的报错堆栈来跟踪错误,对日志格式输出不够友好。气质python有堆栈管理的包 — inspect , 用起来也是挺方便的,我这里实现了__LINE__()...原创 2019-11-28 11:00:38 · 1568 阅读 · 0 评论 -
python计算任意多边形面积
看了一些方法网上的资料,也自己倒腾了一些想法。 然后看到这个大神的博客(《计算任意多边形的面积》),我就服气了。我把代码转换为python:# 计算任意多边形的面积,顶点按照顺时针或者逆时针方向排列def compute_polygon_area(points): point_num = len(points) if(point_num < 3): return 0.0...原创 2019-03-05 18:02:57 · 12013 阅读 · 24 评论