python
文章平均质量分 54
Johnson0722
learning like deep learning
展开
-
plotly基本用法
plotly可视化框架基本用法原创 2022-07-20 22:08:04 · 3795 阅读 · 1 评论 -
python程序性能分析
这篇博客简单介绍一些python性能分析的常用工具, 性能分析主要是代码运行的时间和内存分析,希望能给大家提供帮助通过time模块import timedef test(num_iterations): a = 1 for i in range(num_iterations): a *= -1 return anum_iterations = 1_000_000_0t1 = time.time()res = test(num_iterations)t2原创 2020-05-17 20:45:08 · 620 阅读 · 0 评论 -
python math的基本用法
Constants of the math Module>>> import math>>> math.pi, math.tau(3.141592653589793, 6.283185307179586)>>> math.e2.718281828459045>>> math.infinf>>...原创 2020-03-29 20:30:36 · 1477 阅读 · 0 评论 -
设计模式学习笔记
创建型模式简单工厂模式:专门定义一个类来创建其他类的实例,根据参数的不同创建不同的类实例,被创建的实例通常具有共同的父类,简单工厂模式。使用者可以不关注具体对象的类名称,只需要知道传入声明参数可以创建那些需要的对象。工厂方法模式:抽象出一个父类Factory, 并增加多个子类分别负责创建不同的具体产品抽象工厂模式:提供一个创建一系列或相互依赖的对象接口,而无须指定他们的具体...原创 2020-03-05 20:46:45 · 290 阅读 · 0 评论 -
python Jinja2 模板编程
Jinja2基本语法{% %} 控制结构,可以用来写判断循环等语句{{}} 变量取值{# #} 注释快速入门的例子from jinja2 import Template## ex1t = Template("hello {{person}}")msg = t.render(person="bob")print(msg) # hello bob## ex2t = Te...原创 2020-02-28 19:47:02 · 1323 阅读 · 0 评论 -
python中__new__, __init__, __call__的用法
python3中的所有类都继承object类,因此可以不用显示的指定基类. object基类中拥有的方法和属性可通用于所有类概述在进行详细介绍之前,先要有一个直观的认识__new__负责对象的创建, 而__init__负责对象的初始化;__new__是一个类方法, 而__init__和__call__是一个对象方法__call__声明这个对象是可调用的(callable)class...原创 2020-02-20 13:16:27 · 496 阅读 · 1 评论 -
Python Fire 使用教程
简介Fire是google开发的一个python第三方库,其作用是可以将python组件(函数调用,类调用)转换成命令行的形式去调用。安装可以直接使用pip来安装pip install fire或者可以从Fire源码安装,clole如下源码https://github.com/google/python-fire.git, 然后进入目录,运行如下命令python setup.py i...翻译 2020-01-19 21:19:15 · 4125 阅读 · 0 评论 -
conda环境管理
Anaconda 使用软件包管理系统Conda 进行包管理,为用户对不同版本、不同功能的工具包的环境进行配置和管理提供便利。来看一看使用conda来进行环境管理的基本命令创建环境创建一个名为test的python环境, 指定python版本是3.7.3, 并在test环境中安装pytorchconda create --name test python=3.7.3 pytorch查看系统...原创 2019-11-30 22:08:52 · 418 阅读 · 0 评论 -
深入理解python中的函数
第5章 一等函数把函数视作对象Python 函数是对象。这里我们创建了一个函数,然后调用它,读取它的__doc__ 属性,并且确定函数对象本身是function 类的实例def factorial(n): """return n!""" return 1 if n < 2 else n*factorial(n-1)print(factorial(10)) # ...原创 2019-05-25 19:49:06 · 690 阅读 · 0 评论 -
深入理解python对象及属性
类属性和实例属性首先来看看类属性和类实例的属性在python中如何存储,通过__dir__方法来查看对象的属性>>> class Test(object): pass>>> test = Test()# 查看类属性>>> dir(Test)['__class__', '__delattr__', '__dict__'...原创 2019-05-17 14:50:23 · 2216 阅读 · 0 评论 -
python中的可迭代的对象、迭代器和生成器
序列可迭代的原因我们来构造一个Sentence类,来查看序列可迭代的原因import reimport reprlibRE_WORD = re.compile('\w+')class Sentence: def __init__(self, text): self.text = text self.words = RE_WORD.findall(...原创 2019-06-04 09:28:09 · 285 阅读 · 0 评论 -
python中的上下文管理器和with语句块
上下文管理器对象存在的目的就是管理with语句。上下文管理器协议包含__enter__ 和__exit__ 两个方法。with 语句开始运行时,会在上下文管理器对象上调用__enter__ 方法。with 语句运行结束后,会在上下文管理器对象上调用__exit__ 方法来看一个例子,把文件对象当成上下文管理器使用with open('test.dat') as fp: secc = f...原创 2019-06-04 10:12:27 · 307 阅读 · 0 评论 -
python中的协议和抽象基类
从协议到抽象基类看一个序列协议的例子""" 定义__getitem__方法,只实现序列协议的一部分,这样就足够访问元素,迭代和使用in运算符""">>> class Foo:... def __getitem__(self, pos):... return range(0, 30, 10)[pos]...>>> f = Foo()>...原创 2019-06-04 10:41:00 · 300 阅读 · 0 评论 -
python正确重载运算符
运算符重载基础不能重载内置类型的运算符不能新建运算符,只能重载现有的某些运算符不能重载 例如 is, and, or 和not(不过位运算符&、|和~可以)一元运算符-(neg):一元取负算术运算符。如果x 是-2,那么-x == 2。+(pos):一元取正算术运算符。通常,x ==+x~(invert)对整数按位取反,定义为~x == -(x+1)。如果x 是2,那么...原创 2019-06-04 10:55:03 · 1976 阅读 · 0 评论 -
python面向对象编程
符合python风格的对象先来看一个向量类的例子class Vector2d: typecode = 'd' """使用两个或者一个前导下划线,把属性标记为私有的""" def __init__(self, x, y): self.__x = float(x) self.__y = float(y) "...原创 2019-06-04 11:06:14 · 332 阅读 · 0 评论 -
用pandas读写HDF5文件
hdf5简介HDF5是一种专门用于存储表格数据阵列的高性能存储格式。Pandas的HDFStore类k可以将将DataFrame存储在HDF5文件中,以便可以有效地访问它,同时仍保留列类型和其他元数据。 它是一个类似字典的类,因此您可以像读取Python dict对象一样进行读写。HDF5支持压缩存储,使用的方式是blosc,这个是速度最快的也是pandas默认支持的。 使用压缩可以节省空间。...原创 2019-07-22 09:26:46 · 14272 阅读 · 4 评论 -
python中的数据结构
第一章 python数据模型特殊方法示例from math import hypotclass Vector: def __init__(self, x=0, y=0): self.x = x self.y = y # 不管输出还是通过print打印,都按__repr__方法计算 # __str__只有在使用str()函数或...原创 2019-05-25 16:26:18 · 385 阅读 · 0 评论 -
序列拆包及*args和**kwargs的基本用法
*args和**kwargs在阅读官方代码的时候,经常我看到args和**kwargs等参数。那么,什么是args和**kwargs,又该如何使用呢?*args和kwargs主要用于函数定义。 *args和*kwargs允许您将可变数量的参数传递给函数*。这里的变量意味着事先不知道用户可以向函数传递多少个参数,因此在这种情况下用这两个关键字没有必要写*args或*kwargs。 ...原创 2018-11-17 18:31:31 · 1156 阅读 · 3 评论 -
pytho金融大数据分析
以下所有内容都是基于python3时间序列分析import pandas as pdimport numpy as npfrom datetime import time# 生成日期MyTime = time(hour=10, minute=1, second=20)# 生成日期范围index = pd.data_range(start='2000-01-01 00:00:00'...原创 2018-10-07 12:43:28 · 462 阅读 · 3 评论 -
python matplotlib作图
用几个例子来说明matplotlib的用法Example 1.# coding:utf-8 import matplotlib.pyplot as plt原创 2017-06-21 16:12:10 · 10263 阅读 · 0 评论 -
使用SciPy进行常用的图像操作
SciPy provides some basic functions to work with images. For example, it has functions to read images from disk into numpy arrays, to write numpy arrays to disk as images, and to resize images. Here is原创 2017-08-19 16:47:09 · 969 阅读 · 0 评论 -
python关于自定义模块导入的问题
问题描述关于自定义模块的问题,之前python2,python3版本问题,导入的模块的方式不同,在python3可行的模块导入方法在python2就不能用了,踩了很多坑,也总结出了一套通用的方法来解决这个问题(no model named xxx)通用的解决方法当我们导入一个模块时:import xxx,默认情况下python解析器会搜索当前目录、已安装的内置模块和第三方模块,搜索原创 2018-02-07 13:31:50 · 1783 阅读 · 0 评论 -
python使用traceback获取异常信息
异常处理捕捉异常可以使用try/except语句try/except语句用来检测try语句块中的错误,从而让except语句捕获异常信息并处理try/finally 语句无论是否发生异常都将执行最后的代码看个例子try: a = 1 / 0except Exception as e: print(e)finally: print('finishe...原创 2018-04-30 12:00:38 · 9664 阅读 · 0 评论 -
python 信号处理模块signal
signal包负责在Python程序内部处理信号,典型的操作包括预设信号处理函数,暂停并等待信号,以及定时发出SIGALRM等。要注意,signal包主要是针对UNIX平台(比如Linux, MAC OS),而Windows内核中由于对信号机制的支持不充分信号名称signal包定义了各个信号名及其对应的整数,比如signal.SIGABORTsignal.SIGHUP # ...原创 2018-04-30 17:01:47 · 3355 阅读 · 0 评论 -
python多进程编程
阅读目录阅读目录添加进程 Process进程池 Pool共享内存 shared memory进程锁 Lock控制对共享资源的访问数量Semaphore进程间通信Queue(存储进程输出)进程间通信Event进程间通信Pipe参考文献如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程。Python提供了非常好用的多进程包...原创 2018-05-03 12:19:42 · 863 阅读 · 0 评论 -
python解析yaml文件
yaml简介YAML是一个可读性高,用来表达数据序列的格式。YAML引用了其他多种语言,包括:C语言、Python、Perl,并从XML、电子邮件的数据格式中获得灵感。目前已经有数种编程语言或脚本语言支持(或者说解析)这种语言。YAML的语法和其他高级语言类似,并且可以简单表达清单、散列表,标量等数据形态。它使用空白符号缩进和大量依赖外观的特色,特别适合用来表达或编辑数据结构、各种配置文件...原创 2018-05-03 17:21:34 · 24916 阅读 · 0 评论 -
virtualenv配置python虚拟环境
简介virtualenv is a tool to create isolated Python environments。在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip安装到Python3的site-packages目录下。 如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python ...原创 2018-06-12 14:51:21 · 4787 阅读 · 0 评论 -
python2编码问题
str 类型 decode(‘utf-8’) unicode类型 encode(‘utf-8)import sysreload(sys)sys.setdefaultencoding('utf-8')原创 2018-06-12 16:31:58 · 221 阅读 · 0 评论 -
关于python可变对象,不可变对象,赋值,引用,浅拷贝,深拷贝的思考
获取对象的地址id() 函数用于获取对象的内存地址。&gt;&gt;&gt;a = 'runoob'&gt;&gt;&gt; id(a)4531887632&gt;&gt;&gt; b = 1&gt;&gt;&gt; id(b)140588731085608可变对象&a原创 2018-08-29 18:18:09 · 407 阅读 · 0 评论 -
python装饰器教程
Functions下面是一个十分简单的函数,给定输入,返回对应的值def add_one(number): return number + 1&amp;amp;gt;&amp;amp;gt;&amp;amp;gt; add_one(2)3First-class objects在python中,函数也可以当成是一个对象,那就意味着函数可以当作参数进行传递,就像整型,字符型,列表类型的对象一样,参考下面的例子:def原创 2018-11-17 17:42:07 · 1513 阅读 · 0 评论 -
python matplotlib如何将图例放在图外
关于matplotlib如何设置图例的位置?如何将图例放在图外?以及如何在一幅图有多个子图的情况下,删除重复的图例?我用一个简单的例子说明一下。import pandas as pdimport numpy as npimport matplotlib.pyplot as pltfig = plt.figure(1)ax1 = fig.add_subplot(2,2,1)ax2 = fig.原创 2017-01-27 11:27:16 · 56344 阅读 · 5 评论