Python

python函数的作用域及关键字详解

函数的作用域python中的作用域分4种情况:L:local,局部作用域,即函数中定义的变量;E:enclosing,嵌套的父级函数的局部作用域,即包含此函数的上级函数的局部作用域,但不是全局的;G:globa,全局变量,就是模块级别定义的变量;B:built-in,系统固定模块里面的变量,比如int,bytearray等。搜索变量的优先级顺序依次是:作用域局部>外层作用域>当前模块中的全局>python内置作用域,也就是LEGB。local和enclos

系统 2019-09-27 17:53:09 2255

Python

八大排序算法使用python实现

一、冒泡排序冒泡排序算法的运作如下:比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。以上节选自维基百科代码实现:defbubble_sort(numberlist):length=len(numberlist)foriinrange(lengt

系统 2019-09-27 17:52:52 2255

Python

Python使用random和tertools模块解一些经典概率问题

random模块中的常用函数复制代码代码如下:random()返回一个位于区间[0,1]内的实数;uniform(a,b)返回一个位于区间[a,b]内的实数;randint(a,b)返回一个位于区间[a,b]内的整数;choice(sequence)返回一个位于sequence中的元素,其中,sequence为一个有序序列,如list、string或者tuple等类型;randrange([start],stop[,step])等效于choice(rang

系统 2019-09-27 17:52:43 2255

Python

Python 自动登录淘宝并保存登录信息的方法

前段时间时间为大家讲解了如何使用requests库模拟登录淘宝,而今天我们将对该功能进行丰富。所以我们把之前的那个版本定为1.0,而今天修改的版本定为2.0。版本的迭代意味着功能的升级,那今天的2.0版本较之前的1.0版本有哪些改进呢?我们一起来看看!1.0版本实现步骤我们先来回顾一下模拟登录淘宝的步骤吧,我们还是先看看淘宝登录的详细时序图:这是淘宝网登录的一个请求流程,而我们模拟登录也是根据这样的一个流程。但是在代码模拟登录的时候就不会分的这么细,我们根

系统 2019-09-27 17:52:34 2255

Python

粒子群算法的python实现

什么是粒子群算法粒子群算法,也称粒子群优化算法或鸟群觅食算法(ParticleSwarmOptimization,PSO)。由J.Kennedy和R.C.Eberhart等人于1995年提出。其属于进化算法的一种,也是从随机解出发,通过迭代寻找最优解,其通过适应度来评价解的品质。这种算法以其实现容易、精度高、收敛快等优点引起了学术界的重视,并且在解决实际问题中展示了其优越性。求解过程PSO通过模拟鸟群的捕食行为完成最优解的求取。假设一群鸟在一个空间捕捉食物

系统 2019-09-27 17:52:21 2255

Python

Python网络爬虫——requests模块(1)

-基于如下5点展开requests模块的学习什么是requests模块requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求。功能强大,用法简洁高效。在爬虫领域中占据着半壁江山的地位。为什么要使用requests模块因为在使用urllib模块的时候,会有诸多不便之处,总结如下:手动处理url编码手动处理post请求参数处理cookie和代理操作繁琐......使用requests模块:自动处理url编码自动处理po

系统 2019-09-27 17:52:20 2255

Python

使用Filter过滤python中的日志输出的实现方法

事情是这样的,我写了一个tornado的服务,过程当中我用logging记录一些内容,由于一开始并没有仔细观察tornado自已的日志管理,所以我就一般用debug来记录普通日志,error记录有问题的日志,但是当服务跑起来以后才发现,tornado的访问日志的级别是info,也就是20,debug是10的,所以如果我定义了日志的级别是debug,那么默认情况下肯定也会输出到日志文件中的。但是我现在并不关心访问日志,而且由于我这个服务可能每时每刻都会有访问

系统 2019-09-27 17:50:30 2255

Python

Python编程从入门到实践--第四章

文章目录遍历列表深入的了解循环在for循环中执行更多的操作在for循环后结束执行一些操作避免缩进错误忘记缩进忘记缩进额外的代码行不必要的缩进循环后不必要的缩进遗漏了冒号小插曲创建数值列表使用函数range()使用range()创建数字列表对数字列表执行简单的统计计算列表解析小插曲使用列表的一部分切片遍历切片复制列表小插曲元组定义元组遍历元组中的所有值修改元组变量小插曲设置代码格式格式指南缩进行长空行小插曲遍历列表通俗易懂地来说,遍历列表就是把你列表中的每个

系统 2019-09-27 17:48:49 2255

Python

Python2和3字符编码的区别知识点整理

python解释器运行代码的流程启动python解释器(相当于文本编辑器)打开文件,显示这个字符并检查语法(涉及字符编码,a=1只是一个很普通的字符)解释字符(涉及字符编码,再去内存空间生成一个a=1的变量)python2用的是ascii,python3默认是utf8读取字符#coding:gbk会告诉python3解释器用gbk编码读取字符python3(了解)你看到的其实是unicode但是终端帮你把这个unicode的0和1做一个转换,从unicod

系统 2019-09-27 17:48:12 2255

Python

Python with as 的实现原理

有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,Python的with语句提供了一种非常方便的处理方式。一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后关闭文件句柄。如果不用with语句,代码如下:file=open("/tmp/foo.txt")data=file.read()file.close()这里有两个问题。一是可能忘记关闭文件句柄;二是文件读取数据发生异常,没有进行任何处理。下面是处理异常的加强版本:file

系统 2019-09-27 17:48:03 2255

Python

Python从小白到攻城狮(2)——数据类型和变量

本系列Python文章基于Python3版本,关于python的安装和配置自行百度,这里不做详细介绍。接下来将介绍Python基础——数据类型和变量。数据类型在Python中,能够直接处理的数据类型有以下几种:整型Python中可以处理任意大的整数,包括负整数。支持二进制(如0b100,换算成十进制是4)、八进制(0o100,换算成十进制是64)、十六进制(0x100,换算成十进制为256)的表示法。浮点型浮点数也就是小数,之所以称为浮点数,是因为按照科学

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

Python

python第六次作业-随笔

接触了Python这么多时间后,感触良多。每一次学习都是不一样的体验,Python课也是一个很不一样的上课体验。这样的课程和其他的课程完全两样,让我们一改对传统课程的认知,由于机房的环境,自带电脑的我们也会更快进入编程环境中。如果说以往的上课让我们觉得枯燥,这样上课的方式能让学生更快地进入状态。博客园的教学方式也是十分的新颖,电子作业的提交、网上作业的发布,使得学习生活借助了互联网的便利。尽管作业中的代码是对所有人开放的,但开源的好处可想而知。每个初学者都

系统 2019-09-27 17:47:04 2255

Python

利用 Numba 加速 Python 程序,提速几十倍

作者:chen_h微信号&QQ:862251340微信公众号:coderpai当你嫌弃Python速度慢时Python编程语言几乎可用于任何类型的快速原型设计和快速开发。它具有很强的功能,例如它的高级特性,具有几乎人性化可读性的语法。此外,它是跨平台的,具有多样性的标准库,它是多范式的,为程序员提供了很多自由,可以使用不同的编程范例,如面向对象,功能或者程序。但是,有时我们系统的某些部分具有高性能要求,因此Python提供的速度可能远远不够,那么,我们如何

系统 2019-09-27 17:46:56 2255

Python

python 的 scapy库,实现网卡收发包的例子

问题:测试时收发流采用TestCenter、SmartBit等仪表来进行。如果仍采用其进行自动化冒烟,则会带来效率低、成本高的问题。解决方案:采用网卡来收发流,虽然有性能统计上的缺陷,但可以验证一些基本功能,且经济。采用scapy模块,1-获取计算机网卡的iface,并预先设计好用哪些iface进行收发流;2-conf.L2listen对各个iface进行监听3-subprocess.Popen来调用tShark.exe启动抓包,也可以调用ping.exe

系统 2019-09-27 17:46:36 2255

Python

鼠标翩飞,不如Python抓取几分钟!工作难找?只是你没掌握方法罢了

最近,收到了一封读者来信。这名读者准备实习,想要找工作,但是在找工作的时候,却遇到了很多的问题。起初,他对找工作是很抗拒的。因为自己的专业不行,学校一般,而这也导致他失去了和HR谈薪资的勇气。虽然他觉得自己找工作之路一筹莫展,但是他却发现了另一件事。就是现在很多公司招聘的时候都写上了,有Python编程经验优先这样的条件。而这个条件,也是让没有学过Python的他望而却步。最初,我看到这些要求的时候也感觉比较好奇,但是仔细想想却也是感觉颇有道理。现在互联网

系统 2019-09-27 17:46:18 2255