自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 Numpy:基本运算(1)

原文地址首先,定义两个矩阵作为操作数import numpy as npa1 = np.array(np.arange(10, 70, 10).reshape((2,3)))# [[10 20 30]# [40 50 60]]a2 = np.array(np.arange(6).reshape((2,3)))# [[0 1 2]# [3 4 5]]+ - * /:两个矩...

2020-01-31 10:30:19 2009

原创 Python OpenCV 获取视频文件的常用属性

原文地址OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视觉库。OpenCV是由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研究领域中免费使用。OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程序。该程序库也可以使用英特尔公司的IPP进行加速处理。引自 维基百科_OpenCVOpenCV提供了p...

2020-01-31 09:41:32 3178

原创 Python安装cv2

原文地址因为有一个视频分帧取图片的,找到的教程多会用到import cv2,当我去pip install cv2的时候,却找不到这个模块。搜索之后发现这个cv2是其实是opencvpip install opencv成功。附OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视觉库。OpenCV是由英特尔公司发起并参与开发,...

2020-01-30 17:40:26 2029

原创 TensorFlow:Graph计算图的概念

原文地址我的一丢丢看法,个人以为计算图是TensorFlow架构中最大的逻辑空间,用来隔离不同项目中定义的变量和运算。来段程序理解一下import tensorflow as tf# Graph()框出一个范围,用来隔离张量和计算,还可以通过tf.Graph.device指定设备,与其他graph下的变量隔离# collection属于计算图下的概念,相当于一个公共空间,本计算图下的中间...

2020-01-30 13:17:52 2432

原创 numpy中的数组操作

原文地址学习地址首先导入numpy模块import numpy as nparray:创建数组# np.array()定义一个数组a = np.array([2,23,4])print(a)# [ 2 23 4]dtype:指定数据类型# dtype属性,指定数据类型a = np.array([2,23,4],dtype=np.float)# np.int32...

2020-01-30 11:12:33 1837

原创 Numpy:常用属性

原文地址ndim:维度shape:行数和列数size:元素个数import numpy as np # 导入numpy,通常为了简便,重命名为np(在本文件内有效)array = np.array([[1,2,3],[4,5,6]]) # 定义一个矩阵print(array)# [[1 2 3]# [4 5 6]]# ndim维度print(array.ndim)...

2020-01-29 10:54:18 1878

原创 What is Numpy

原文地址NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。NumPy 的前身 Numeric 最早是由 Jim Hugunin 与其它协作者共同开发,2005 年,Travis Oliphant 在 Numeric 中结合了另一个同性质的程序库 Numarray 的特色,并加入了其它扩...

2020-01-29 10:51:10 1915

原创 Python:print打印进度条

原文地址参考文献Python:print()一个最简单的实现[ 198 / 198]import timedef bar(now, total): print('\r[ %d / %d]' % (now, total), end='') # print('\r[ {} / {}]'.format(now, total), end='') # 另一种格式化输出的写...

2020-01-28 10:47:35 4423

原创 Python:print()格式化输出

原文地址print()是python的一个内置环境,用来在控制台进行输出。结尾print默认以换行符\t结尾,可以通过end=自定义结尾print('123') # 默认以换行符\t结尾,可以通过‘end=’自定义结尾print('456', end='')print('789')Output:123456789在需要在字符中使用特殊字符时,python用反斜...

2020-01-28 10:42:54 3711

原创 Python填充0对齐——zfill()

