自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tigerlib的博客

尝学习的苦,品生活的甜

  • 博客(147)
  • 资源 (2)
  • 收藏
  • 关注

原创 C语言atan2和tan

【代码】C语言atan2和tan。

2023-05-11 16:15:49 276 1

原创 链表(C语言)

【代码】链表(C语言)

2022-10-26 17:56:35 473

原创 python 递归复制源文件夹到目标文件夹,过滤文件大小和文件格式

# coding=utf-8import osimport sysimport shutilimport tqdmimg_formats = ['.png', '.jpg', '.jpeg', '.webp', '.gif', '.bmp', '.mpg']def copy_dir(src_root, target_root, max_file_size=1024, exclude_file_format=img_formats): """ 递归复制源文件夹到目标文件夹,过

2022-03-15 15:05:38 1558

原创 ndarray按行/列求非零元素的均值

def non_zero_mean(np_arr, axis=0): """ndarray按行/列求非零元素的均值。 axis=0按列 axis=1按行 """ exist = (np_arr != 0) num = np_arr.sum(axis=axis) den = exist.sum(axis=axis) return num/den

2022-03-02 18:39:47 857

原创 倒序按行读取大文件,速度快效率高(相比readlines()内存占用少)

def reverse_readline(filename, buf_size=1024*16): """ A generator that returns the lines of a file in reverse order 倒序按行读取大文件,速度快效率高(相比readlines()内存占用少) """ with open(filename, 'rb') as fh: # 'rb'二进制方式读取文件,防止字符有不同的编码格...

2022-01-20 16:55:49 894

原创 python 多张图片拼接成一张

# coding=utf-8from PIL import Image, ImageDraw, ImageFontimport cv2import numpy as npdef jigsaw(imgs, direction="horizontal"): imgs = [Image.fromarray(img) for img in imgs] w, h = imgs[0].size if direction == "horizontal": result

2022-01-10 11:26:46 7026

原创 labelme标注工具json格式label转化为label id映射图

import osimport os.path as ospimport ioimport mathimport base64import jsonimport uuidimport numpy as npimport imgvizimport PIL.Imagedef img_data_to_pil(img_data): f = io.BytesIO() f.write(img_data) img_pil = PIL.Image.open(f) r

2022-01-05 17:55:52 2372

原创 C# XML文件创建、追加、读取与修改

