自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(25)
  • 资源 (20)
  • 问答 (1)
  • 收藏
  • 关注

原创 python 使用Pip管理本地库

本地通过setup.py方式建立一个本地的python库项目,然后通过pip install .的方式进行本地安装,便于多个项目中快速引用。首先建立一个库项目,项目文件目录如下:qlibs│ setup.py│└─qlibs formula.py __init__.py其中:setup.py是安装配置文件 qlibs是库源代码目录(注意:名字必须与setup.py中name一样,否则findpackages()找不到)setup.py的语法可以网

2022-05-14 11:24:04 1073 1

原创 Python pandas Dataframe常用操作封装

1、查询、设置指定某元素值2、末尾增加一行或多行3、满足列值条件的指定位置插入一行或多行4、删除满足列值条件的一行或多行import pandas as pd'''DataFrame常用计算'''def df_get_item_value(df, col1, col1_value, col2) -> any: '''满足col1列值条件时,返回col2列第一个找到的元素值''' return df.loc[df[col1] == col1_value, [

2022-05-13 10:10:41 768

转载 Python丢弃不用的返回值

python的函数支持返回多个值。返回多个值时,默认以tuple的方式返回。1、因为返回值是元组,所以可以通过索引取得某个或某几个返回值a = f()[0]b = f()[1]2、使用双下划线__或更多下划线___________# 丢弃第二个返回值a, __ = f()注:为什么不使用下划线_,因为下划线_在python中有多种意义,所以使用下划线不安全。...

2022-05-03 22:09:54 955

原创 Python3 浅拷贝copy()和深拷贝deepcopy()方法

List列表、Dict字典等对象经常进行常量赋值时,不能直接使用等于号=进行赋值(浅拷贝,只赋值了内存地址,相当于是引用),需要使用copy()方法进行对象复制DICT_INIT = {'A': 0, 'B': 0}dictA = DICT_INIT.copy()...

2022-05-02 13:10:46 981

原创 Python判断输入字符串是小数的方法

数字用isdigit()方法小数用eval()和isinstance()结合print('100'.isdigit())print(isinstance(eval('1.1',float))

2022-04-15 13:36:49 3037 1

转载 Dataframe添加行、列的方法

在Pandas的DataFrame中添加一行或者一列,添加行有df.loc[]以及df.append()这两种方法,添加列有df[]和df.insert()两种方法, 下面对这几种方法的使用进行简单介绍。一、添加行添加一行,采用loc[]方法# 构造一个空的dataframeimport pandas as pddf = pd.DataFrame(columns=['name','number'])# 采用.loc的方法进行df.loc[0]=['cat', 3] # 其中loc[

2022-01-24 16:57:34 46037

原创 Pandas Dataframe按某列的条件获取指定元素值

def df_value(df, symbol, col) -> any: '''返回dataframe中指定[symbol,col]行的元素值''' return df.loc[df['symbol'] == symbol].at[0, col]

2022-01-21 10:22:28 1546

原创 Windows下遍历子文件夹进行Git更新的bat脚本

for /d %%i in (*) do ( cd %%i && git pull && cd..)pause

2022-01-21 10:19:03 400

原创 Python Watchdog 触发多个事件

文件创建的动作其实会触发多种事件,包括FileCreatedEvent以及FileModifiedEvent事件,触发FileEventHander中重写的on_created函数以及on_modified函数,这些事需要注意的,原因在于f=open()这样的文件操作会触发FileCreatedEvent事件,执行on_created函数,文件操作f.flush()和f.close()操作会触发FileModifiedEvent事件,执行on_modified函数。在windows系统下,watchdo

2022-01-15 13:50:14 1116

原创 DataFrame删除指定条件的行

import pandas as pddf1 = pd.DataFrame(data=[{'symbol': '000001', 'close': 1.0}, {'symbol': '000002', 'close': 2.0}, {'symbol': '000001', 'close': 3.0}])symbols = ['000001', '000002']print(df1.index[df1['symbol'] == '000001'])print(df1.index[(df1['sym.

2022-01-12 22:52:27 13836

原创 华为快应用开发三种场景:本地单机、体验版、正式版

1、使用体验版调试快应用RPK快应用IDE右上角发布,选择体验版,然后在手机应用市场搜索“快应用研发助手”,打开后调试“体验版”,也可以发给其他人,通过“快应用研发助手”,输入6位体验码进行体验。2、单机使用快应用RPK安装快应用加载器:下载-快应用IDE (huawei.com)快应用IDE内菜单构建RPK包(或者Ctrl+F8),完成后在项目dist/子目录下,通过各种方式把rpk包发送到手机,然后通过快应用加载器进行本地加载即可。3、发布快应用1)本地发布快应用,需要创建或

2021-12-16 14:22:12 538

原创 Windows Server IIS通过URL重写实现转发REST API到内部API Server

1、安装URL Rewrite、ARR 插件Web Platform Installer : The Official Microsoft IIS SiteURL Rewrite : The Official Microsoft IIS SiteApplication Request Routing : The Official Microsoft IIS Site2、配置URL重写规则添加空白规则:填写匹配条件,这里配置的Rule必须是所有匹配,即^.*(我也不知道为什么)

2021-12-12 18:29:47 1288

原创 Windows server 2016 配置IIS支持Flask框架

1、pip install flask, wfastcgi启用:到Scripts/目录下输入命令wfastcgi-enable运行成功后会提示一下文字:"c:\program files\anaconda3\python.exe"|"c:\program files\anaconda3\lib\site-packages\wfastcgi.py"这段文字非常重要,后续在配置程序映射的时候会用到。2、IIS安装CGI3、安装URL Rewrite 2.0Web Platform Ins

2021-12-05 23:50:28 1350

原创 pandas dataframe行条件筛选过滤

满足多个判断条件的行。使用 & 对判断语句进行合并。import pandas as pdimport numpy as npdf = pd.DataFrame(np.arange(16).reshape(4, 4), index=pd.date_range('20200101', periods=4), columns=list('ABCD'))print(df)df_slice = df.loc[(df['A'] == 4) & (df['C'] == 6)]pri

2021-11-22 11:30:05 3198

原创 通达信DLL函数开发

官方样例:https://www.tdx.com.cn/products/userdoc/%E9%80%9A%E8%BE%BE%E4%BF%A1DLL%E5%87%BD%E6%95%B0%E7%BC%96%E7%A8%8B%E8%A7%84%E8%8C%83.rarVisual Studio Community,安装Desktop C++打开官方dsp文件,如果生成报错:/Gm,打开项目属性,关闭/Gm。注意:一定要用Win32。将生成的dll文件拷贝到主程序的\T0002\dlls目录

2021-11-22 10:17:07 9926

原创 request卡死处理

添加timeout 添加try-except异常处理import requestsimport tracebacktry: res = requests.post(url=URL, json={"message": msg}, timeout=2) if res.status_code != 200: print(res.text)except: traceback.print_exc()

2021-11-10 12:21:35 442

原创 Python打印异常调用栈

import tracebacktry: # 风险代码except: traceback.print_exc() # 处理代码

2021-11-10 12:17:51 1210

原创 DataFrame指定列的数据类型

创建时,通过dtype指定,但是这种方法只适合整个DataFrame内所有数值都是一个类型的情况 创建后,可以通过astype来修改指定列的类型 从csv读取时,通过dtype可以指定多列的不同类型import pandas as pddf = pd.DataFrame(columns=['col1','col2'],dtype=int)df.astype('float')pd.read_csv(pathfile, index_col=0, dtype={'col1':str}).

2021-11-10 12:11:17 8439

原创 Pandas DataFrame读取csv文件Unnamed问题

使用DataFrame.read_csv()时,必须设置index-col=0,否则会自动在最前面加一列indexpd.read_csv(pathfile, index_col=0)

2021-11-10 11:54:30 1588

转载 Pandas DataFrame迭代器

iterrows():将DataFrame迭代为(insex, Series)对。 itertuples():将DataFrame迭代为元祖。 iteritems():将DataFrame迭代为(列名, Series)对import pandas as pd inp = [{'c1':10, 'c2':100}, {'c1':11, 'c2':110}, {'c1':12, 'c2':123}]df = pd.DataFrame(inp)# iterrowsfor date, ro...

2021-11-09 18:53:41 1307

转载 Python Pandas CSV文件读写操作

注意:在读取csv文件的时候,默认会自动添加新的一列,Unnamed。设置index_col=0即可。import pandas as pdimport os# read_csvif os.path.exists(data_pathfile): rd= pd.read_csv(data_pathfile,index_col=0)# to_csvos.path.exists(path) or os.makedirs(path)rd.to_csv(pathfile).

2021-11-09 18:46:03 171

转载 Python Tkinter销毁窗口事件

import tkinter as tkfrom tkinter import messageboxroot = tk.Tk()def on_closing(): if messagebox.askokcancel("Quit", "Do you want to quit?"): root.destroy()root.protocol("WM_DELETE_WINDOW", on_closing)root.mainloop()

2021-11-09 16:44:47 3720

转载 Python Tkinter ListBox添加滚动条Scrollbar

from tkinter import *root = Tk()lb = Listbox(root,exportselection=False,height=3)list_item=['1', '2', '3', '4这里很长我需要拽过来~~~~~~~~~~~~~~~','5','6','7']for i in list_item: lb.insert(END,i)scr1 = Scrollbar(root)lb.configure(yscrollcommand = scr1.se.

2021-11-09 12:03:17 1722

原创 Python Tkinter ListBox:通过Listvariable设置ListBox数值

from tkinter import *root = Tk()mylist = ['one', 'two', 'three']var = StringVar(value=mylist)box = Listbox(master=root, listvariable=var)box.pack(fill=BOTH, expand=True)mylist.append('four')mylist.remove('two')mylist.insert(3, mylist.pop(1)).

2021-11-09 10:51:06 1506

原创 Python Tkinter Grid布局理解

Grid布局需要配合使用控件的width/height , row/column, sticky这三个属性才能处理好。width/height:修改控件大小,不配置的话是使用控件默认的大小。有些很奇葩的情况,比如ListBox默认很窄,而ScrolledText默认很宽。注意width/height单位是文本宽度,即一个英文字符显示的宽度,而不是像素值(padx/y,geometry都是像素值)row/column:控件放置的行列,Grid名字来源就是这个属性。这是个相对的概念,并没有绝对的大小。每个

2021-11-09 07:27:41 1406 1

黑客与画家(hackers and painters)

本书是硅谷创业之父Paul Graham 的文集,主要介绍黑客即优秀程序员的爱好和动机,讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等所有对计算机时代感兴趣的人的一些话题。书中的内容不但有助于了解计算机编程的本质、互联网行业的规则,还会帮助读者了解我们这个时代,迫使读者独立思考。 本书适合所有程序员和互联网创业者,也适合一切对计算机行业感兴趣的读者。 目录 · · · · · · 1 为什么书呆子不受欢迎 1 他们的心思在别的地方。 2 黑客与画家 18 黑客也是创造者,与画家、建筑师、作家一样。 3 不能说的话 34 如果你的想法是社会无法容忍的,你怎么办? 4 良好的坏习惯 52 与其他美国人一样,黑客的成功秘诀就是打破常规。 5 另一条路 59 互联网软件是微机诞生后的最大机会。 6 如何创造财富 90 致富的最好方法就是为社会创造财富。创造财富的最好方法就是创业。 7 关注贫富分化 111 “收入分配不平等”的危害,会不会没有我们想的那样严重? 8 防止垃圾邮件的一种方法 124 不久前,许多专家还认为无法有效地过滤垃圾邮件。本文改变了他们的想法。 9 设计者的品味 133 如何做出优秀的东西? 10 编程语言解析 148 什么是编程语言?为什么它们现在很热门? 11 一百年后的编程语言 156 一百年后,人类怎样编程?为什么不从现在开始就这样编程呢? 12 拒绝平庸 169 别忘了你的对手与你一样,能用任何想用的语言编写互联网软件。 13 书呆子的复仇 180 在高科技行业,只有失败者采用“业界最佳实践”。 14 梦寐以求的编程语言 198 一种好的编程语言,是让黑客可以随心所欲使用的语言。 15 设计与研究 213 研究必须是“新”的,而设计必须是“好”的。 志谢 219 术语解释 221 图片授权说明 236

2013-03-22

Wu Manber算法代码

C++下多模匹配算法:Wu Manber的实现 For those who are interested, here is a Visual Studio implmentation of Wu Manber's algorithm. It should be readily transportable to other platforms with little or no change, other the the _tmain construct. The implementation relies on C++ Standard Template Library for various containers. A table driven character comparison approach is used to make it easy to choose between case sensitive and case insensitive matches. WuManber.h: header file WuManber.cpp: class implementation Main.cpp: test enclosure The next step would be turn it into a template to make it useful on various types of alphabets. It all needs to be redone a bit in order to accept a 'functor' or a 'delegate' so that when a match is found, an appropriate routine can be invoked.

2009-12-21

RegexBuddy-v3.1.0

RegexBuddy v3.1.0 注册版 RegexBuddy是学习、使用正则表达式的必备工具,其包含PCRE、Java、.Net、Perl、Ruby、Tcl、Javascript等主流正则表达式引擎,提供了正则表达式分析、测试、调试功能,并包含大量实用例子和不同语言、引擎下的代码示例。此外,RegexBuddy还自带了一个Grep工具,可以方便地使用正则表达式搜索目录中的文件。

2009-12-21

EDraw_Flowchart_Software_v3.0_1 亿图流程图绘制软件

EDraw_Flowchart_Software_v3.0_1,绘制流程图的软件,注册版

2009-12-21

Ruby入门(learn to program)

Ruby入门资料,整理自ruby document,原书为learn to program(2nd)

2009-11-07

H.264编解码器——jm最新版14.2

H.264的三大编解码器之一JM最新版,为VC下C工程源码,可直接使用或二次开发。 文件中包含说明文档

2008-11-13

数字图像处理系统VC源码

VC6下数字图像处理系统-DIP_system,包含以下功能函数: ============================================================================== 第3章 ============================================================================== 相关函数: PaintDIB() - 绘制DIB对象 CreateDIBPalette() - 创建DIB对象调色板 FindDIBBits() - 返回DIB图像象素起始位置 DIBWidth() - 返回DIB宽度 DIBHeight() - 返回DIB高度 PaletteSize() - 返回DIB调色板大小 DIBNumColors() - 计算DIB调色板颜色数目 CopyHandle() - 拷贝内存块 DIBBitCount() - 该函数返回DIBBitCount SaveDIB() - 将DIB保存到指定文件中 ReadDIBFile() - 重指定文件中读取DIB对象 SetRgnColor() - 用指定的颜色填充指定的区域 SetCircleColor() - 用指定的颜色填充指定的圆形区域 以上函数为类CDIB的成员函数,CDIB类存在于DIB.h、DIB.cpp文件中。 ============================================================================== 第4章 ============================================================================== 4.1 图象的灰度变换 相关函数: ToGray() - 彩色位图转化为灰度位图 PointInvert() - 对图像进行反色变换 GetIntensity() - 对图像各颜色分量的灰度分布(数目、密度)进行统计 PointEqua() - 对图像进行灰度分布均衡化处理 GrayStretch() - 对图像进行灰度折线变换 WindowTrans() - 对图像进行灰度窗口变换 PointDZ() - 对图像进行灰度带阻变换 PointDT() - 对图像进行灰度带通变换 PointSML() - 对图像进行单映射规则直方图规定化变换 PointGML() - 对图像进行组映射规则直方图规定化变换 DynamicCompress()- 对图像进行灰度动态范围压缩处理 CutWave() - 对图像进行灰度削波处理 以上函数为类CGrayProc的成员函数,CGrayProc类存在于GrayProc.h、GrayProc.cpp文件中。 4.2 图象的正交变换 相关函数: FFT() - 一维快速付立叶变换 IFFT() - 一维快速付立叶逆变换 Fourier() - 二维快速傅立叶变换 IFourier() - 二维快速傅立叶逆变换 DCT() - 一维快速离散余弦变换 IDCT() - 一维快速离散余弦逆变换 FreqDCT() - 二维快速离散余弦变换 IFreqDCT() - 二维快速离散余弦逆变换 WALSH() - 一维沃尔什-哈达玛变换 IWALSH() - 一维沃尔什-哈达玛逆变换 FreqWALSH() - 二维沃尔什-哈达玛变换 IFreqWALSH()- 二维沃尔什-哈达玛逆变换 DIBFourier()- 图像的付立叶变换 DIBDCT() - 图像的离散余弦变换 DIBWalsh() - 图像的沃尔什-哈达玛变换 以上函数为类CFreqCalculate的成员函数,CFreqCalculate类存在于FreqCalculate.h、FreqCalculate.cpp文件中。 ============================================================================== 第5章 ============================================================================== 5.1 图像的空域滤波 相关函数: MakeEmboss() -

2008-11-13

计算机数学-Math for CS(MIT课程资料)

MIT OpenCourse 2005 Spring Mathematics for Computer Science 麻省理工2005春季课程《计算机数学及应用》的课程资料,包括课件、习题及答案、测试题目及答案等,使用教材为《离散数学与其应用》(Discrete Mathematics and its Applications)第四版,国内有中英文版,可以配套自学。课程内容包括数论、图论、离散数学、逻辑代数等,计算机科学必修内容。

2008-11-07

算法导论MIT课程内容

MIT OpenCourse 2005 Fall Introduction to Algorithms 麻省理工的开放课程:经典的《算法导论》 2005秋季课程资料,包含课件、作业题目及答案、测试题目及答案等。可辅助国内引进的中文或英文《算法导论》教材自学。

2008-11-07

Nehe的OpenGL教程(中文版)

Nehe的OpenGL教程是经典的OpenGL入门资料,后经国内热心网友整理制作成chm文件共享。 [教程说明] 整个教程由nehe制作 课程内容由dancingwind(周炜)以及gamedev和csdn的志愿者翻译 最早的翻译应该是由CKER完成的(1~12章) 注:本教程经dancingwind授权发布于imyaker.com dancingwind获得Nehe授权

2008-10-31

华为C/C++类笔试/面试题

网上收集了一些零零散散的华为C/C++类的题目,有些还是挺有代表性的,所以整理了下做成一个pdf文件以供需要者参考。

2008-10-31

linux下LaTex配置完全指南

Linux下配置Latex的介绍,在Ubuntu下进行,其他Linux可参照进行配置

2008-10-30

Linux下汇编开发

Linux下汇编开发环境、汇编工具及实例说明,供入门者参考。

2008-10-30

Linux下C/C++开发入门及开发环境配置

个人总结的Linux下C/C++开发环境配置及GCC简单说明,供初学者参考

2008-10-30

Linux下中文字体配置及美化

Linux下中文字体的配置及美化,主要介绍在Ubuntu 8下的配置

2008-10-30

Linux下Squid配置指南

利用Squid配置Linux下代理服务器的说明文档,并结合一个示例说明

2008-10-30

The Joy of Patterns(程序设计模式)

Joy of Patterns: Using Patterns for Enterprise Development<br><br>设计模式在程序设计中占据重要的位置,但是直接开始学习patterns却不是那么简单。本书将设计模式作为系统设计的一种高级语言来看待,由浅入深详细介绍了如何基于设计模式来进行高效、健壮、可扩展的设计。<br><br>The Joy of Patterns reveals the essence of design patterns as an advanced language for describing system design. This book illustrates how to build more efficient, robust, and reusable designs with this powerful programming paradigm. <br><br>Design patterns have been used as integral techniques for creating better software, but getting started with design patterns has never been easy. Beginning with a description of the rationale behind design patterns, the discussion moves on to an overview of the basic pattern form, and then to a brief review of object-oriented concepts.<br>

2008-07-29

C++编码风格(C++ Coding Standards)

C++ Coding Standards: 101 Rules, Guidelines, and Best Practices <br>By Herb Sutter, Andrei Alexandrescu <br> <br>Publisher : Addison Wesley Professional <br>Pub Date : October 25, 2004 <br>ISBN : 0-321-11358-6 <br>Pages : 240 <br><br>介绍了C++ programming中的大量编码规则、注意问题及实例分析。有助于读者规范自己的编码风格,努力写出“诗一样”且高效健壮的代码

2008-07-29

Programming Windows中文版(Windows程式开发设计指南)

相关书籍:<br>Programming Windows Fifth Edition <br>International Programming for Microsoft® Windows® <br>Introductiing Microsoft .NET <br><br>书本主旨:<br>本书是地球上最有名、最受推崇、最多人使用的程式设计用书。<br> <br>内容简介:<br><br>「到Petzold的书中找找」仍然是解决Windows程式开发各种疑难杂症时的灵丹妙药。在第五版的《Windows程式开发设计指南》中,作者身违背受敬重的Windows Pioneer Award(Windows开路先锋奖)得主,依据最新版本Windows作业系统,以可靠的取材资料校定这一本经典之作一再一次深入探索了Win32程式设计介面的根本重心。 <br>

2008-07-29

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

TA关注的人

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