原文地址目前我发现有两种方式str.zfill(width)width指定字符串的长度,原字符串右对齐,前面填充0。eg.print('s'.zfill(3))Output:00sstr.rjust(width, mark)width指定字符串的长度,源字符串右对齐,前面填充mark传入的符号mark指定用什么字符填充,默认是空格eg.print('s'.rju...

2020-01-27 17:35:37 2351

原创 Python:当前系统路径分隔符的获取和使用

原文地址可以通过os模块的sep属性获得当前属性的路径分隔符print(os.sep)# 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"在Linux中用斜杠/进行路径分隔,这不会有什么问题。但是在Windows中,路径是以反斜杠\进行分隔的,我么知道,反斜杠在编码中承担这转义字符的作用,比如\n表示换行\t是制表符,如果是\name这样的路径,只这样路径就会被系统...

2020-01-27 15:38:40 19152

转载 Python:os模块的常用方法和属性

引自 os模块常用方法# osos.makedirs('dirname1/dirname2') 可生成多层递归目录os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirnameos.rmdir('dirnam...

2020-01-27 15:09:13 1926

原创 python获取大小写字母、数字,各种字符

原文地址方式一:通过ASCII码ASCII(发音: /ˈæski/ ASS-kee[1],American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。ASCII码,就是一套英文字符的编码集,用8位二进制数表示所有英文字符,因为最早的计算机系统都是再英文环境下的,所有的英文字符在8位二进制数的...

2020-01-25 20:17:16 6759

原创 一个tkinter窗口实例

原文地址学习地址什么是tkintertkinter是一个python搭建可视化串口的功能包tkinter能干什么tkinter能像html那样搭建输入框,包括文本框,复选框,下拉框等可视化输入接口,配合pyinstaller模块可以将python程序封装成可视化小工具,我写过这么一个例子使用pyinstaller将Python程序封装成可执行文件,还做了多线程解决程序运行时tki...

2020-01-23 10:06:25 2162

原创 Linux下apache2的安装与卸载

原文地址apache2跟tomcat一样, 是项目管理容器安装 sudo apt install apache2改端口,如果默认端口被占用vim /etc/apache2/ports.conf更改端口之后需要改掉对应的sites-enabled/000-default.confvim /etc/apache2/sites-enabled/000-defaul...

2020-01-22 17:13:23 2724

原创 多线程解决程序运行时tkinter界面卡死的问题

原文地址用tkinter写了个窗口界面来调用写的程序,点击执行之后,完蛋,界面卡死了。因为调用的后台程序执行时间过长,tkinter是通过不停的刷新页面来进行显示的,这个程序一调用,tkinter就不能刷新了,界面就卡死了。欸,这时候就想起了多线程,一个线程去后台执行程序,一个线程用来在前面刷新显示。就去搜了一下,果然跟我想的一样~这里是关键代码# 点击提交执行的功能def exec...

2020-01-22 13:04:08 7379 1

原创 Windows下Typora的图片问题

原文地址感谢大佬的插件Typora是一款不错的本地Markdown编辑器,但是其中的图片问题也很明显,它本身是一款文字编辑器,不具有显示图片的功能。其中图片的显示是通过导入图片的地址来引用显示,默认插入其中的图片会保存在本地Typora安装目录下,这就造成了在把.md文件发送给其他人或者复制的方式复制到博客编辑器的时候,图片将无法显示。对于这个问题,如果是Mac用户有一款非常好用的插件 iPi...

2020-01-22 12:58:48 3935

转载 python获取当前计算机cpu数量

如果当前python版本大于2.6,可以简单的通过下面模块来获取当前cpu数量,cpu_count的返回值就是cpu数量:import multiprocessingmultiprocessing.cpu_count()如果是比较老的python版本,可以用下面的模块来获取当前cpu数量:import psutilpsutil.cpu_count()———————————————...

2020-01-18 20:18:19 2400

原创 连接Linux服务器图形界面

原文地址vnc安装服务器端安装桌面安装准备工作远程登录服务器, 更新源及系统sudo apt updatesudo apt upgrade y桌面安装可以选择完全安装和精简安装两种方式完全安装(包括很多额外组件:Office、浏览器等等)apt install ubuntu-desktop gnome-panel gnome-setting...

2020-01-18 13:19:05 2779

原创 Python自动生成软著60页代码

原文地址在申请软件著作权时,代码文档的提交的代码不能有注释,不能有空行,每页50行……本文的代码生成针对jiava代码,注释包含//单行注释和/**/首先,需要导入的支持模块from docx import Documentfrom docx.shared import Ptfrom docx.enum.text import WD_LINE_SPACINGimport re递归...

2020-01-18 13:13:52 6263 3

原创 Python多进程5 进程锁Lock

原文地址学习来源多进程间通过共享内存来进行参数共享,参数共享就会有同时写的数据安全问题。先来看看不加处理的多进程执行情况。看程序来更直观的说明import multiprocessing as mpimport timedef job(v, num): for _ in range(5): time.sleep(0.1) # 为了观察效果明显,做一下延迟...

2020-01-18 13:09:06 2221

原创 ESXI环境中安装虚拟机

原文地址准备工作首先,你需要一个.iso的镜像文件,Windows的镜像可以从 http://msdn.itellyou.cn/ 网站获得。我这里以一个64位Win7的镜像做演示开始安装地址栏输入ESXI物理机的IP,连接ESXI物理机。输入用户名密码,进入ESXI控制台。选择到Virtual Machines(虚拟机)选择Create/Register VM(创建/注册虚...

2020-01-17 18:19:43 4072

原创 Python多进程4 进程池——Pool

原文地址学习来源是multiprocessing模块下的一个类,是一种创建多进程的更加简便的方式,可以更加方便的分配任务与传递参数。pool = mp.Pool(processes=6)生成进程池Pool的两个任务分配的函数.map(函数名,参数列表的列表)所谓的参数列表的列表是把所有的任务的参数列表再封装到一个列表中,形成一个二维列表。这样Pool就会根据把列表中的参数分配给自己所拥有...

2020-01-17 11:41:02 3117

转载 把WinRAR默认压缩格式换为ZIP

转载自:把WinRAR默认压缩格式换为ZIP使用WinRAR的一个技巧,说实话,我并不喜欢WinRAR,不过不可否认这个软件有其方便的地方,在一些细节方面7Zip的确不如WinRAR做的好。例如,WinRAR默认建立的压缩包都是RAR格式的,但我们希望默认都使用ZIP格式的压缩文件,让WinRAR将文件默认压缩为ZIP格式,但又不想换其他压缩软件。方法很简单,打开WinRAR,选择“选项”-...

2020-01-17 11:35:12 7635 1

原创 Python递归获取指定文件夹下的所有文件夹、文件

原文地址因为有了一个想从一个大文件夹下find出所有的.doc文件的需求,这个需求的关键活动就是递归获得文件夹下的所有文件。通过一番找资料,整理出两种递归获取指定文件夹下所有文件夹、文件的方法。方式一,使用os.walk(path)函数获取使用该函数需要导入os模块。import os函数返回元素是(文件夹,[文件夹下的文件夹列表],[文件夹下的文件列表])的一个列表,通过循环拼接...

2020-01-16 19:49:43 6072 3

原创 Python多进程3 多进程、多线程和串行执行的效率对比

原文地址学习来源我在这里写了一些多线程的学习总结,在这里写了一些多进程的学习笔记,在这片文章中,就它们并串行执行的情况进行一下对比。直接上程序import multiprocessing as mp # 多进程的模块import threading as tdfrom queue import Queueimport timedef job(q, n): # 进程调...

2020-01-16 19:46:14 2328

原创 phpmyadmin安装

原文地址本文主要参考了 https://www.jianshu.com/p/16f9d63b6efc mysql的web管理工具为什么要在其配置文件中存mysql中的密码呢, 好像可以在配置文件中允许空密码登录, 那个操作的底层实现是从配置文件中取到密码去登录?phpmyadmin需要一个对所有数据库有操作权限的, plugin=mysql_native_password的...

2020-01-15 21:29:28 1809

原创 Python递归获取指定文件夹下所有包含某关键字的文件/文件夹路径

原文地址方法整体分两步,第一步递归获取到所有文件def getAllSub(path): Dirlist = [] Filelist = [] for home, dirs, files in os.walk(path): # 获得所有文件夹 for dirname in dirs: Dirlist.append(...

2020-01-15 21:26:04 5252

原创 Python多进程2 多进程的参数返回

原文地址学习来源对于在当前主进程的操作,函数的返回值可以直接操作,或者用一个参量进行接收。但是在其他进程中运行的函数的返回值,是无法直接传递到主进程的。将其返回值存到一个全局性的存储器中,是一种可行的方案。这里用queue(队列)来存储多个进程的返回值。在主进程中可以将他们依次取出,这样就做到了多进程与主进程的返回值传递。关于队列,我在我的这篇博客中做了简单说明,该博客也是多线程中返回值传递的...

2020-01-15 21:23:02 2979

原创 在远程Linux服务器上卸载与安装图形化界面

原文地址卸载卸载gnome-shell主程序sudo apt-get remove gnome-shell卸载gnomesudo apt-get remove gnome卸载不需要的依赖关系sudo apt-get autoremove彻底卸载产出gnome的相关配置文件sudo apt-get purge gnome清理安装gnome时候...

2020-01-14 16:28:40 2193

原创 小米游戏本8代加装固态硬盘系统迁移

原文地址固态的选择真正装的时候才发现同样是M.2接口的固态,有一个卡槽和两个卡槽的区别,我的通俗理解是一个卡槽的读写速度会更快一些。小米游戏本提供的是一个卡槽的接口。装固态参考自 https://post.smzdm.com/p/a25rze37/ 在卸掉螺丝时注意后面一条脚垫中间那一小块是可以扣下来的,扣下来之后还有一颗螺丝。延边沿用撬棒撬开暗扣。都...

2020-01-14 16:23:56 5937 1

原创 Python递归获得指定文件夹下的所有文件夹、文件

原文地址因为有了一个想从一个大文件夹下find出所有的.doc文件的需求,这个需求的关键活动就是递归获得文件夹下的所有文件。通过一番找资料,整理出两种递归获取指定文件夹下所有文件夹、文件的方法。方式一,使用os.walk(path)函数获取使用该函数需要导入os模块。import os函数返回元素是(文件夹,[文件夹下的文件夹列表],[文件夹下的文件列表])的一个列表,通过循环拼接...

2020-01-14 13:45:43 3167

原创 Python多进程1 一个多进程实例

原文地址学习来源多进程与多线程类似,无论是在理论还是操作上,我在这里就多线程写了一点东西。多进程与多线程最大的区别是,多进程是真正意义上的/物理层面上的并行执行,每个进程会被分配到足够的(在实际有那么多的前提下)资源单独进行运算。而多线程则是多个进程间共享资源,通过分时获得资源的一种伪并行。下面就一个实例来演示python进行多进程操作import multiprocessing as ...

2020-01-14 11:05:07 1937

原创 MySQL用户操作

原文地址操作用户进入mysqlmysql -u root -puse mysql # 进入msyql数据库创建本地用户create user 'newusername'@'localhost' identified by 'userpwd';flush privileges; # 使操作生效创建远程用户create user 'newusername'@'192....

2020-01-13 13:34:01 1922

原创 WordPress中导入图片模糊

原文地址最近发现它在引入WordPress媒体库中的图片时,总是发现图片会模糊不清,而且越大的图片这种现象越严重。最终我找到了解决方案如下 图中引入的图片是我在1920x1080的屏幕上几乎全屏截取到的,但是显示就那么大一丁点,通过html标签属性给它放大之后就会非常模糊。当我去媒体库查看这张图片时,发现它保留着原有的尺寸,并且打开很卡顿,说明它挺大,加载起来挺慢(当然也是因为我带宽小的原...

2020-01-13 12:54:38 3493

原创 使用pyinstaller将Python程序封装成可执行文件

原文地址先看效果 这里以我之前做的一个小功能为例,它通过调用FFmpeg这个开源工具,来实现音视频格式的转换。然后我又用tkinter这个功能模块为这个程序做了一个界面。在这里我我主要是用pyinstaller这个工具把把这个功能封装成一个可执行文件。操作环境系统:Windows10编译器:pycharm环境工具:AnacondaFFmpeg、Python3.7、tkinter、...

2020-01-13 10:46:02 2618 2

原创 Python多线程4 共享资源加锁threading.lock()

原文地址学习来源在第一节中说道多线程更像一种分时获得资源的机制,那么如果线程2需要在线程1的结果基础上才能继续,如果不加限制的话,线程2会在线程1操作未完成之前获得资源,这时候就让线程2开始工作,显然不能get到想要的结果。编写成前后串行的程序结构是一种解决方案,如果线程2的大多数操作与线程1没有干扰,还是有让它们并行来提高效率的意义的,需要做的就是控制它们对都共同的对象的操作,必须在线程1...

2020-01-13 10:11:32 2157

原创 Python多线程3 多线程的传参与返回值

原文地址学习来源在主线程用一个变量或者直接输出就能获取或使用函数中return的值。但是在多线程中,可以这么理解,多线程之间的变量空间是互相隔绝的,所以return是不能把值返回到主进程的,只能在所在的线程使用,线程结束,值所在空间也就被释放了。所以,多线程之间需要一个更加全局性的存储器来保存所有线程之间的值,这里使用queue(队列)来完成这项工作。什么是队列?简单介绍一下队列,队列是...

2020-01-12 10:44:57 4385

原创 Pyinstaller的报错的几种解决方法

原文地址提示框报错:failed to execute script命令行报错:no module named在你的 .py文件所在目录下的build/py文件名/warn-py文件名.txt中可以看到一些警告信息,多是一些missing module named xxx 我对比了一个成功了的和出错了的这个文件,发现上面基本上都一样的,只有这最后这部分,是这个出错的特有的,而我也确实在我...

2020-01-12 10:34:40 5921

原创 Python多线程2 join()

学习来源原文地址一句话:对于 线程i.join() 这一行代码,其后的代码都要等待线程i完成之后才能执行。import threadingimport timedef T1_job(): print('T1 start\n') time.sleep(1) print('T1 finished')def T2_job(): print('T2 star...

2020-01-11 11:21:48 1900

RL_DQNv3.py

Pytorch实现强化学习算法DQN,DQN以Q_Learning算法为基础,通过神经网络生成Q值,智能体利用神经网络模型自动生成Q值,根据Q值大小选择动作,最终完成强化学习任务。

2020-05-20

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

TA关注的人

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