自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 资源 (1)
  • 收藏
  • 关注

原创 正则表达式

正则表达式

2022-06-23 10:30:33 228 1

原创 linux监视某一进程并自动重启

linux监视某一进程并自动重启

2022-06-13 15:40:03 2562

转载 linux运行shell命令文件时,出现$‘\r‘: command not found报错的解决办法

1、Linux下执行shell脚本报错如下: 2、原因: 是Windows和Linux的.sh脚本文件格式不同,如果在脚本中有空行,脚本是在Windows下进行编辑之后上传到linux上去执行的话,就会出现这个问题。 windows 下的换行符是\r\n,而 linux 下的换行符是\n,没有识别/r,所以会导致上述的报错,这个属于脚本编码的问题。 3、解决方法:(运行以下命令即可修改该脚本格式) 在...

2022-05-30 14:40:42 4340

原创 python中线程的使用(可以进行数据的共享)

通过这个例子可以证明多线程比单线程运行速度要快,如何用map拿取各个线程执行之后的数据。(由于GIL锁的原因,多个线程只能用一个cpu,这时多进程的执行效率要比多线程高,至于多线程为什么快,大家可以去搜一下)"""验证多线程运行时间比单线程运行时间快多少用了一个计算时间的装饰器 输出运行时间可以发现多线程在我的电脑上运行时间为5s 单线程运行时间为16s 差别很大"""from functools import wrapsimport concurrent.futuresimport ma

2022-05-18 15:31:14 715

原创 python利用线程生成不同尺寸的缩略图

利用线程生成缩略图;读取当前路径下的png文件,在当前路径下生成6464,128128和32*32的缩略图。"""利用线程生成缩略图读取当前路径下的png文件,在当前路径下生成64*64,128*128和32*32的缩略图"""import globimport osimport threadingfrom PIL import Imagedef generate_thumbnail(infile, size): """生成指定图片文件的缩略图""" file, ex

2022-05-17 17:01:15 403

原创 python创建子进程,进程间利用队列通信,进程池的使用,队列加锁

python创建子进程其中可以通过Process来构造一个子进程p = Process(target=fun,args=(args))再通过p.start()来启动子进程再通过p.join()方法来使得子进程运行结束后再执行父进程#coding:gbkfrom multiprocessing import Processimport osdef run_proc(name): print('Run child process %s (%s)...' % (name, os.getp

2022-05-11 20:57:25 979

原创 sqlalchemy 在数据库设置字段的默认值

下面设置默认值,是不对的,此处设置并不能设置成功。is_vip = Column(Integer, default=0)正确的设置方法, 注意 server_default 设置默认值,虽然字段类型为Integer,仍然需要设置字符串类型 # 数据库设置默认值 需是字符串is_vip = Column(Integer, server_default='0')...

2022-01-10 20:40:22 1230

原创 linux服务器查看显卡信息

利用shell命令lspci | grep -i vga  如果上面命令没有显示出来相应的16进制编码代号;  使用下面命令查看英伟达显卡的16进制编码。(下面的命令只能显示英伟达的显卡代号)lspci | grep -i nvidia  查找到显卡代号之后去The PCI ID Repository的ID仓库中搜索相应的显卡型号。shell命令解释lspci :顾名思义,就是显示所有的pci设备信息。pci是一种总线,而通过pci总线连接的设备就是pci设备了。如今,我们常用的设备很多

2022-01-05 11:35:07 15200

原创 linux离线Docker与docker-compose安装,并配置docker镜像保存地址

