拥有Python标签的文章
Python

使用Python操作Redis5.0新特性Stream实现订阅发布功能

本文完整代码下载:github链接目前在做的工作有一部门是搭建一个可供公司内部使用的推送平台,用的中间件是redis,于是就自然的想用redis5.0版本的新特性来实现这个功能,网上的demo比较少,且大多是终端操作的命令行,写了一个Python的类和大家分享。在介绍具体实现之前,先大致介绍一下背景。在Redis5.0版本发布之前,redis也有一个发布、订阅功能,但功能非常简单,只能单纯的发布和订阅,适合在即时通信里使用。缺点非常多:消息没有持久化的机制

系统 2019-09-27 17:56:13 2537

Python

Python open()文件处理使用介绍

1.open()语法open(file[,mode[,buffering[,encoding[,errors[,newline[,closefd=True]]]]]])open函数有很多的参数,常用的是file,mode和encodingfile文件位置,需要加引号mode文件打开模式,见下面3buffering的可取值有0,1,>1三个,0代表buffer关闭(只适用于二进制模式),1代表linebuffer(只适用于文本模式),>1表示初始化的buff

系统 2019-09-27 17:53:40 2537

Python

使用Python实现BT种子和磁力链接的相互转换

bt种子文件转换为磁力链接BT种子文件相对磁力链来说存储不方便,而且在网站上存放BT文件容易引起版权纠纷,而磁力链相对来说则风险小一些。而且很多论坛或者网站限制了文件上传的类型,分享一个BT种子还需要改文件后缀或者压缩一次,其他人需要下载时候还要额外多一步下载种子的操作。所以将BT种子转换为占用空间更小,分享更方便的磁力链还是有挺大好处的。首先一个方案是使用bencode这个插件,通过pip方式安装或者自行下载源文件https://pypi.python.

系统 2019-09-27 17:37:55 2537

Python

详解利用Python scipy.signal.filtfilt() 实现信号

本文将以实战的形式基于scipy模块使用Python实现简单滤波处理,包括内容有1.低通滤波,2.高通滤波,3.带通滤波,4.带阻滤波器。具体的含义大家可以查阅大学课程,信号与系统。简单的理解就是低通滤波指的是去除高于某一阈值频率的信号;高通滤波去除低于某一频率的信号;带通滤波指的是类似低通高通的结合保留中间频率信号;带阻滤波也是低通高通的结合只是过滤掉的是中间部分。上面所说的内容会在实战部分加以介绍,可以对比理解一下。如何实现的呢?我的理解,是通过时域转

系统 2019-09-27 17:56:47 2535

Python

python sklearn CountVectorizer的使用及相关说明

最近想用python对数据集进行数据预处理,想要分析系统调用之间的关系。初步想法是利用n-gram方法,因此查询到了python的sklearn中有一个CountVectorizer方法可以使用,在这里介绍一下这个函数的使用方法,以及其输出的相关含义。0x01输入及输出fromsklearn.feature_extraction.textimportCountVectorizer#fromsklearn.feature_extraction.textimp

系统 2019-09-27 17:56:23 2535

Python

使用python实现离散时间傅里叶变换的方法

我们经常使用傅里叶变换来计算数字信号的频谱,进而分析数字信号,离散时间傅里叶变换的公式为:可是自己动手实现一遍才是最好的学习。在数字分析里面,傅里叶变换默认等时间间隔采样,不需要时间序列,只需要信号数组即可分析。分析过程如下:对于含有n个样本值的数字信号序列,根据奈奎斯特采样定律,包含的周期数最大为n/2,周期数为0代表直流分量。所以,当周期数表示为离散的0,1,2,3…n/2,总的数目为n/2+1个傅里叶变换之后的结果为复数,下标为k的复数a+b*j表示

系统 2019-09-27 17:54:43 2535

Python

Python整数对象实现原理详解

整数对象在Python内部用PyIntObject结构体表示:typedefstruct{PyObject_HEADlongob_ival;}PyIntObject;PyObject_HEAD宏中定义的两个属性分别是:intob_refcnt;struct_typeobject*ob_type;这两个属性是所有Python对象固有的:ob_refcnt:对象的引用计数,与Python的内存管理机制有关,它实现了基于引用计数的垃圾收集机制ob_type:用于

系统 2019-09-27 17:52:08 2535

