文章目录一:python解释器与IPython基础1.python解释器2.IPython基础二:Jupyternotebook三:一些常用技巧1.Tab补全2.内省3.中断代码4.复制代码5.快捷键6.魔法函数一:python解释器与IPython基础1.python解释器python是一种解释性语言。python解释器通过一次执行一条语句来运行程序。在安装python时,默认的是官方版本的解释器:CPython,这个解释器是用C语言开发的,所以叫CPy
系统 2019-09-27 17:52:44 2239
上集回顾上一节我们学了一些数字的数学运算,了解了运算优先级PMDAS。变量和命名程序输入和运行结果没问题,不过一开始运行的时候产生了出错消息:这条消息的意思是在第5行的“cars_not_driven=cars-drivers"语句中,变量drivers没有被定义。回到程序中查看,确实是赋值变量drivers的语句中错误拼写了该单词,从而只有drives的变量,而没有我们预期的drivers的变量,用起来自然会产生报错。巩固练习1、使用浮点数作为space
系统 2019-09-27 17:52:36 2239
目前我们已经会使用Lock去对公共资源进行互斥访问了,也探讨了同一线程可以使用RLock去重入锁,但是尽管如此我们只不过才处理了一些程序中简单的同步现象,我们甚至还不能很合理的去解决使用Lock锁带来的死锁问题。所以我们得学会使用更深层的解决同步问题。Python提供的Condition对象提供了对复杂线程同步问题的支持。Condition被称为条件变量,除了提供与Lock类似的acquire和release方法外,还提供了wait和notify方法。使用
系统 2019-09-27 17:50:56 2239
直接赋值和copy的区别:直接赋值:其实就是对象的引用(别名)。浅拷贝(copy):拷贝父对象,不会拷贝对象的内部的子对象。深拷贝(deepcopy):copy模块的deepcopy方法,完全拷贝了父对象及其子对象。例子:dict1={'user':'runoob','num':[1,2,3]}dict2=dict1#浅拷贝:引用对象dict3=dict1.copy()#深拷贝:深拷贝父对象(一级目录),子对象(二级目录)不拷贝,还是引用#修改data数据
系统 2019-09-27 17:49:05 2239
Recursivearticles(递归篇)Feibosequencedeffib(number):ifnumber==0ornumber==1:returnnumberelse:returnfib(number-1)+fib(number-2)foriinrange(8):print("fib(%2d)=%2d"%(i,fib(i)))Wecancontrolthetimeofthefunction.deffib(number):ifnumber==0o
系统 2019-09-27 17:48:41 2239
Django内置了分页设置,但不够灵活,需要我们自定义分页。下面代码考虑了利用bootstrap分页组件来实现页面美化,如果不想使用,可以不调用url_format_by_bootstrap函数,即可实现普通分页。具体的参数和代码均有注释#!python3#@Project:mysite2-pager.py#@Info:自定义分页操作importreclassPageInfo:""":paramcurrent_page当前页码:paramdata要分页的数
系统 2019-09-27 17:47:37 2239
官方文档:https://elasticsearch-py.readthedocs.io/en/master/1、介绍python提供了操作ElasticSearch接口,因此要用python来操作ElasticSearch,首先要安装python的ElasticSearch包,用命令pipinstallelasticsearch安装或下载安装:https://pypi.python.org/pypi/elasticsearch/5.4.02、创建索引假如
系统 2019-09-27 17:47:25 2239
数组数组的设计数组设计之初是在形式上依赖内存分配而成的,所以必须在使用前预先请求空间。这使得数组有以下特性:1、请求空间以后大小固定,不能再改变(数据溢出问题);2、在内存中有空间连续性的表现,中间不会存在其他程序需要调用的数据,为此数组的专用内存空间;3、在旧式编程语言中(如有中阶语言之称的C),程序不会对数组的操作做下界判断,也就有潜在的越界操作的风险(比如会把数据写在运行中程序需要调用的核心部分的内存上)。因为简单数组强烈倚赖电脑硬件之内存,所以不适
系统 2019-09-27 17:46:17 2239
1、需求我们的代码已经变得无法阅读,到处都是硬编码的切片索引,我们想优化他们。2、解决方案代码中如果有很多硬编码的索引值,将导致可读性和维护性都不佳。内置的slice()函数会创建一个切片对象,可以用在任何运行进行切片操作的地方。items=[0,1,2,3,4,5,6]a=slice(2,4)print(items[2:4])print(items[a])items[a]=[10,11,12,13]print(items)delitems[a]print
系统 2019-09-27 17:38:37 2239
Python爬虫:一些常用的爬虫技巧总结爬虫在开发过程中也有很多复用的过程,这里总结一下,以后也能省些事情。1、基本抓取网页get方法importurllib2url"http://www.baidu.com"respons=urllib2.urlopen(url)printresponse.read()post方法importurllibimporturllib2url="http://abcde.com"form={'name':'abc','pass
系统 2019-09-27 17:38:00 2239