python
文章平均质量分 52
shaobo Huang
化繁为简,高效极致
展开
-
Python类 super__init__()
python 类 继承翻译 2022-10-10 19:02:20 · 947 阅读 · 1 评论 -
python 照片更改尺寸
from PIL import Imageimport os.pathimport globdef convertjpg(jpgfile,outdir,width=150,height=200): img=Image.open(jpgfile) try: new_img = img.resize((width, height), Image.BILINEAR) if new_img.mode == 'P': new_img = n转载 2021-12-01 14:58:41 · 274 阅读 · 0 评论 -
fine-tune
"""fine-tune""" frozen_layers = [model.encoder_rnn, model.decoder_rnn, model.hidden2logv, model.latent2hidden,model.mean2latent] for layer in frozen_layers: for name, value in layer.named_parameters(): value.requires_grad =...原创 2021-07-29 11:57:25 · 158 阅读 · 0 评论 -
pytorch 模型微调
新数据集和原始数据集合类似,那么直接可以微调一个最后的FC层或者重新指定一个新的分类器新数据集比较小和原始数据集合差异性比较大,那么可以使用从模型的中部开始训练,只对最后几层进行fine-tuning新数据集比较小和原始数据集合差异性比较大,如果上面方法还是不行的化那么最好是重新训练,只将预训练的模型作为一个新模型初始化的数据新数据集的大小一定要与原始数据集相同,比如CNN中输入的图片大小一定要相同,才不会报错如果数据集大小不同的话,可以在最后的fc层之前添加卷积或者pool层,使得最后的输出与f.原创 2021-07-29 11:56:37 · 1067 阅读 · 0 评论 -
算法工程师必备技能(Python 优化提速小技巧)
Python 优化代码优化原则全局变量很耗时"."很耗时避免模块和函数属性访问避免类内属性访问避免不必要的抽象避免数据复制毫无意义的数据复制交换值时不使用中间变量字符串拼接用join而不是+利用if条件的短路特性循环优化用for循环代替while循环使用隐式for循环代替显式for循环减少内层for循环的计算使用numba.jit选择合适的数据结构代码优化原则本文会介绍不少的 Python 代码加速运行的技巧。在深入代码优化细节之前,需要了解一些代码优化基本原则。第一个基本原则是不要过早优化。很多人一原创 2021-05-18 17:50:39 · 814 阅读 · 0 评论 -
Python 总体架构
在最高的层次上,Python 的整体架构可以分为四个主要的部分,整个架构如图 1 所示。在左边,是 Python 提供的大量的模块,库以及用户自定义的模块。比如在执行 import os 时,这个 os 就是 Python 内建的模块,当然用户还可以通过自定义模块来扩展 Python 系统。在图的右边,是 Python 的运行时环境,包括对象/类型系统(Object/Type structures),内存分配器(Memory Allocator)和运行时状态(Current State of Pytho原创 2020-12-07 17:00:39 · 3512 阅读 · 0 评论 -
利用Python获取数组或列表中最大的N个数及其索引
import heapq a=[43,5,65,4,5,8,87]re1 = heapq.nlargest(3, a) #求最大的三个元素,并排序re2 = map(a.index, heapq.nlargest(3, a)) #求最大的三个索引 nsmallest与nlargest相反,求最小print(re1)print(list(re2)) #因为re2由map()生成的不是list,直接print不出来,添加list()就行了...转载 2020-11-23 19:38:28 · 3434 阅读 · 0 评论 -
时间与时间戳的转换
import time#转换成时间数组timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S")#转换成时间戳timestamp = time.mktime(timeArray)转载 2020-11-17 19:25:42 · 1174 阅读 · 0 评论 -
数组按递增方式分组
def group_array(array): group = np.zeros_like(array).astype(np.int) cnt = 1 for i in range(len(array)): if i == 0: group[i]=cnt elif array[i] < array[i-1]: cnt+=1 group[i] = cnt els原创 2020-11-17 18:58:29 · 570 阅读 · 0 评论 -
python 顺序遍历文件夹下的文件
import osfrom tqdm import tqdmpath = 'your path' path_list = os.listdir(path)path_list.sort(key=lambda x:int(x[:-4]))print(path_list)for filename in tqdm(path_list): df = pd.read_csv(os.path.join(path,filename))原创 2020-11-05 19:04:58 · 1442 阅读 · 0 评论 -
两个列表(list)组成字典(dict)
# -*- coding: utf-8 -*-keys = ['a', 'b', 'c']values = [1, 2, 3]dictionary = dict(zip(keys, values))print dictionary"""输出:{'a': 1, 'c': 3, 'b': 2}"""原创 2020-11-04 18:02:07 · 2427 阅读 · 1 评论 -
Python 取dataframe某一列为特定值
df_sub=df[df.column==2]column是需要限定条件列的名称,“==”后可限制任意值。df_sub即为所有满足column=1的数据组成的新DataFrame。原创 2020-10-26 17:41:47 · 10244 阅读 · 2 评论 -
如何导出python所有的安装包
pip freeze > requirements.txt转载 2020-09-03 09:45:52 · 1812 阅读 · 0 评论 -
将文件夹下所有csv文件转换成所有txt
# python###############将文件夹下所有csv文件转换成所有txt##################import pandas as pdimport os# 打开文件csv,转换一个文件def change_one(file_name): (shotname,extension) = os.path.splitext(file_name) data = pd.read_csv(file_path+file_name, encoding='utf-8')原创 2020-08-27 11:53:04 · 3169 阅读 · 3 评论 -
几行python代码实现Windows软件卸载
管理员权限运行命令windows提示符将代码命名为remove.pyfrom util import *if __name__ == '__main__': #first, get names of all the installed software . softwares=get_software() print(softwares) #second, select the software you want to uninstalled. softwar原创 2020-08-24 10:26:43 · 3023 阅读 · 8 评论 -
python实现OCR识别
OCR英文全称是Optical Character Recognition,中文叫做光学字符识别。它是利用光学技术和计算机技术把印在或写在纸上的文字读取出来,并转换成一种计算机能够接受、人又可以理解的格式。下面调用百度API进行识别:from aip import AipOcrAPP_ID = "10739584"API_KEY = "RQTE6EpB6y4OXUA2iNKyPMhR"SECRET_KEY = "ibD0O15GOC949V2V16nwOkZZcVdwObcw"client原创 2020-07-27 17:48:41 · 10390 阅读 · 5 评论 -
一图精通python3
原创 2019-12-26 20:31:32 · 369 阅读 · 0 评论 -
python播放WAVE文件
首先,让我们播放WAVE文件,因为它是基本文件。Python有一个wave模块,可以读写WAVE文件并提取信息。但是,由于不能仅通过wave模块来再现声音,因此将其与另一个名为pyaudio的模块结合使用。pyaudio需要单独安装。#coding: utf-8import waveimport pyaudiodef printWaveInfo(wf): """获取WAVE文件信...原创 2019-12-24 20:39:53 · 2123 阅读 · 0 评论 -
python实现强化学习
强化学习强化学习(reinforcement learning),又称再励学习、评价学习,是一种重要的机器学习方法,强化学习是智能体(Agent)以“试错”的方式进行学习,通过与环境进行交互获得的奖赏指导行为,目标是使智能体获得最大的奖赏,强化学习不同于连接主义学习中的监督学习,主要表现在强化信号上,强化学习中由环境提供的强化信号是对产生动作的好坏作一种评价(通常为标量信号),而不是告诉强化学习...原创 2019-03-27 21:29:25 · 16997 阅读 · 8 评论 -
Python之random.seed()用法
在神经网络的参数里总会有random_seed,random_seed究竟是什么东西,今天我们来揭开它神秘的面纱其实它源于 Python seed() 函数seed() 方法改变随机数生成器的种子以下是 seed() 方法的语法:import randomrandom.seed ( [x] )我们调用 random.random() 生成随机数时,每一次生成的数都是随机的。但是,当我...原创 2019-12-11 14:28:16 · 8180 阅读 · 1 评论 -
python 实现C atoi函数
字符串转float强转float(str)手动实现一个转换函数:'''input type:str() eg:'314.545'output type:int() eg : 314.545'''import math def myAtoi(str): str = str.strip() print("str",str) sign = 1 num = 0 float...原创 2019-10-12 16:38:44 · 262 阅读 · 0 评论 -
还怕没女朋友吗?用python做个表白吧
用到的工具很简单,核心也就三个包pygame,turtle,multiprocessing只需要会使用多进程,一个进程放音乐,一个进程画图就可以啦!首先在你的PC上安装这三个包pip install pygamepip install turtlepip install multiprocessing我们精心挑选一个浪漫的音乐音乐,就用熊锦胜的《爱过你这件事吧》这首歌在这里哦!...原创 2019-11-27 09:45:00 · 450 阅读 · 0 评论 -
Python实现AI贪吃蛇
main.py#James_Boboimport randomimport pygameimport sysfrom pygame.locals import *# 错误码ERR = -404# 屏幕大小Window_Width = 800Window_Height = 500# 刷新频率Display_Clock = 5100# 一块蛇身大小Cell_Size ...原创 2019-11-26 21:08:13 · 1182 阅读 · 8 评论 -
python 实现AI五子棋
graphics.py"""Simple object oriented graphics library The library is designed to make it very easy for novice programmers toexperiment with computer graphics in an object oriented fashion. It is...原创 2019-11-26 21:00:16 · 760 阅读 · 0 评论 -
小猪佩奇(python)
# coding:utf-8from turtle import*def nose(x,y):#鼻子 pu() goto(x,y) pd() seth(-30) begin_fill() a=0.4 for i in range(120): if 0<=i<30 or 60<=i<90: ...原创 2019-11-26 15:24:35 · 750 阅读 · 0 评论 -
python turtle绘图
import turtle as tdef drawDiamond(Tom): for i in range(2): Tom.forward(100) Tom.right(45) Tom.forward(100) Tom.right(135)def drawFlower(): window=t.Screen() ...原创 2019-11-26 15:32:36 · 455 阅读 · 0 评论 -
python实现天气功能查询
在网上发现了一个非常方便的天气API,就用Python试着用了一下。参数是挺少的,用起来也方便。一、介绍我们先来看一下实现的程序有什么功能:功能也是非常简单的,输入城市,显示当前城市、当前日期时间、温度和天气。API使用的是国家气象局的接口,完全免费的:http://t.weather.sojson.com/api/weather/city/101010100这个是以北京为例的接口,...转载 2019-11-27 09:49:15 · 10787 阅读 · 9 评论 -
python生成动态链接二维码
在GitHub上发现了一个比较有意思的项目,只需要一行Python代码就可以快捷方便生成普通二维码、艺术二维码(黑白/彩色)和动态GIF二维码。GitHub网站参见:https://github.com/sylnsfar/qrcode用法比较简单,直接通过pip安装即可。pip install myqr安装完成如图所示模块如下:-v :定义二维码的大小,范围为 1 ~ 40,默...原创 2019-11-20 16:08:12 · 1218 阅读 · 0 评论 -
python os模块
os.path.split()os.path.realpath()os.path.realpath(“PATH”)参数说明:PATH指一个文件的全路径作为参数如果给出的是一个目录和文件名,则输出路径和文件名,输出为tuple如果给出的是一个目录名,则输出路径和空文件名,输出为tuple实际上,该函数的分割并不智能,它仅仅是以"PATH"中的最后一个"/"作为分隔符,分隔后,将索引...原创 2019-11-19 17:03:28 · 152 阅读 · 0 评论 -
装饰器
python装饰器转载 2019-10-17 15:17:05 · 70 阅读 · 0 评论 -
python 将mysql查出来的转换成dataframe
import numpy as npimport pymysqldef con_sql(sql):创建连接 db = pymysql.connect(host='116.62.60.195', port=3306, user='matching_user', passwd='Match-123456-user', db='bixin_test', charset='utf8')创建...原创 2018-12-04 18:15:20 · 2328 阅读 · 0 评论 -
python实现傅里叶变换和反变换
import numpy as npfrom math import *x=[1,2,3,4,5]'''傅里叶变换'''def fft(x): x = np.asarray(x, dtype=float) N = x.shape[0] n = np.arange(N) k = n.reshape((N, 1)) M = np.exp(-2j * n...原创 2019-04-16 00:05:02 · 11090 阅读 · 2 评论 -
python指数积分
指数积分from scipy.special import *'''expn(n,x):#n:阶数#x:积分变量integral(exp(-x*t) / t**n, t=1..inf).'''expn(1, 3)#>>>0.01304838109419704from scipy.integrate import quad,dblquad,nquadquad(...原创 2019-04-16 16:42:54 · 2760 阅读 · 1 评论 -
Python向数据库表格里插入万级数据
以下是示例代码,稍作修改即可import pymysqlserver="127.0.0.1" #主机username="root" #用户名password="123456." #密码db_name="cat" #数据库名conn = pymysql.connect(server, username, password, db_n...原创 2019-04-25 09:43:15 · 1046 阅读 · 0 评论 -
普通循环和numpy速率对比
# -*- coding: utf-8 -*-from time import clockimport numpy as npfrom math import sint = [i * 0.0001 for i in range(10000000)]start_time = clock()for i, item in enumerate(t): t[i] = sin(ite...原创 2019-06-22 11:23:36 · 536 阅读 · 0 评论 -
tqdm介绍及常用方法
Tqdm 是一个快速,可扩展的Python进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator)。使用pip就可以安装。使用方法一: tqdmtqdm(list)方法可以传入任意一种list,比如数组from tqdm import tqdmfor i in tqdm(range(1000)): #do som...转载 2019-08-20 13:55:30 · 567 阅读 · 0 评论 -
logmmse降噪算法
#!/usr/bin/pythonfrom __future__ import divisionimport numpy as npimport mathfrom scipy.special import *import waveimport sysimport matplotlib.pyplot as pltnp.seterr('raise')infile="audio_8....原创 2019-04-19 15:31:10 · 5141 阅读 · 4 评论 -
python实现多进程监听声音播放并绘图
# -*- coding: utf-8 -*- import timeimport pyaudioimport numpy as npimport matplotlib.pyplot as pltfrom matplotlib import animationfrom multiprocessing import Process,Event,Queue,freeze_supporti...原创 2019-05-31 09:48:14 · 3163 阅读 · 4 评论 -
python librosa库实现变声
python librosa库实现变声/opt/python/acapellabot/gg.wavimport librosay,sr = librosa.load("gg.wav")# 通过改变采样率来改变音速,相当于播放速度X2librosa.output.write_wav("gg_resample.wav",y,sr*2)import librosay,sr = libro...原创 2019-09-23 16:55:09 · 9499 阅读 · 2 评论 -
详细解读Python中的__init__()方法
init()方法意义重大的原因有两个。第一个原因是在对象生命周期中初始化是最重要的一步,每个对象必须正确初始化后才能正常工作。第二个原因是init()参数值可以有多种形式。在我们接触init()方法之前,无论如何,我们都需要粗略、简单地看看在Python中隐含的object类的层次结构。在这一章,我们看看不同形式的简单对象的初始化(例如:打牌)。在这之后,我们还可以看看更复杂的对象,就像包...原创 2019-03-19 11:38:21 · 5576 阅读 · 0 评论