Docker安装下载 docker 国内镜像链接(博主下载的是docker-18.06.3-ce.tgz版本)解压下载的docker包tar zxvf docker-18.06.3-ce.tgz复制解压出来的docker到/usr/bin/目录下sudo cp docker/* /usr/bin/在以下目录下新建一个文件 docker.servicevim /etc/systemd/system/docker.service文件内容如下[Unit]Descript

2021-07-24 20:27:47 881 1

原创 docker和nvidia docker的启动

docker 利用 docker run 启动docker run -it -d -v /宿主机目录:/容器目录 镜像名 /bin/bash其中:  -it代表可以利用控制台和终端登录(通常都要)  -d代表后台启动  -v代表路径的映射未使用的参数:  -p指定端口映射 格式为:主机(宿主)端口:容器端口  --name="nginx-lb" 为容器指定一个名称  -e username="ritchie" 设置环境变量nvidia docker的启动,添加路径映射并调用cuda的

2021-07-08 18:55:12 2059

原创 python获得中文的首字母

def single_get_first(unicode1): str1 = unicode1.encode('gbk') try: ord(str1) return str1.decode('gbk') except: asc = str1[0] * 256 + str1[1] - 65536 if asc >= -20319 and asc <= -20284: return 'a

2021-06-24 17:07:26 728

原创 linux常用命令

Linux如何查看端口被哪个进程占用的方法:1、lsof -i:端口号2、netstat -tunlp|grep 端口号

2021-04-13 10:28:31 78

原创 python读取文件路径

import osprint(os.getcwd()) #获取当前运行文件目录# 必须是实际存在的.py文件,如果在命令行执行,则会引发异常NameError: name '__file__' is not definedprint(os.path.dirname(__file__))

2021-03-11 11:04:29 1155

原创 Python多线程异步调用

  本博客主要实现一个python多线程异步调用的demo。  程序功能简介:调用main_func作为主程序,主程序内部创建两个线程,分别建立线程ID、线程名和线程内部执行延迟时间,两个线程内部分别调用函数print_time打印时间。exitFlag作为标志位,如果为1表示线程不打印时间直接退出。  结果分析:程序主线程已经执行结束,并不影响其建立的线程执行,所以可以实现异步调用。程序代码:import threadingimport timeexitFlag = 0class myT

2021-01-28 16:09:29 2362

原创 将python项目的py文件编译为pyc文件

功能  将Python工程目录下的所有py文件(递归所有子目录)编译成pyc文件,可选择生成新的工程目录,也可以选择删除源文件,仅保留pyc文件用于部署pyc部署优点  省去了Python动态编译的过程,直接加载pyc字节码文件,可以加速Python运行速度。  pyc文件是二进制文件,可以保护源代码不被看见,当然也有大牛能反编译。编译代码  import datetimefrom pathlib import Pathimport osimport shutilimport compi

2020-12-29 09:48:11 1697

原创 Docker中python输出中文 提示错误UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position

问题描述:    docker 中 python 代码的 print(“中文”) 出现错误,但宿主机不会出现该错误,如下:UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 0-127: ordinal not in range(128)问题分析:    原因是因为locale 的设置导致 shell 的stdin/stdout/st

2020-12-25 12:47:01 644 2

原创 docker加载镜像报错 dockerError processing tar file(exit status 1): no space left on device

问题描述: 在运行docker load 加载镜像时报错 dockerError processing tar file(exit status 1): no space left on device问题分析: 造成以上报错的原因是因为docker加载镜像的空间不足了解决办法:第一个解决办法查询到docker默认存放镜像地址为 /var/lib/docker ,扩展此地址下的空间就可以解决这个问题,但是博主并没使用这个方法。第二个解决办法修改 docker root pathstep 1

2020-12-24 23:16:33 19139 17

原创 Elasticsearch启动时显示max virtual memory areas vm.max_map_count [65530] is too low

  Linux在启动时报错显示max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]  分析:报错原因是因为虚拟内存太低,所以我们的解决办法是增加虚拟内存。解决办法:使用命令打开修改虚拟内存的文件vi /etc/sysctl.conf在打开的文件中设置虚拟内存(后面的数可以设置的更大点)vm.max_map_count=262144使设置的虚拟内存生效

2020-12-24 22:57:28 4066 2

原创 linux下进入Postgres数据库操作

登录PG数据库:psql -U postgres(U需要大写)查看所有数据库:\l进入某一数据库:\c 数据库名字查看某一数据库中所有表名:select tablename from pg_tables;(后面别忘分号)退出数据库:ctrl + z

2020-12-10 18:20:02 17685 1

原创 Docker打包新镜像操作

查看docker名字中包含sky的命令:docker ps |grep sky将外部的python安装包copy到容器内:docker cp 外部路径 容器Id:容器路径进入docker容器:docker exec -it 容器Id bash提交生成新的镜像:docker commit 容器id 新镜像名:版本号将提交生成的新镜像打包:docker save -o 镜像名-版本号.tar 新镜像名:版本号...

2020-12-10 18:10:02 322

原创 PG数据库同步数据到ES数据库

思想  ES数据库同步PG数据库在本文主要用到的思想是:在PG数据库的数据录入以及更新时,如下图所示,会有其对应的字段modify_time记录最后的修改时间。程序会记录同步到ES数据库中最后一条数据的修改时间,利用线程间隔10s检查一次PG数据库是否有modify_time > 记录的最后修改时间。如果有,将最新的数据同步到ES数据库,并修改记录时间。如果没有,继续每隔10s检查一次。  最终的实现效果:  程序实现的主要代码:def update_pg2es(): global

2020-10-08 16:41:47 2542

原创 win10系统下PG数据库和ES数据库的安装和启动

PG数据库和ES数据库的安装和启动PG数据库的安装和启动PG数据库下载网址

2020-10-08 15:04:18 1082

原创 对gitlab多人协同开发的理解

对gitlib多人协同的理解鸣谢http://www.360doc.com/content/14/0508/17/14416931_375851686.shtml简介多人开发同一个项目,为了充分调度多人协同开发的优势,而又不产生冲突(开发的功能冲突),所以github就在Linux之父的手中诞生了。当多人开发同一个项目,并且有一个项目管理者对这个项目做一个统一的管理(说白了就是项目管理者审核你做的这一部分书写是否规范,你实现的代码是否完成了整个项目需要的某一项功能),如果你是符合要求的,就执行me

2020-09-23 10:00:41 1367

原创 简单爬虫通用模板爬取百度百科的简介和属性信息

#coding=utf8from bs4 import BeautifulSoupimport requests#下载网页内容def html_download(url): if url is None: return None try:# r = requests.get(url, timeout=30)headers=headers# return r.status_code #time

2020-08-17 13:53:49 511

原创 字符串前面的r,u,b是什么意思

字符串前面有 r有些时候我们会看到字符串前面会加一个小写的r,例:r"\n\n\n\n",加入r代表row string,也叫做原生字符串,意思就是上述的"\n\n\n\n"仅代表字符串的意思,没有转义字符(换行)的意思。字符串前面有 u有些字符串前面有u,例:**u"我是含有中文字符组成的字符串。"**其代表后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时出现乱码。...

2020-08-11 10:06:52 2651

原创 python使用logging实现信息既在桌面输出,又在log文件中写入

import loggingfrom logging import handlersclass Logger(object): level_relations = { 'debug':logging.DEBUG, 'info':logging.INFO, 'warning':logging.WARNING, 'error':logging.ERROR, 'crit':logging.CRITICAL }#日

2020-08-03 18:03:17 690

原创 Python中字典合并的四种方法

【方法一】借助dict(d1.items() + d2.items())的方法备注:d1.items()获取字典的键值对的列表d1.items() + d2.items()拼成一个新的列表dict(d1.items()+d2.items())将合并成的列表转变成新的字典【方法二】借助字典的update()方法【方法三】借助字典的dict(d1, **d2)方法【方法四】借助字典的常规处理方法参考 https://www.jianshu.com/p/99b2acce151a..

2020-08-02 23:32:08 1670

原创 利用Python实现模糊查找

file_list 为要查找的列表,列表里各个元素的格式为字典格式,查询字典中的关键字中是否包含要查找的元素,如果包含,将列表中的字典加入待返回列表。看懂代码之后,可根据自己的需求修改代码。重点在正则化表达式的构造上!import refile_list = [ { "type": "dir", "size": "123", "name": "access.log", }, { "type": "dir", .

2020-08-02 23:05:27 14219 4

原创 create_list.sh 文件内容

注意使用之前请修改文件路径#!/bin/bash#注意使用之前请修改文件路径root_dir=/media/caffeusr/diska/data/VOCdevkitsub_dir=ImageSets/Main#bash_dir="/media/caffeusr/diska/caffe/data/VOC0712"bash_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"for dataset in trainval tes

2020-07-06 10:43:38 1656

原创 create_data.sh 文件内容

注意使用之前请修改路径#cur_dir="/media/caffeusr/diska/caffe/data/VOC0712"#注意使用之前请修改路径cur_dir=$(cd $( dirname ${BASH_SOURCE[0]} ) && pwd )root_dir=$cur_dir/../..#root_dir=$cur_dircd $root_dirredo=1data_root_dir="/media/caffeusr/diska/data/VOCdevkit"

2020-07-06 10:42:22 2306

原创 Ubuntu18.04开机默认关闭和开启图形化界面(图形界面进不去的部分解决办法)

关闭用户图形界面,使用tty登录。sudo systemctl set-default multi-user.targetsudo reboot开启用户图形界面。sudo systemctl set-default graphical.targetsudo reboot如果开机一直在命令行界面进不去图形界面,可以尝试以下办法:查看当前启动方式systemctl get-default如果启动方式为 graphical.target ,则表示默认启动方式为进入图形界面,此时不..

2020-07-01 08:56:54 13545 4

原创 Github以及其他网站访问慢或者图片加载不出来解决办法(Windows)

下面为Windows的解决办法,修改hosts文件。现象:ping网站(github.com)请求超时。原理:访问网址时先搜索hosts文件,如果在hosts文件中有网址对应的ip则不需要dns域名解析,因此可以将网址的ip配成静态ip,减少解析过程,提高访问速度。所以我们修改hosts文件,绕过DNS解析,直接访问网站。具体修改办法:在C:\Windows\System32\drivers\etc\hosts文件中追加下面两行IP和域名, 将域名直接指向IP。140.82.xx.xx github

2020-06-09 11:11:16 756

原创 Caffe-SSD训练日志

2019年11月11用VGG16作为预训练模型,迭代12w次,batchsize用16x32,用dssd的环境,但是增加了mobile_lib.py中的CreateMultiBoxHead_ssd()函数,所用时间为32.6小时目的:1.为了验证dssd的环境是否能运行ssd_pascal.py2.为了验证16x32是否对结果又比较大的影响结果:mAp值为77.3,说明16x32和32...

2019-11-13 11:54:16 516

原创 图像卷积中三维的数据用numpy做级联的操作

import numpy as npn1 = np.random.randint(0,10,size=(5,5,5))n2 = np.random.randint(0,10,size=(5,5,5))n3 = np.concatenate((n1,n2),axis=0)#当维度为3维时,axis = 0 指的是第三维度级联,axis = 1指的是列级联,axis = 2指的是行级联,在图像...

2019-10-20 20:43:24 483

原创 python读取文件中的字符进行处理(可用于分析log中的数据)

直接上代码然后注释,很容易理解:# 先声明列表losslist = []#打开文件然后将数据读入lineswith open ('VGG_VOC0712_SSD_300x300.log') as lines: flag = 1 for line in lines: # 一行一行的来 wordlist = line.split() #按照空格将每一行都分开放进...

2019-10-19 16:08:50 684

原创 ubuntu18.04配置caffe并实现ssd的成功运行

ubuntu18.04配置caffe并实现ssd的成功运行配置caffe新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入...

2019-09-29 15:14:42 878

原创 caffe 修改后的Makefile.config

## Refer to http://caffe.berkeleyvision.org/installation.html# Contributions simplifying and improving our build system are welcome!# cuDNN acceleration switch (uncomment to build with cuDNN).USE_...

2019-09-29 14:25:22 367 3

原创 caffe 修改后的Makefile

PROJECT := caffeCONFIG_FILE := Makefile.config# Explicitly check for the config file, otherwise make -k will proceed anyway.ifeq ($(wildcard $(CONFIG_FILE)),)$(error $(CONFIG_FILE) not found. See...

2019-09-29 14:23:56 317

原创 如果没有告诉输入行数和每行输入个数该怎么处理(C++)

while(1) { string s; getline(cin, s); vector<int> v; int inter; istringstream is(s); //将s放入is流中 if(s.size() == 0) //如果读入的数据个数是0个,就说明输入结束了 ...

2019-09-18 21:23:30 753

原创 根据map的key排序打印和value排序打印

#include <bits/stdc++.h>using namespace std;bool cmp(const pair<int,int> &p1,const pair<int,int> &p2)//要用常数,不然编译错误{ return p1.second<p2.second;}int main(void){ ...

2019-09-08 14:42:08 452

Brich算法实现 C/C++

研究生时做的作业,保证能在VC6.0和大部分编译器上运行。输入格式: ./Birch -r data_set.txt –n 100 –a 5 -d 10 -r后面是文件名、-a是维度、-d是阈值的大小,这些都可以改变

2017-12-12

空空如也

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

TA关注的人

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