Python编程
Python作为最简洁的编程语言之一, 必将成为继C++, JAVA以来, 最伟大的编程语言, 由于python的中文资料更新较慢, 本专栏提供了一个学习Python的平台, 由于Python3比Python2拥有更加优雅风格, 所以代码部分由Python3写成.
CarolineSpike
Love magic for itself.
I ain't never backin' down (come and step in the plate).
For my city for my town (I'll do whatever it takes).
展开
-
PyTorch笔记 - ConvMixer - Patches Are All You Need
groups,解耦通道之间混合,降低计算,只混合部分通道,例如Depth-wiseConvolution,再接一个Point-wiseConvolution。2022.1.24,ICLR2022,PaperPatchesAreAllYouNeed,即。dilation,膨胀、空洞,扩大范围的点,跳过一些点,选择一些点,增加感受野,不增加计算量。,高斯错误线性单元,用于GPT-3,BERT。,卷积混合,在很多实验上,都取得很多效果。stride,窗口移动的步长,向左、向下。......原创 2022-07-19 15:56:17 · 445 阅读 · 0 评论 -
LeetCode - 滑动窗口极值、搜索树后序遍历、统计差值对、划分相等子集
LeetCode:239. 滑动窗口最大值搜索树后序遍历LeetCode:剑指 Offer 33. 二叉搜索树的后序遍历序列统计差值对LeetCode:532. 数组中的 k-diff 数对划分相等子集较难,Leetcode:698. 划分为k个相等的子集原创 2022-06-17 17:28:46 · 197 阅读 · 0 评论 -
LeetCode - 操作次数、不重复数字、对角线遍历、约瑟夫环
LeetCode:面试题 01.05. 一次编辑使用双指针,和cnt计数,相同则指针共同前进,不同则长字符指针前进。统计不重复数字357. 统计各位数字都不同的数字个数对角线遍历LeetCode:498. 对角线遍历,先从下到上,也可以先从下到上。约瑟夫环LeetCode:1823. 找出游戏的获胜者,经典约瑟夫环,模拟和递归.........原创 2022-06-17 17:23:13 · 568 阅读 · 0 评论 -
OpenCV - 从灰度图像切出Mask前景区域
从灰度图像,根据阈值,切出多个前景区域,过滤面积太小的图像。OpenCV的Python逻辑,:输入的灰度图像:输出图像:原创 2022-06-15 19:52:33 · 653 阅读 · 0 评论 -
PyCharm - 程序Run的输出异常 和 添加函数的默认注释
使用PyCharm的过程中,输出格式突然改变了,导致SciView输出异常,有时没有显示输出结果。输出位置,由修改为,导致输出异常。执行文件,输出:如果想修改为正常输出,则修改Run的Configuration的参数,即可:......原创 2022-06-15 19:10:49 · 2212 阅读 · 0 评论 -
LeetCode - 随机集合、最长的多类别子序列
参考:380. O(1) 时间插入、删除和获取随机元素随机字典:904. 水果成篮参考:904. 水果成篮输入一个列表nums,每个数值代表一个类别,和最多可选类别k,k表示子序列最多可选的类别数,默认选择2个类别。输出满足所选类别数小于等于k的最长子序列。子序列:......原创 2022-06-10 17:30:40 · 142 阅读 · 1 评论 -
OpenCV - 绘制多instance的Mask图像
目标:Mask中,不同值表示不同的实例(instance),在原图中,绘制不同的instance实例,每个实例用不同颜色表示,实例边界用白色表示。源码:原图:原创 2022-06-07 11:03:45 · 541 阅读 · 0 评论 -
Pandas处理CSV文件的常用技巧
Pandas处理CSV文件,分为以下几步:注意:Pandas的读取格式默认是UTF-8,在中文CSV中会报错:修改编码为 GB2312 ,即可,或者忽略encode转义错误,如下:df.info()显示df的基本信息,例如:统计列值出现的次数,如:输出:直接绘制value_counts()的柱形图,参考Pandas - Chart Visualization:柱形图:,筛选特定列值之后,重新赋值,只处理筛选值,也可以写入csv文件。注意:筛选的内外两个df需要相同,否则报错输出,数据量由原创 2022-05-31 21:17:34 · 2352 阅读 · 1 评论 -
LeetCode - 相同子树、替换后最长重复子串、多米诺骨牌
多米诺骨牌838. 推多米诺,注意多米诺骨牌是连续倒,直到停止。考察先入先出队列(deque),处理时序问题。时序数组和状态数组#!/usr/bin/env python# -- coding: utf-8 --"""Copyright (c) 2022. All rights reserved.Created by C. L. Wang on 2022/5/31"""from collections import dequeclass Solution: def原创 2022-05-31 12:46:46 · 179 阅读 · 0 评论 -
Python - 简单方便的读取CSV文件
本文提供一个简易读取CSV的函数,方便后续处理。使用pandas库,读取csv文件获取csv的列名遍历csv每一行,组成字典返回列名,和每一行的字典源码如下:def read_csv_file(data_file, num=-1): """ 读取CSV文件 """ import pandas df = pandas.read_csv(data_file) row_list = [] column_names = list(df.colu原创 2021-08-25 20:56:24 · 373 阅读 · 0 评论 -
Python - 计算复杂算式和分式
算式样式:分数 2/4+2/4=?分数+小数 4/8×7.2=?括号 (4/5-7/15)×15=?处理逻辑:替换括号和乘除号,区分等式依次替换分数为Fraction形式依次替换小数位Fraction形式调用eval + Fraction,输出最终分数结果:源码如下:#!/usr/bin/env python# -- coding: utf-8 --"""Copyright (c) 2021. All rights reserved.Created by C. L.原创 2021-08-13 16:40:07 · 1551 阅读 · 1 评论 -
Python - 判断字符串是英语句子(大小写字母、数字、符号)
A-Z是大写、a-z是小写、0-9是数字,其他的是标点符号,注意添加空格,还有单引号的转义,同时,也可以添加中文的标点符号“,。”等。源码如下:@staticmethoddef check_en_str(string): import re pattern = re.compile('^[A-Za-z0-9.,:;!?()_*"\' ]+$') if pattern.fullmatch(string): return True else:原创 2021-07-15 23:08:17 · 2076 阅读 · 0 评论 -
Python解析XML数据
XML数据类似于多个维度字典,XML中包括Elements和Attribute两种样式。Elements,元素:类似于meta和image等元素;Attribute,属性:类似于id、name、width、height等属性;数据:<?xml version="1.0" encoding="utf-8"?><annotations> <version>1.1</version> <meta> </meta>原创 2021-06-24 14:42:07 · 387 阅读 · 0 评论 -
Python 注意嵌套数组的拷贝和引用
Python的数组默认是引用状态,如果一个数组放到另一个数组中,则需要把第1个数组进行copy,否则会一改全改。拷贝数组的方式有两种,copy.copy(nums) 或 nums[:]。例如全排列的回溯法,如果直接res.append(nums),则会出错,元素全部相同;而使用copy模式,则可以正确输出全排列。import copyclass Solution: def permute(self, nums: List[int]) -> List[List[int]]:原创 2021-06-18 20:58:00 · 611 阅读 · 0 评论 -
base64编码图像作为参数post访问远程服务
将图像转换为base64的编码,编码格式为jpg,如下:def image_to_base64(image_np, ext='.jpg'): """ 转换为base64, ext是编码格式,'.jpg'和'.png'都支持 """ import cv2 import base64 # image = cv2.imencode('.png', image_np)[1] image = cv2.imencode(ext, image_np)[1]原创 2021-06-18 16:51:14 · 1005 阅读 · 0 评论 -
Python 读取HTML表格 pd.read_html()
数据部门提供的数据是xls格式的文件,但是执行读取xls文件的脚本报错。xlrd报错:xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'<html xm'读取xlrd的脚本data_lines = read_excel_file(self.file_path)def read_excel_file(file_path): """ 读取excel文件原创 2021-05-25 14:56:53 · 5496 阅读 · 0 评论 -
PyCharm 关闭 Test 功能
PyCharm自带的功能,检测Python文件中,以“test”开头的函数名,作为测试用例,导致在调试时,优先启动“test”函数,对于我们正常想调试的内容进行干扰。如果不想使用这个功能,需要关闭,在Preferences(快捷键Command+逗号)->Tools->Python Integrated Tools中,将默认Test Runner修改为Unittests即可。参考pycharm关闭pytest模式...原创 2020-12-26 15:49:04 · 6070 阅读 · 0 评论 -
Python - 下载URL至OpenCV图像
下载图像URL的时候,经常会遇到,下载之后再读取的情况,那么,直接下载图像到内存中,转换为OpenCV的Numpy格式,即可。读取response的内容,转换为字节矩阵,再使用OpenCV解码为图像,即可。源码如下:def download_url_img(url): """ 下载url图像 """ import cv2 import requests try: response = requests.get(url, timeout=3原创 2020-11-04 17:55:25 · 795 阅读 · 0 评论 -
Python - 安装sentencepiece异常
在安装transformers库时,sentencepiece无法安装,如下:pip3 install --user transformers解决问题参考:Pip install sentencepiece failure在安装sentencepiece,无法进行,如下:Building wheels for collected packages: sentencepiece Building wheel for sentencepiece (setup.py) ...长时间等待,异常如下原创 2020-10-28 17:06:03 · 19096 阅读 · 17 评论 -
Python - 安装Apex问题
安装命令pip3 install --user -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./参考 PyTorch 安装 APEX 疑难杂症解决方案:https://zhuanlan.zhihu.com/p/80386137问题:如果在执行第三行时出错 “Cuda extensions are being compiled with a version of Cuda that does n原创 2020-10-28 15:13:50 · 6232 阅读 · 0 评论 -
Mac上PyCharm运行多进程报错的解决方案
运行时报错may have been in progress in another thread when fork() was called. We cannot safely call it or ignore it in the fork() child process. Crashing instead. Set a breakpoint on objc_initializeAfterForkError to debug.解决方案添加环境变量:点击窗口上的Run->Edit Confi原创 2020-10-27 16:35:50 · 912 阅读 · 0 评论 -
Python - PubLayNet显示COCO类型数据集
COCO类型的数据集,主要是JSON格式一致,就可以使用COCO自带的函数,显示COCO的标注结果。参考文档标注数据来源PubLayNet:https://dax-cdn.cdn.appdomain.cloud/dax-publaynet/1.0.0/PubLayNet.html下载:验证数据:val.tar.gz标签:labels.tar.gz逻辑:def process(self): print('[Info] 处理数据开始!') # 1. 确定标注文件 d原创 2020-10-19 22:03:56 · 1434 阅读 · 0 评论 -
Matplotlib颜色对照表
在Matplotlib中。常见颜色对应的英文,如下:原创 2020-10-18 13:10:02 · 4130 阅读 · 0 评论 -
Python 图像批量重命名脚本
图像批量重命名脚本支持参数:输入文件夹,输出文件夹,图像前缀支持排序,按照有序排列,数字补0,保证linux环境顺序一致命令:python3 img_rename.py -i ../../datasets/ocr_graphs_3918/ -o ../../datasets/ocr_graphs_3918_format/ -p og源码:#!/usr/bin/env python# -- coding: utf-8 --"""Copyright (c) 2020. All right原创 2020-09-12 11:54:49 · 330 阅读 · 0 评论 -
Python OpenCV的常见图像操作
颜色替换,黑色替换为白色:masked[np.where((masked == [0, 0, 0]).all(axis=2))] = [255, 255, 255]原创 2020-09-09 17:36:38 · 241 阅读 · 0 评论 -
Python3 Hadoop 操作函数
获取Import文件位置,如foo:import fooos.path.dirname(foo.__file__)处理Hadoop的源码,依赖TensorFlow,如:#!/usr/bin/env python# -- coding: utf-8 --"""Copyright (c) 2020. All rights reserved.Created by C. L. Wang on 2020/9/9"""import osimport reimport timeimport原创 2020-09-09 11:34:37 · 412 阅读 · 0 评论 -
Matplotlib 支持中文显示
Matplotlib默认不支持中文显示,显示为方块乱码。第1步,下载SimHei.ttf文件,下载链接第2步,解压,复制SimHei.ttf到Matplotlib的字体文件夹。显示Python库的具体路径pip show matplotlib再进入到字体文件夹:matplotlib/mpl-data/fonts/ttf,复制字体。第3步,调用的时候增加使用具体字体,即可。import matplotlib.pyplot as pltplt.rcParams['font.family']原创 2020-08-15 16:30:00 · 1244 阅读 · 0 评论 -
Python - 定制pattern的string模板(template) 详解
定制pattern的string模板(template) 详解本文地址: http://blog.csdn.net/caroline_wendy/article/details/28625179 string.Template的pattern是一个正则表达式, 可以通过覆盖pattern属性, 定义新的正则表达式.如: 使用新的定界符"{{", 把{{var}}作为变量语法.代码:# -*- coding: utf-8 -*-'''Creat原创 2014-06-05 14:53:57 · 4137 阅读 · 0 评论 -
Python - 定制语法的string模板(template) 详解
定制语法的string模板(template) 详解本文地址: http://blog.csdn.net/caroline_wendy/article/details/28614491 string模板(template)参考: http://blog.csdn.net/caroline_wendy/article/details/27054263string.Template()内添加替换的字符, 使用"$"符号, 或 在字符串内, 使用"${}原创 2014-06-05 14:04:15 · 9974 阅读 · 0 评论 -
Python - 字符串模板的安全替换(safe_substitute) 详解
字符串模板的安全替换(safe_substitute) 详解本文地址: http://blog.csdn.net/caroline_wendy/article/details/27057339字符串模板(sting.Template), 替换时, 使用substitute(), 未能提供模板所需的全部参数值时, 会发生异常.如果使用safe_substitute(), 即安全替换, 则会替换存在的字典值, 保留未存在的替换符号.代码:# -*-原创 2014-05-26 10:14:09 · 13531 阅读 · 0 评论 -
Python - 字符串的替换(interpolation) 详解
字符串的插值(interpolation) 详解本文地址: http://blog.csdn.net/caroline_wendy/article/details/27054263字符串的替换(interpolation), 可以使用string.Template, 也可以使用标准字符串的拼接.string.Template标示替换的字符, 使用"$"符号, 或 在字符串内, 使用"${}"; 调用时使用string.substitute(dic原创 2014-05-26 09:50:28 · 7296 阅读 · 0 评论 -
Python - 首字母大写(capwords) 和 创建转换表(maketrans) 详解
首字母大写(capwords) 和 创建转换表(maketrans) 详解本文地址: http://blog.csdn.net/caroline_wendy/article/details/27051977string模块, 包含处理文本的常量和类.capwords(), 把字符串(string)中, 所有单词的首字母大写;maketrans(), 创建对照表, 然后使用translate()函数, 调用对照表, 把字符串(string)中的字符原创 2014-05-26 09:24:39 · 10444 阅读 · 0 评论 -
Python - 文本处理模块
文本处理模块详解本文地址: http://blog.csdn.net/caroline_wendy/article/details/27050431Python的文本处理模块, 使用四种内置库.string.Template, 即string模板, 用户可以修改的模板, 在静态文本中插入动态值.textwrap模块, 对从段落抽取的文本进行格式化输出.re模块, 提供了完整的正则表达式库.difflib模块, 根据添加\删除\修改原创 2014-05-26 09:02:56 · 4275 阅读 · 0 评论 -
Python - 检测字符串之间的包含
检测字符串之间的包含本文地址: http://blog.csdn.net/caroline_wendy/article/details/27048955 Python中, 可以检测字符串之间的包含问题.containsAny, 只要包含任何一个字符即可;containsOnly, 所有字符都包含在内;containsAll, 包含全部;代码:# -*- coding: utf-8 -*-'''Created on 2014.5.25@au原创 2014-05-26 08:48:16 · 3244 阅读 · 0 评论 -
Python - Python的异常处理机制
Python的异常处理机制本文地址: http://blog.csdn.net/caroline_wendy/article/details/23459001Python的异常处理机制:try: 尝试抛出异常;raise: 引发异常;except: 处理异常;finally: 是否发生异常都需要做的事情;创建新的异常类型, 需要继承Exception类, 可以定义类的属性, 便于处理异常;开发体原创 2014-04-11 17:07:50 · 3159 阅读 · 0 评论 -
Python - class dummyclass(object): 改错
class dummyclass(object): 改错本题仅供学习交流, 禁止用于任何商业用途.本文地址: http://blog.csdn.net/caroline_wendy一道改错的题目, 可以获得很多启发, 题目如下:from amodule import * # amodule is an exist moduleclass dummycla原创 2014-04-11 16:10:32 · 4002 阅读 · 0 评论 -
Python - 快速排序(quick sort) 及 去重(no duplicate)
快速排序(quick sort) 及 去重(no duplicate)本文地址: http://blog.csdn.net/caroline_wendy/article/details/23445979Python包含自己的语言特性,快速排序, 是排序的基本算法, 递归的快速排序如下:# -*- coding: utf-8 -*-#eclipse pydev, python 3.3#by C.L.Wang原创 2014-04-11 14:55:09 · 9430 阅读 · 1 评论 -
Python - 多变量的for循环 详解
多变量的for循环 详解本文地址: http://blog.csdn.net/caroline_wendy/article/details/23439661多变量的for循环, 经常在程序中出现, 如for(int i=0, j=n-1; i 等;由于python的循环机制发生改变, 所以可以使用元素对的方式(zip)的方式进行循环;如:# -*- coding: utf-8 -*-#eclipse p原创 2014-04-11 13:46:01 · 54094 阅读 · 0 评论 -
Python - 翻转(reverse)字符串(string)的所有方法 详解
翻转(reverse)字符串(string)的所有方法 详解版权所有, 禁止转载, 如有需要, 请站内联系.本文地址:http://blog.csdn.net/caroline_wendyPython翻转字符串(reverse string), 一共包含5种方法, 其中第一种最简单, 即步长为-1, 输出字符串;方法如下5种方法的比较:1. 简单的原创 2014-04-11 13:34:08 · 79288 阅读 · 1 评论 -
Python - 静态函数(staticmethod), 类函数(classmethod), 成员函数 区别(完全解析)
静态函数, 类函数, 成员函数的区别本文地址: http://blog.csdn.net/caroline_wendy/article/details/23383995原创 2014-04-11 08:18:58 · 28555 阅读 · 1 评论