python
nbu04william
come on baby. believe yourself.
展开
-
Python 元类习作
Python 元类习作实现一个可给类定义别名的元类。主要学习元类实现和__prepare__的用法。class AliasDict(dict): # alias dictionary def __init__(self, alias={}, *args, **kwargs): super().__init__(*args, **kwargs) self.alias = alias def __getitem__(self, k):原创 2022-03-08 15:58:58 · 255 阅读 · 0 评论 -
Python生成九宫格视频
视频九宫格。很好玩。原创 2022-02-22 17:30:50 · 1916 阅读 · 0 评论 -
sklearn 实现极简VQ算法
VQ算法是一种图像压缩算法。本文用 sklearn 实现VQ算法。代码简单的要哭#!/usr/bin/env python3# -*- coding: utf-8 -*-import numpy as npfrom sklearn.mixture import *from sklearn.cluster import *from PIL import Imagedef vq(im, model=None): # vector quantization with a cluste原创 2021-08-09 11:11:26 · 513 阅读 · 0 评论 -
hmmlearn 源码解读
hmmlearn 源码解读文章目录hmmlearn 源码解读简介记号约定变量名-术语表基本变量高级变量类_BaseHMM类GaussianHMMMultinomialHMMGMMHMM辅助函数源码解读fit 方法 - 学习算法(Bayesian Baum-Welch 算法)参考文献简介hmmlearn: HMM的Python实现hmmlearn可以处理一组独立序列,但本文只考虑一个序列。最近想研究HMM,做一个简单的AI写作机器人。认真阅读了hmmlearn源码。记号约定Y,ZY, ZY,Z:原创 2021-07-22 10:11:10 · 596 阅读 · 2 评论 -
比pip更方便的更新第三方库方法
方便更新第三方库脚本。直接在命令行运行 pipx.pyx表示对pip的功能扩展。亮点:输入s进入sudo模式,一次输入密码多次使用。#!/usr/bin/env python3# -*- coding: utf-8 -*-"""Upgrade packagesjust run `pipx.py` in cltMenu: q: quit s: sudo mode u: usual mode l: list the packages m: insta原创 2021-03-17 17:10:19 · 116 阅读 · 0 评论 -
利用beatifulsoup统计网页tag个数
利用beatifulsoup统计网页tag个数#!/usr/bin/env python3import bs4def _count(soup): # count the tags under Beatifulsoup object soup if soup.contents: c = {soup.name:1} for a in soup.contents: if a.name: c0=_cou原创 2020-09-27 15:31:34 · 547 阅读 · 0 评论 -
selenium 淘宝登录与自动购物
直接上源码。测试久了,感觉淘宝服务端起了变化。#!/usr/bin/env python3# -*- coding: utf-8 -*-import bs4from selenium import webdriverfrom selenium.webdriver.chrome.options import Optionsfrom selenium.webdriver.common....原创 2019-11-10 11:20:02 · 790 阅读 · 0 评论 -
基于Python-cv2图片溶解切换动画
基于cv2图片溶解切换动画说明每张图片显示时间由渐变持续时间duration和停留时间stop构成。在 tf 类里,可自定义切换时的渐变函数。形式为melt(i, j, h, N),其中i,j是像素位置,h是渐变变量,从0到N-1程序运行一般会消耗较长的时间,请耐心等待。源码#!/usr/bin/env python3# -*- coding: utf-8 -*-import i...原创 2019-08-18 14:51:18 · 1222 阅读 · 2 评论 -
EM算法最佳实现
参考EM算法下面给出算法的简化版本。import numpy as npimport numpy.linalg as LA SIGMA = 6EPS = 0.0001#生成方差相同, 均值不同的样本def generate_data(): mu1 = 20 mu2 = 40 N = 1000 X = np.zeros(N) for ...原创 2019-01-13 17:27:13 · 587 阅读 · 0 评论 -
一个函数完成人机对话。awesome!
一个函数完成人机对话。awesome!#!/usr/bin/env python3# -*- coding: utf-8 -*-import requestsappkey = "e5ccc9c7c8834ec3b08940e290ff1559"def reply(info): url = "http://www.tuling123.com/openapi/api" ...原创 2018-12-05 17:05:00 · 439 阅读 · 0 评论 -
neupy 时间序列信号处理
neupy 时间序列信号处理neupy 时间序列信号处理。在Python神经网络模块界,neupy 可能不算知名,但是它确实比较好用,设计简单直观,容易上手。# -*- coding: utf-8 -*-import numpy as npfrom sklearn.model_selection import train_test_splitfrom neupy import algorith原创 2017-08-11 10:24:59 · 1511 阅读 · 0 评论 -
python实现MATLAB单指标索引
python实现MATLAB单指标索引,即用数字索引多维数组,MATLAB里A(4), 代表列向量A(:)(4),下面代码实现这种风格索引,当然是从0开始计数,但用过方法py2matlab, 实现从1开始计数。可从Pip下载。# -*- coding: utf-8 -*-'''index.pya general method to example ind = SingleIndex([1,原创 2017-07-15 13:47:51 · 554 阅读 · 0 评论 -
python 文件对象的继承
Python 文件对象的方法对很多人来说都不能满足需求。还有文本文件的seek功能有限制,很不方便。于是就应该继承文件对象。一种简单的办法是 wrap。就是让文件对象成为新对象的属性。这样通过self.fo.method就可以调用原有的方法同时定义新方法,起到扩展方法的功能。class myFO: # a wrap of file object def __init__(s原创 2015-07-04 17:18:13 · 1139 阅读 · 0 评论 -
python 深度模仿 matlab 矩阵语法
直接上源代码import functoolsimport numpy as npimport numpy.linalg as LA'''notation (abbreviation):num: complex numberind: index (int, slice or list, or tuple of index sometimes)vec: vectorcolve原创 2015-08-28 20:57:02 · 1676 阅读 · 0 评论 -
python 初步实现人机对话
有点无聊,自己随便写了一个人机交互的程序。不存在任何智能,只是可以识别姓名,可以记录对话内容,并保存等到下一次交互时加载。(推荐面向对象版本)已经发布到Github: [assistant](https://github.com/Freakwill/assistant)# hello.py# 这是老早写的。不过今天加入了Pickle,然后润色了一下。# 可能有点无聊(不推荐使用...原创 2015-10-11 22:03:07 · 9111 阅读 · 6 评论 -
python 的一些小知识
本文总结一些关于python 编程的小知识第三方包基本安装方法:(用到 distutils/setuptools)=======================1 下载第三方包,解压2 在命令提示符里输入cmd,然后用cd进入到第三方包的路径下(包内有 setup.py)3 输入python setup.py build4 输入python setup.py ins原创 2016-05-18 14:45:48 · 471 阅读 · 0 评论 -
python 实现有定义域的函数,可用来做类型测试
# -*- coding: utf-8 -*-# fcool: a cool tool for functional programming# Author: William Song## CLasses:# BaseFunction -> Type (or Domain), Function# BaseFunction: func: function (o原创 2016-06-26 20:50:16 · 1237 阅读 · 0 评论 -
离散概率模型的Python实现
离散概率模型的Python实现。下面是源代码。# -*- coding: UTF-8 -*-import randomimport numpy as np# random.sample(lst, N)def randstr(s, N=1): # generate a string randomly from s (string) return ''.joi原创 2016-12-07 21:23:29 · 1520 阅读 · 0 评论 -
python优雅实现适配器
#-*- coding: utf-8 -*-# adapter pattern# python优雅实现适配器class Adapter(object): '''Adapter class for adater pattern adaptee: adapted object adaptedMethods: dict{known method: adapted metho原创 2016-12-10 21:56:37 · 445 阅读 · 0 评论 -
python优雅实现策略模式
优雅实现策略模式; 在awesome-python上有一个关于模式设计的包,对包中的代码做了一点修改。# -*- coding: utf-8 -*-"""http://stackoverflow.com/questions/963965/how-is-this-strategy-pattern -written-in-python-the-sample-in-wikipedia原创 2017-02-05 19:25:56 · 606 阅读 · 0 评论 -
用bash升级python第三方库
用bash升级python第三方库用pip逐个升级Python第三方库,要重复写很多命令。这个bash文件先检验哪些库需要升级,然后提示输入要升级的库名。使用方便。#!/bin/sh# update the packages of pythonpip3 list --format columns --outdatewhile truedo read -p "please input原创 2017-04-16 14:10:44 · 597 阅读 · 0 评论 -
我的kmeans聚类 python代码
仿制matlab的kmeans聚类 http://blog.csdn.net/nbu2004/article/details/43084999注意 data 是list类型,但二维array类型也没问题。比起MATLAB,Python只能更简单,即使没有MATLAB矩阵表达式。# -*- coding: utf-8 -*-# import copyimport numpy as npi原创 2017-05-17 13:03:48 · 910 阅读 · 0 评论 -
个人制作的 python idle 主题配置
请参考 http://www.linuxidc.com/Linux/2012-07/66129.htmsoft 模仿了sublime 的 monokai,而 best 采用保护视力的背景颜色。希望大家能喜欢。[soft]console-foreground = #ff8000hilite-background = #408080stdout-foreground = blu原创 2015-07-01 14:40:33 · 848 阅读 · 0 评论