Python

基于Selenium+Python的web自动化测试框架

一、什么是Selenium?Selenium是一个基于浏览器的自动化测试工具,它提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:SeleniumIDE、SeleniumWebDriver和SeleniumGrid。SeleniumIDE:Firefox的一个扩展,它可以进行录制回放,并把录制的操作以多种语言(例如java、python等)的形式导出成测试用例。SeleniumWebDriver:提供Web自动化所需

系统 2019-09-27 17:45:46 2535

Python

python使用电子邮件模块smtplib的方法

Smptp类定义:smtplib.SMTP(host[,port[,local_hostname[,,timeout]]]),作为SMTP的构造函数,功能是与smtp服务器建立连接,在连接成功后,就可以向服务器发送相关请求,比如登陆,校验,发送,退出等。host参数为远程smtp主机地址,比如stmp.163.com;port为连接端口,默认为25;local_hostname的作用是在本地的FQDN(完整的域名)发送HELO/EHLO指令,timeout

系统 2019-09-27 17:38:37 2535

Python

python下os模块强大的重命名方法renames详解

python下os模块强大的重命名方法renames详解在python中有很多强大的模块,其中我们经常要使用的就是OS模块,OS模块提供了超过200个方法来供我们使用,并且这些方法都是和数据处理相关的,这里介绍下重命名这个方法。OS的重命名方法是os.rename,我用的ipython,这个玩意很是强大,只要按下TAB键,可以帮助我们自动对齐和列出可以使用的方法,发现有2个方法,分别是rename和renames,2个方法,前面的rename使用过无数次,

系统 2019-09-27 17:56:33 2534

Python

python cv2展示网络图片、图片编解码、及与base64转换

从网络读取图像数据并展示需要使用cv2.imdecode()函数,从指定的内存缓存中读取数据,并把数据转换(解码)成图像格式;主要用于从网络传输数据中恢复出图像。#-*-coding:utf-8-*-importnumpyasnpfromurllibimportrequestimportcv2url='https://www.baidu.com/img/superlogo_c4d7df0a003d3db9b65e9ef0fe6da1ec.png?where

系统 2019-09-27 17:52:57 2534

Python

Python程序中的进程操作-进程同步(multiprocess.Lock)

目录一、多进程抢占输出资源二、使用锁维护执行顺序三、多进程同时抢购余票四、使用锁来保证数据安全通过刚刚的学习,我们千方百计实现了程序的异步,让多个任务可以同时在几个进程中并发处理,他们之间的运行没有顺序,一旦开启也不受我们控制。尽管并发编程让我们能更加充分的利用IO资源,但是也给我们带来了新的问题:当多个进程使用同一份数据资源的时候,就会引发数据安全或顺序混乱问题。一、多进程抢占输出资源importosimporttimeimportrandomfromm

系统 2019-09-27 17:49:09 2534

Python

01 Python学习总结:Python简介及入门

python:是一种广泛使用的高级编程语言,属于通用型编程语言,由吉多·范罗苏姆创造,第一版发布于1991年。可以视之为一种改良(加入一些其他编程语言的优点,如面向对象)的LISP。作为一种解释型语言,Python的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词)。相比于C++或Java,Python让开发者能够用更少的代码表达想法。不管是小型还是大型程序,该语言都试图让程序的结构清晰明了。Python的用途:

系统 2019-09-27 17:45:46 2534

Python

Python中将字典转换为列表的方法

说明:列表不可以转换为字典①转换后的列表为无序列表a={'a':1,'b':2,'c':3}#字典中的key转换为列表key_value=list(a.keys())print('字典中的key转换为列表:',key_value)#字典中的value转换为列表value_list=list(a.values())print('字典中的value转换为列表:',value_list)运行结果:②转换后的列表为有序列表importcollectionsz=co

系统 2019-09-27 17:38:01 2534

Python

How to install Pygame for Python 3.4 on Ubun

Firstrunthistoinstalldependencies:sudoapt-getinstallmercurialpython3-devpython3-numpy\libsdl-image1.2-devlibsdl-mixer1.2-devlibsdl-ttf2.0-devlibsmpeg-dev\libsdl1.2-devlibportmidi-devlibswscale-devlibavformat-devlibavcodec-devlibfr

系统 2019-08-12 09:27:29 2534