Python
stevsun
Keep calm and carry on
展开
-
Python中的*args和**kwargs
在Python中的代码中经常会见到这两个词 args 和 kwargs,前面通常还会加上一个或者两个星号。其实这只是编程人员约定的变量名字,args 是 arguments 的缩写,表示位置参数;kwargs 是 keyword arguments 的缩写,表示关键字参数。这其实就是 Python 中可变参数的两种形式,并且 *args 必须放在 **kwargs 的前面,因为位置参数在关键字参数...转载 2019-10-24 17:40:45 · 164 阅读 · 0 评论 -
bcolz文档
原文:http://bcolz.blosc.org/en/latest/reference.htmlFirst level variablesbcolz.__version__'''bcolz包的版本。'''bcolz.dask_here'''是否检测到dask的最低版本。'''bcolz.min_dask_version'''需要dask的最低版本...翻译 2018-02-09 12:00:10 · 6039 阅读 · 0 评论 -
Python pandas快速入门
Pandas的主要数据结构: Dimensions Name Description 1 Series 1D labeled homogeneously-typed array 2 DataFrame General 2D labeled, size-mutable tabular structure with potentially hete...转载 2018-02-07 16:11:26 · 313 阅读 · 0 评论 -
详解Python的装饰器
Python中的装饰器是你进入Python大门的一道坎,不管你跨不跨过去它都在那里。为什么需要装饰器我们假设你的程序实现了say_hello()和say_goodbye()两个函数。def say_hello(): print "hello!" def say_goodbye(): print "hello!" # bug hereif __name__ ==...转载 2018-09-26 20:44:53 · 192 阅读 · 0 评论 -
Python中yield关键字
可迭代对象mylist 是一个可迭代的对象。当你使用一个列表生成式来建立一个列表的时候,就建立了一个可迭代的对象:>>> mylist = [x*x for x in range(3)]>>> for i in mylist :... print(i)014在这里,所有的值都存在内存当中,所以并不适合大量数据生成器可迭代只能读取一...转载 2018-10-12 17:13:08 · 193 阅读 · 0 评论 -
python中with as的用法
With语句是什么?有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,Python的with语句提供了一种非常方便的处理方式。一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后关闭文件句柄。如果不用with语句,代码如下:file = open("/tmp/foo.txt")data = file.read()file.close()这里有两个问题。一...转载 2018-09-28 20:03:12 · 809 阅读 · 0 评论 -
浅谈 Python 的 with 语句
引言with 语句是从 Python 2.5 开始引入的一种与异常处理相关的功能(2.5 版本中要通过 from __future__ import with_statement 导入后才可以使用),从 2.6 版本开始缺省可用(参考 What’s new in Python 2.6? 中 with 语句相关部分介绍)。with 语句适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会...转载 2018-09-28 20:19:43 · 191 阅读 · 0 评论 -
Pandas Panel的使用
PanelPanel是Pandas中的3D数据容器它有3个轴(axis),分别是:items - axis 0 , 每个item对应一个DataFramemajor_axis - axis 1,代表每个DataFrame的索引minor_axis - axis 2, 代表每个DataFrame的列构造函数用以下函数构造一个Panel:pandas.Panel(data, ite...转载 2019-07-03 19:33:23 · 15302 阅读 · 2 评论 -
Python使用Thrift
0x00首先需要安装python的thrift包sudo pip install thrift0x01编写一个简单接IDL文件helloworld.thriftconst string HELLO_WORLD = "world"service HelloWorld { void ping(), string sayHello(), string sayMsg...原创 2019-07-30 14:59:29 · 8480 阅读 · 0 评论 -
Python使用ZeroMQ的三种模型
ZeroMQ是一个消息队列网络库,实现网络常用技术封装。Request-Reply应答模式:所谓应答模式,就是一问一答,规则有这么几条必须先提问,后回答对于一个提问,只能回答一次在没有收到回答前不能再次提问server:#!/usr/bin/python#-*-coding:utf-8-*-import timeimport zmqcontext = zmq.Cont...转载 2019-08-10 19:32:58 · 532 阅读 · 0 评论 -
Python PDB命令参数
进入命令行Debug模式,python -m pdb myscript.pyh:(help)帮助w:(where)打印当前执行堆栈d:(down)执行跳转到在当前堆栈的深一层(个人没觉得有什么用处)u:(up)执行跳转到当前堆栈的上一层b:(break)添加断点 b 列出当前所有断点,和断点执行到统计次数 b line_no:当前脚本的line_no行添加断点转载 2017-09-28 16:32:45 · 2590 阅读 · 0 评论 -
Python变量函数
在PHP等语言中有变量函数(Variable Function)这一说法,意思就是将函数名存在变量中,然后根据变量值动态的调用需要的函数。 其实在Python中也有类似这样的功能。下面我们就来实现python的变量函数。def foo(): print 'hi' t = eval('foo') t() >>> def foo(): ... print 'hi'转载 2017-07-19 14:59:12 · 990 阅读 · 0 评论 -
Python脚本:批量解压RAR文件
所需模块:os.getcwd() #获取脚本文件路径os.system() #执行系统命令import os#source_dir = input("Please input in source_dir:")#unzip_dir = input("Please input in unzip_dir:") source_dir = os.getcw转载 2015-11-24 12:09:01 · 3904 阅读 · 1 评论 -
Python脚本:TXT文档行数统计
count = 0 #计数变量file_dirs = input('请输入您要统计的文件根路径:')filename = open(file_dirs,'r') #以只读方式打开文件file_contents = filename.read() #读取文档内容到file_contentsfor file_content in file_contents:转载 2015-11-24 12:14:47 · 4583 阅读 · 1 评论 -
正则学习:简单的Python小爬虫
0×00 背景在网上找了一点关于Python的内容,一直以来没怎么学习Python的正则以及Urllib模块,通过学习写了一个最简单的Python小爬虫(用来批量下载某网页上的所有图片),不为实用,只为学习一点Python的内容,以重燃自己的学习欲望。0×01 正则表达式正则表达式凡是接触编程的人,应该都了解正则的高端之处吧,我这里不做赘述,因为我也不是特别懂,只是列举一些简单常用的而已。正则转载 2015-11-24 12:06:04 · 590 阅读 · 0 评论 -
八大排序算法的Python实现
1、插入排序描述插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排序方法。插入算法把要排序的数组分成两部分:第一部分包含了这个数组的所有元素,但将最后一个元素除外(让数组多一个空间才有插入的位置),而第二部分就只包含这一个元素(即待插入元素)。在第一部分排序完成后,再将这个最后元素插入到已转载 2015-11-24 11:54:33 · 364 阅读 · 0 评论 -
python中的*和**参数传递机制
python的参数传递机制具有值传递(int、float等值数据类型)和引用传递(以字典、列表等非值对象数据类型为代表)两种基本机制以及方便的关键字传递特性(直接使用函数的形参名指定实参的传递目标,如函数定义为def f(a,b,c),那么在调用时可以采用f(b=1,c=2,a=3)的指定形参目标的传递方式,而不必拘泥于c语言之类的形参和实参按位置对应)除此之外,python中还允许包裹方式的参数传转载 2017-07-13 11:55:11 · 380 阅读 · 0 评论 -
Python中的注解“@”
Python3.0之后加入新特性Decorators,以@为标记修饰function和class。有点类似c++的宏和java的注解。Decorators用以修饰约束function和class,分为带参数和不带参数,影响原有输出,例如类静态函数我们要表达的时候需要函数前面加上修饰@staticmethod或@classmethod,为什么这样做呢?下面用简单的例子来看一下,具体内容可以查看:官方解转载 2017-07-21 21:33:55 · 21828 阅读 · 5 评论 -
python中的实例方法、静态方法、类方法、类变量和实例变量浅析
注:使用的是Python2.7。实例方法实例方法就是类的实例能够使用的方法。如下:class Foo: def __init__(self, name): self.name = name def hi(self): print self.nameif __name__ == '__main__': foo01 = Foo('letian')转载 2017-07-22 16:34:13 · 405 阅读 · 0 评论 -
Python中使用isinstance()判断变量类型
isinstance()在Python中可以使用type()与isinstance()这两个函数判断对象类型,而isinstance()函数的使用上比type更加方便。# coding=utf-8a = 10def b(): passprint isinstance(a,(int,str))print isinstance(a,(float,str))print isinstance(b转载 2017-07-22 16:36:50 · 1017 阅读 · 0 评论 -
Python单例模式父类
class Base(object): __instance= {} def __new__(cls,*args,**kw): if not Base.__instance.has_key(cls.__name__): Base.__instance[cls.__name__] = object.__new__(cls,*args,**kw)原创 2017-07-22 22:07:42 · 1186 阅读 · 0 评论 -
Python脚本:对文件进行批量重命名
字符替换:批量对文件名中指定字符进行替换添加前缀:批量向原文件名添加前缀添加后缀:批量向原文件名添加后缀import osdef Rename_CharReplace(): #对文件名中某字符进行替换(已完结) re_dir = os.getcwd() re_list = os.listdir(re_dir) original_char = input('请输入转载 2015-11-24 12:19:41 · 1518 阅读 · 0 评论