文章目录1 创建XML2 追加XML3 读取与修改XML1 创建XMLusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xml;namespace 创建XML{ class Program { static void Main(string[] args) { XmlDocumen

2021-05-17 14:34:14 1427

原创 VS2013编写C/C++程序,一步启动调试

编写C/C++程序完成后,点击“本机Windows调试器”,先生成,再调试选择:生成 >>> 配置管理器

2021-03-25 17:35:31 276

原创 运算符优先级和结合性一览表

运算符优先级和结合性一览表优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右 ()圆括号(表达式)函数名(形参表) .成员选择(对象)对象.成员名 ->成员选择(指针)对象指针->成员名 2-负号运算符-表达式右到左单目运算符(类型)强制类型转换(数据类

2021-03-25 16:28:19 326

转载 经典的图像匹配算法----SIFT

一. SIFT简介1.1 算法提出的背景:成像匹配的核心问题是将同一目标在不同时间、不同分辨率、不同光照、不同位姿情况下所成的像相对应。传统的匹配算法往往是直接提取角点或边缘,对环境的适应能力较差,急需提出一种鲁棒性强、能够适应不同光照、不同位姿等情况下能够有效识别目标的方法。1999年British Columbia大学大卫.劳伊( David G.Lowe)教授总结了现有的基于不变量技术的特征检测方法,并正式提出了一种基于尺度空间的、对图像缩放、旋转甚至仿射变换保持不变性的图像局部特征描述算子-S.

2021-03-23 14:11:33 3269

原创 Python 时间字符串(精确到微秒)

import timeimport datetimeprint time.localtime(time.time())print time.strftime("%Y-%m-%d %H:%M:%S")print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time()))print datetime.datetime.now()print datetime.datetime.now().strftime('%Y-%m-%d %H

2020-12-31 14:53:06 4273

原创 Win10 MySQL 数据库 取消ONLY_FULL_GROUP_BY设置

MySQL 数据库 版本升级之后报错:Expression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'xxx.xxx.xxx' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by1、查询sql_mode

2020-11-20 10:28:32 3194 2

原创 C# dataGridView控件,设置自动/手动列宽、文本居中、禁止列排序

for (int i = 0; i < dataGridView.Columns.Count; i++){ dataGridView.Columns[i].SortMode = DataGridViewColumnSortMode.NotSortable; //禁止列排序 dataGridView.Columns[i].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;

2020-10-26 09:42:34 1868

转载 Visual Studio 创建C#项目,.sln和.suo文件说明

Visual Studio.NET采用两种文件类型(.sln和.suo)来存储特定于解决方案的设置,它们总称为 解决方案文件 。为解决方案资源管理器提供显示管理文件的图形接口所需的信息。从而在每次继续开发任务时,不会因开发环境而分散精力。*.sln (Visual Studio.Solution) —— 通过为环境提供对项目、项目项和解决方案项在磁盘上位置的引用,可将它们组织到解决方案中。比如是生成Debug模式,还是Release模式,是通用CPU还是专用的等.ps:就是打开文件的索引,正确引导你

2020-10-09 10:05:17 1694

原创 Python 多个网卡情况下,指定某特定网卡信息发送HTTP请求

指定某特定网卡信息发送HTTP请求,实际这里就是指定该特定网卡的IP地址import requestsfrom requests_toolbelt.adapters.source import SourceAddressAdapters = requests.Session()# 指定特定网卡的IP地址'192.168.121.1',使用该网卡发送POST请求s.mount('http://', SourceAddressAdapter('192.168.121.1'))s.mount('ht.

2020-09-10 14:16:03 4022

原创 pgAdmin4启动设置,使用默认浏览器打开pgAdmin4(Chrome浏览器)

文章目录1、首先查看Chrome浏览器安装路径2、启动pgAdmin4,选择Configure...3、将浏览器启动文件地址填入Browser Command, 最后点击OK3、重启pgAdmin4,搞定。1、首先查看Chrome浏览器安装路径Chrome浏览器地址栏输入:chrome://version/,查看2、启动pgAdmin4,选择Configure…3、将浏览器启动文件地址填入Browser Command, 最后点击OK“C:\Users\GSKHD92\AppData\Loca

2020-09-09 17:13:24 7330

原创 Python 使用PyMySQL数据库交互工具,查询MySQL数据表的所有字段(表头)

conn = pymysql.connect(host='127.0.0.1', port=3306, user='user1', password='123456', database='db1',charset='utf8')cursor = conn.cursor()sql = "SELECT * FROM students;"cursor.execute(sql)col = cursor.descriptionfields = []for i in range(len(col)):

2020-09-09 15:32:23 1352

原创 Django1.11.11配置多数据库

文章目录1、安装PyMySQL2、修改项目(Project01)同名目录下的 __init__.py 文件3、修改 settings.py 文件4、数据库路由5、编写 models.py 文件6、同步数据库1、安装PyMySQLpip install PyMySQL2、修改项目(Project01)同名目录下的 init.py 文件import pymysqlpymysql.install_as_MySQLdb()3、修改 settings.py 文件DATABASES = {

2020-09-08 15:21:58 208

原创 Win10 64bit MySQL安装,初始密码修改,创建用户和数据库等......

1、下载MySQL点击下载地址2、下载完成后,解压(我解压的路径:C:\mysql-8.0.21-winx64),在此文件夹下创建my.ini文件并把以下内容粘贴进去保存[mysql]# 设置mysql客户端默认字符集default-character-set=utf8[mysqld]#设置3306端口port = 3306# 设置mysql的安装目录basedir=C:\mysql-8.0.21-winx64# 设置mysql数据库的数据的存放目录datadir=C:\

2020-09-04 14:15:33 446

原创 C# 类的继承简单理解

继承的概念我们可能会在一些类中,写一些重复的成员(字段,属性,方法),我们可以将这些重复的成员,单独的封装到一个类中,作为这些类的父类。Person ----------------------------------- 父类&基类Student、Teacher、Driver --------- 子类&派生类object是所有类的基类。子类从父类那里继承过来了什么?首先,子类继承了父类的属性和方法,但是子类并没有继承父类的私有字段。子类有没有继承父类的构造函数?子类并没有继.

2020-09-02 09:26:40 882

原创 C#字符串常用操作和字符串的不可变性

方法作用int len = str.Length;获取字符串中字符个数str = str.ToUpper();将字符串中所有字符转换成大写str = str.ToLower();将字符串中所有字符转换成小写bool b = str1.Equals(str2, StringComparison.OrdinalIgnoreCase);比较两个字符串是否相同(此处忽略大小写)1)char[] chs = { ’ ', ‘_’, ‘+’, ‘=’, ‘,’ };s...

2020-08-25 15:51:50 192

原创 C# 类的基本构造

类把具有相同属性和相同方法的对象进行进一步的封装,抽象出来 类这个概念。类就是个模子,确定了对象应该具有的属性和方法。对象是根据类创建出来的。类就是一个盖大楼的图纸 对象 就是盖出来的大楼。语法:[public] class 类名{ 字段 Field; 属性 Property; 方法 Method;}属性属性的作用: 保护字段、对字段的赋值和取值进行限定。属性的本质: 就是两个方法,一个叫get(),一个叫set()。既有get()也有set()我们诚之为可读可写属性。

2020-08-24 16:07:00 809

原创 C# 函数的递归

递归:方法自己调用自己。在TellStory()内部定义i和把i作为参数传进去,都会变成死循环public static int i = 0; // 在TellStory()内部定义i和把i作为参数传进去,都会变成死循环static void Main(string[] args){ TellStory(); Console.ReadKey();}public static void TellStory(){ Console.WriteLine("从前有座山");

2020-08-18 17:05:51 760

原创 C# 函数的重载简明

概念: 方法的重载指的就是方法的 名称相同 ,但是 参数不同 。参数不同,分为两种情况1)、如果 参数的个数 相同,那么 参数的类型 就不能相同。2)、如果 参数的类型 相同,那么 参数的个数 就不能相同。方法的重载 与 返回值 的 类型 和 有无,没有关系 !!!!下面四个函数构成重载:public static void Sum(int n1, int n2){ Console.WriteLine(n1 + n2);}public static double Sum(dou

2020-08-18 16:37:25 676

原创 C# 函数 参数与返回值 out、ref、params

若我们在Main()函数中,调用Test()函数,我们管Main()函数叫 调用者,管Test()函数叫 被调用者。如果 被调用者 想要得到 调用者 的值:传递参数。定义全局变量,使用静态字段来模拟全局变量。public static int num = 2;如果 调用者 想要得到 被调用者 的值:返回值文章目录1、out参数2、ref参数3、params可变参数1、out参数如果你在一个方法中,返回多个相同类型的值的时候,可以考虑返回一个数组。但是,如果返回多个不同..

2020-08-18 15:53:18 1701 2

原创 C# do-while循环简单使用

语法:执行过程:程序首先会执行do中的循环体,执行完成后,去判断do-while循环的循环条件,如果成立,则继续执行do中的循环体,如果不成立,则跳出do-while循环。do{ 循环体;}while(循环条件);特点:先循环,再判断,最少执行一遍循环体。static void Main(string[] args){ string answer = ""; do { Console.WriteLine("老板,可以下班了吗?y/n"); ..

2020-08-18 10:29:08 2189

原创 C# 开启一个进程,打开指定的文件(用计算机默认的程序打开)

static void Main(string[] args){ //使用进程打开指定的文件(用计算机默认的程序打开) Process p = new Process(); p.StartInfo = new ProcessStartInfo(@"D:\1.avi"); // test.txt、、 p.Start();}

2020-08-18 09:09:08 1741 1

原创 C# 使用GDI绘制验证码

源码如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace GDIDrawCaptcha{ pub.

2020-08-11 17:18:44 174

原创 Python3 年月日时分秒时间格式 与 Unix时间戳(1970.1.1至今的秒数) 互相转换

年月日时分秒 时间格式 转换为 Unix时间戳格式(1970.1.1至今的秒数)import timeimport datetimedateTime=datetime.datetime.strptime("2022-06-25 00:37:02","%Y-%m-%d %H:%M:%S")secondsFrom1970=time.mktime(dateTime.timetuple())print(secondsFrom1970)将Unix时间戳 转换为 年月日时分秒 类型时间import t.

2020-08-04 11:03:32 1672

转载 C# DateTime类型日期 加减1天、加减1月 等方法

//今天 DateTime.Now.Date.ToShortDateString(); //昨天,就是今天的日期减一 DateTime.Now.AddDays(-1).ToShortDateString(); //明天,同理,加一 DateTime.Now.AddDays(1).ToShortDateString(); //本周(要知道本周的第一天就得先知道今天是星期几,从而得知本周的第一天就是几天前的那一天,要注意的是这里的每一周是从周日始至周六止 Date

2020-07-26 15:13:12 3986

原创 C# ZedGraph Control 控件画 饼图、柱状图、折线图(超级精美,史无前例)

折线图关键代码:private void DrawCurve(){ #region 1、准备数据 #endregion #region 2、图表样式 ZedGraphControl zgc = new ZedGraphControl(); GraphPane myPane = zgc.GraphPane; zgc.ContextMenuBuilder += MyContextMenuBuilder; // 手动修改ZedGraphControl控件.

2020-07-17 23:27:23 3332

转载 C#用DataTable实现类似 Group by 分组查询 数据统计

C#用DataTable实现Group by数据统计

2020-07-17 16:38:51 1564

原创 C# DataTable.Select() 筛选出 满足 “某一列值不等于特定值” 的所有行

直接上代码:// value 升序, <>表示不等于DataRow[] rows1 = dt.Select("value > 2 and value < 10 and value <> 5", "value asc");

2020-07-17 16:23:36 4184

原创 C# TrackBar控件滑动时出现虚线框

TrackBar控件,有时会遇到鼠标点击控件区域,出现虚线框,很难看,下边提供了一个方法,但是不能从根本上解决,只是转移了矛盾:添加Enter鼠标进入事件,转移焦点到其他控件,转移焦点以后,键盘的左右箭头按键不能操作trackBar滑动了;当然这个控件可以根据实际需要选择的更有意义一些,我在项目中是做了trackBar控件与listView控件联动的效果,焦点转移到listView,键盘的上下箭头是可以使用的。private void trackBar_Enter(object sender, E

2020-07-17 16:01:17 651

原创 将csv文件读入DataTable数据表

using System;using System.Threading;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Linq;using System.Text;using System.Text.RegularExpressions;using System.IO;namespace DataTable_Test{ class Progr

2020-07-06 15:06:36 494

原创 C#中转义字符\r, \n, \r\n, \t, \b, @作用

\r 表示回车,从最老的打字机引入的概念,表示回到本行的开始位置;string str = "今天天气好晴朗\r处处好风光";Console.WriteLine(str);Console.ReadKey();打印结果:处处好风光晴朗\n 换行,同样来自打印技术的术语,表示跳转到下一行。string str = "今天天气好晴朗\n处处好风光";Console.WriteLine(str);Console.ReadKey();打印结果:今天天气好晴朗处处好风光\r\n 连用,

2020-06-11 17:09:30 20596

原创 c# DateTime时间格式 与 Unix时间戳格式(1970.1.1至今的秒数) 互相转换

MessageBox.Show(dateTimePicker1.Text);MessageBox.Show(dateTimePicker1.Value.ToString());将c# DateTime时间格式转换为Unix时间戳格式(1970.1.1至今的秒数)double intResult = 0;DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));intRes

2020-05-28 13:57:44 1839

原创 Ubuntu更改系统默认的Python版本

参考1 查看Python的指向wu@acer:~$ ls -l /usr/bin/ | grep python-rwxr-xr-x 1 root root 1056 4月 16 2018 dh_python2lrwxrwxrwx 1 root root 23 11月 12 22:31 pdb2.7 -> ../lib/python2.7/pdb...

2020-05-11 15:21:16 514

原创 C# WinForm CheckedListBox控件用法总结

初次接触CheckedListBox控件一般认为:foreach (object obj in checkedListBox1.SelectedItems)即可遍历选中的值。其实这里遍历的只是高亮的值并不是打勾的值。遍历打勾的值要用下面的代码:for (int i = 0; i < checkedListBox1.Items.Count; i++){ if (checkedListBox1.GetItemChecked(i)) { MessageBox.Show(.

2020-05-11 15:20:12 4176

ZedGraph测试.zip

ZedGraph控件控件画 饼图、柱状图、折线图,样式设计精美,只修稍作修改就可应用到你的项目中,原生ZedGraph控件能打磨得这么精美,实属不易。欢迎批评指正

2020-07-17

MessageBoxTip.cs

让MessageBox.Show弹窗显示在父窗体中间(重写父类的方法),即插即用,方便快捷。cs文件内有使用方法注释,可以参考,祝您好运。。。。。

2020-05-09

空空如也

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

TA关注的人

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