Python语言
文章平均质量分 56
Avalonist
这个作者很懒,什么都没留下…
展开
-
简单 12 步理解 Python 装饰器
转载 http://python.jobbole.com/85056/1. 函数2. 作用域>>> dir()['__builtins__', '__doc__', '__name__', '__package__']使用dir()可以看到初始时存在的全局变量>>> a_string='this is a global var'>>> def foo():... num=100..转载 2017-11-23 15:44:26 · 291 阅读 · 0 评论 -
Python中的内建函数super()
class Base(object): def __init__(self): print "enter Base" print "leave Base"class A(Base): def __init__(self): print "enter A" super(A,self).__init__() ...原创 2018-03-30 23:28:43 · 252 阅读 · 0 评论 -
__new__()
https://www.cnblogs.com/suntp/p/6445286.html转载 2018-03-31 08:05:55 · 132 阅读 · 0 评论 -
Python中的线程池
https://www.cnblogs.com/zhang293/p/7954353.htmlfrom concurrent.futures import ThreadPoolExecutorimport timedef sayhello(a): print("hello: "+a) time.sleep(2)def main(): seed=["a...转载 2018-03-31 19:53:58 · 636 阅读 · 0 评论 -
手动安装Python库或安装第三方库的方法
http://www.jb51.net/article/86020.htm源码安装很多第三方库都是开源的,几乎都可以在github 或者 pypi上找到源码。找到源码格式大概都是 zip 、 tar.zip、 tar.bz2格式的压缩包。解压这些包,进入解压好的文件夹,通常会看见一个 setup.py 的文件。打开命令行,进入该文件夹。运行python setup.py ins...转载 2018-03-22 09:59:29 · 40142 阅读 · 0 评论 -
解决pip安装时速度慢的问题
http://blog.csdn.net/wukai0909/article/details/62427437国内源:新版ubuntu要求使用https源,要注意。清华:https://pypi.tuna.tsinghua.edu.cn/simple阿里云:http://mirrors.aliyun.com/pypi/simple/中国科技大学 https://py...转载 2018-03-22 10:06:43 · 86407 阅读 · 24 评论 -
Ipython¬ebook的使用
pip install IPythonpip install urllib3 (安装IPython Notebook的依赖)pip install jupyter (安装IPython Notebook)pip install numpypip install matplotlibpip install pandaspip install scipypip install sciki...转载 2018-04-02 07:19:18 · 168 阅读 · 0 评论 -
Python函数与高级语法合集
Python中的zip()与*zip()函数详解python笔记之NUMPY(二)转载 2018-04-02 09:36:17 · 1316 阅读 · 0 评论 -
Sublime3搭建Python编译运行环境
1.使用Sublime3自带的Build SystemTools->Build System->New Build System 在窗口中输入:{ "cmd": ["D:/WorkSpace/env36/Scripts/python.exe","-u","$file"], "file_regex": "^[ ]*File \"(..原创 2018-04-02 10:16:47 · 368 阅读 · 0 评论 -
PyDev Eclipse使用技巧说明
1.如何在PyDev中查看函数的定义PyDev中是没有eclipse的open definition的的菜单项。如果需要查看某个函数或变量的定义,可以首先在需要查看的变量名上双击,会出现提示的对话框,在对话框中有定义变量的相关信息,点击对话框中的变量名的链接,就会调到定义变量的源代码中。2.源代码编辑助手 (Content Assistents)通过快捷键 Ctrl+1 可以激活 CA...转载 2018-03-28 23:20:11 · 728 阅读 · 0 评论 -
Python调用Java与Java中调用Python
Python中调用Java参考: JPype:实现在python中调用JAVA1.安装首先系统中Python和Java版本最好都是32位或者都为64位,否则可能出现错误。pip install jpype1可能需要安装VC for python27:https://www.microsoft.com/en-us/download/confirmation.aspx?id=...原创 2018-05-01 10:18:05 · 10263 阅读 · 0 评论 -
深刻理解Python中的元类(metaclass)
深刻理解Python中的元类(metaclass) PEP 3115 – Metaclasses in Python 3000第一篇文章中我执行后有错误的代码是这一段:def upper_attr(future_class_name, future_class_parents, future_class_attr): '''返回一个类对象,将属性都转为大写形式''' ...原创 2018-06-21 23:51:04 · 636 阅读 · 0 评论 -
Python中过滤Windows文件名中的非法字符
网上有三种写法: 第一种(所有非法字符都不转义):def setFileTitle(self,title): fileName = re.sub('[\/:*?"<>|]','-',title)#去掉非法字符 self.file = open(fileName + &原创 2018-06-09 14:52:01 · 12159 阅读 · 0 评论 -
Python的实例属性和类属性
由于Python是动态语言,根据类创建的实例可以任意绑定属性。给实例绑定属性的方法是通过实例变量,或者通过self变量:class Student(object): def __init__(self, name): self.name = names = Student('Bob')s.score = 90但是,如果Student类本身需要绑定一个属性呢...原创 2018-03-20 14:18:03 · 275 阅读 · 0 评论 -
动态语言和静态语言的在面向对象编程上的差异
对于静态语言(例如Java)来说,如果需要传入Animal类型,则传入的对象必须是Animal类型或者它的子类,否则,将无法调用run()方法。对于Python这样的动态语言来说,则不一定需要传入Animal类型。我们只需要保证传入的对象有一个run()方法就可以了:class Timer(object): def run(self): print('Start.....原创 2018-03-20 14:13:24 · 1967 阅读 · 0 评论 -
带参数的装饰器
回顾普通的装饰器def outer(func): def wrapper(*args,**kwargs): #装饰后的方法 print("before func") wrapper_result=func(*args,**kwargs) print("after func") return wrapper_result原创 2017-11-23 19:16:56 · 10074 阅读 · 1 评论 -
Sublime Text 3 import Anaconda 无法正常补全模块名解决办法
Sublime Text 3 Anaconda配置 在安装Sublime Text3之后我们总会安装一些插件,比如Python的Anaconda自动补全插件。但是,装好之后发现import 时无法像别的IDE里面那样自动补全模块名,就像图中一样: 这里写图片描述 解决办法在Sublime Text的github的主页README.md里面有介绍: import behaves ba转载 2017-12-23 21:08:08 · 1695 阅读 · 0 评论 -
Sublime Text 3 装了Anaconda 写Python代码出现框框的解决办法
Sublime Text 3代码提示插件Anaconda下载:http://damnwidget.github.io/anaconda/#carousel-features 安装后写代码出现白框: 光标移到白框行,下方状态栏里可以看到错误信息: 可见原因是代码不符合PEP 8 规范。规范摘要见:http://blog.sae.sina.com.cn/archives/4781解决方法有转载 2017-12-23 21:47:07 · 3984 阅读 · 1 评论 -
PyDev+eclipse+virtualenv的python开发环境整合
1.python安装先安装python2再安装python3,这样python3的Path值会覆盖掉python2的。2.PyDev的安装eclipse菜单 -> Help -> Install New Software->Add(Work with) Name: PyDev Location: http://pydev.org/updates (此处之前遇...原创 2018-03-15 07:18:13 · 1945 阅读 · 0 评论 -
关于pydev的语法的错误提示
第三方包引入时,eclipse默认会把一些包定为错误的,错误是: “undefined variable from import…” 其实是对的,可是报错,很烦人解决方法: window – preferences – pydev – editor – code analysis – Undefined – undefined variable from import统统改成”Wari...转载 2018-03-15 09:22:31 · 1009 阅读 · 0 评论 -
Python处理图像
ValueError: Only know how to handle extensions: [u'png']; with Pillow installed matplotlib can handle more images意思是安装了pillow后, matplotlib就可以处理更多的图片格式了,因为默认情况下matplotlib只能处理png格式,现在要让它处理jpg格式,就需要安装p...原创 2018-03-15 12:48:03 · 769 阅读 · 0 评论 -
Python的垃圾回收机制深入分析--循环引用
转自:http://www.jb51.net/article/52229.htm一、概述:Python的GC模块主要运用了“引用计数”(reference counting)来跟踪和回收垃圾。在引用计数的基础上,还可以通过“标记-清除”(mark and sweep)解决容器对象可能产生的循环引用的问题。通过“分代回收”(ge...原创 2018-03-16 08:31:49 · 3026 阅读 · 0 评论 -
Python的切片操作
python的切片操作英文为slicePython的序列对象(元组和列表)都是可以用索引号来引用的元素的,索引号可以是正数由0开始从左向右,也可以是负数由-1开始从右向左。在Python中对于具有序列结构的数据来说都可以使用切片操作,需注意的是序列对象某个索引位置返回的是一个元素,而切片操作返回是和被切片对象相同类型对象的副本。通常一个切片操作要提供三个参数 [start_index: ...原创 2018-03-16 13:15:11 · 1461 阅读 · 0 评论 -
Python中使用内建函数名作为变量标识符
dict={x=1,y=2} #变量会覆盖python中的built-in函数dict()dict1=dict(x=3,y=4)TypeError: 'dict' object is not callable #此时调用dict()会出错del dict #先删除覆盖定义的变量dict1=dict(x=3,y=4) #调用成功尽量避免使用和BIF同名的标识符...原创 2018-03-18 09:15:53 · 3705 阅读 · 0 评论 -
Python三目运算符和用短路逻辑对其进行的模拟写法
类似于C语言中的condition? resultIfTrue:resultIfFalse Python有类似的语法resultIfTrue if condition else resultIfFalse但Python中早期没有类似写法的三目运算符, 所以就出现了一种利用短路逻辑, 用and和or来模拟三目运算符的写法, 例如:result=x<y and x or y注意在P...原创 2018-03-19 08:16:23 · 600 阅读 · 0 评论 -
使用matplotlib经验合集
#x为横座标的列表,y为纵坐标的列表#调用plot函数,这并不会立即显示函数图像 plt.plot(x,y) #使用xlabel函数添加X轴的标签 plt.xlabel('x') #使用ylabel函数添加y轴的标签 plt.ylabel('y(x)') #调用show函数显示函数图像 plt.show() ...原创 2018-03-29 20:59:52 · 220 阅读 · 0 评论 -
Python使用闭包注意的地方
闭包中返回的函数并没有立刻执行,而是在调用时才去执行def count(): fs = [] for i in range(1, 4): def f(): return i*i fs.append(f) return fsf1, f2, f3 = count()在上面的例子中,每次循环,都创建了一个新...转载 2018-03-20 13:49:19 · 182 阅读 · 0 评论 -
Ubuntu下多个Python版本共存
一个方法是使用virtuallen环境,另一方法是使用pyenvvirtuallen使用virtuallen管理多个python版本,需要先安装多个python环境1. ubuntu下源代码安装python从http://www.python.org/download/下载源文件。编译安装tar zxvf Python-2.7.6.tgzcd Python-2.7.6...原创 2018-06-10 10:20:55 · 4771 阅读 · 0 评论