简介python动态执行字符串代码片段(也可以是文件),一般会用到exec,eval。execexec_stmt::="exec"or_expr["in"expression[","expression]]注意:exec是一个语法声明,不是一个函数.也就是说和if,for一样.官方文档对于exec的解释ThisstatementsupportsdynamicexecutionofPythoncode.exec的第一个表达式可以是:1.代码字符串2.文件对象
系统 2019-09-27 17:53:01 2321
前言如果大家在网上搜索Python正则表达式,你将会看到大量的垃圾文章会这样写代码:importrepattern=re.compile('正则表达式')text='一段字符串'result=pattern.findall(text)这些文章的作者,可能是被其他语言的坏习惯影响了,也可能是被其他垃圾文章误导了,不假思索拿来就用。在Python里面,真的不需要使用re.compile!为了证明这一点,我们来看Python的源代码。在PyCharm里面输入:i
系统 2019-09-27 17:52:47 2321
前言最近学习了Fiddler抓包工具的简单使用,通过抓包,我们可以抓取到HTTP请求,并对其进行分析。现在我准备尝试着结合Python来模拟GitHub登录。Fiddler抓包分析首先,我们想要模拟一个网站的登录,我们必须要简单了解其大致过程。在这里,我通过Fiddler来抓取GitHub登录的请求,从网页上登录的URL为:https://github.com/login,抓包结果如下:左边的是会话列表,右边的是请求和响应的数据。一般情况下,登录都是用PO
系统 2019-09-27 17:52:33 2321
在接触python时最开始接触的代码,取长方形的长和宽,定义一个长方形类,然后设置长方形的长宽属性,通过实例化的方式调用长和宽,像如下代码一样。classRectangle(object):def__init__(self):self.width=10self.height=20r=Rectangle()print(r.width,r.height)此时输出结果为1020但是这样在实际使用中会产生一个严重的问题,__init__中定义的属性是可变的,换句话
系统 2019-09-27 17:52:24 2321
Python中,获取随机数的方法大致有如下:importrandom#导入random#python中利用random获取一个0到1的随机浮点数a=random.random()printa#打印结果#python中利用random获取一定范围内的(10到20)随机浮点数b=random.uniform(10,20)printb#python中利用random获取一定范围内(10到20)的随机整数c=random.randint(10,20)printc#
系统 2019-09-27 17:52:07 2321
getattr`getattr`函数属于内建函数,可以通过函数名称获取复制代码代码如下:value=obj.attributevalue=getattr(obj,"attribute")使用`getattr`来实现工厂模式复制代码代码如下:#一个模块支持html、text、xml等格式的打印,根据传入的formate参数的不同,调用不同的函数实现几种格式的输出importstatsoutdefoutput(data,format="text"):outpu
系统 2019-09-27 17:51:59 2321
首先是数据源:#需要求加权平均值的数据列表elements=[]#对应的权值列表weights=[]使用numpy直接求:importnumpyasnpnp.average(elements,weights=weights)附纯python写法:#不使用numpy写法1round(sum([elements[i]*weights[i]foriinrange(n)])/sum(weights),1)#不使用numpy写法2round(sum([j[0]*j[
系统 2019-09-27 17:50:32 2321
生成模拟数据编写generate_log.py#coding=UTF-8importrandomimporttimeurl_paths=["class/112.html","class/128.html","class/145.html","class/130.html","class/146.html","class/131.html","learn/821","course/list"]ip_slices=[132,156,124,10,29,167,
系统 2019-09-27 17:50:31 2321
实现步骤:1、通过水平投影对图形进行水平分割,获取每一行的图像;2、通过垂直投影对分割的每一行图像进行垂直分割,最终确定每一个字符的坐标位置,分割出每一个字符;先简单介绍一下投影法:分别在水平和垂直方向对预处理(二值化)的图像某一种像素进行统计,对于二值化图像非黑即白,我们通过对其中的白点或者黑点进行统计,根据统计结果就可以判断出每一行的上下边界以及每一列的左右边界,从而实现分割的目的。下面通过Python+opencv来实现该功能首先来实现水平投影:im
系统 2019-09-27 17:48:51 2321
一、排序【这里介绍冒泡排序、选择排序、快速排序和插入排序】1.冒泡排序(1)原理解释:冒泡排序,分多轮排序。1)每一轮都是从上层的第一个数开始与其下一个数进行对比,如果大于下一个数就进行交换,下次对比就从上面第二个数【不管之前有无交换】再与其下一个数进行比较,依次比较到最后一个数。【如图i的移动变化】2)第一轮比较【j=0】。比较了最底下第二个数和最底下这个数后,即第一轮比较完。所以第一轮比较的次数为n-1次,即从上面第一个数一直比较到底下第二个数。【其中
系统 2019-09-27 17:48:20 2321
浏览器的简单操作#导入webdriver模块#创建driver对象,指定Chrome浏览器driver=webdriver.Chrome()#窗口最大化driver.maximize_window()#访问百度driver.get("http://baidu.com")driver.get("http://sina.com")#后退driver.back()#前进driver.forward()#刷新driver.refresh()#关闭窗口driver.
系统 2019-09-27 17:47:25 2321
python中正则表达式使用文章目录python中正则表达式使用一、简介二、使用2.1常用规则2.1.1正则表达式字符串写法2.1.2常用匹配规则2.1.3贪婪与非贪婪匹配2.2常用方法2.2.1编译2.2.2匹配2.2.3查找2.2.4替换2.2.5切分2.3分组2.3.1分组使用2.3.2指定分组不捕获2.3.3分组特殊规则2.4断言一、简介这里介绍python中的正则表达式使用,包含正则表达式常用规则、常用方法、贪婪与非贪婪匹配、分组、断言等操作。二
系统 2019-09-27 17:46:46 2321
大家在安装程序或下载文件时,通常都能看到进度条,提示你当前任务的进度。其实,在python中实现这个功能很简单,下面是具体代码。在实际应用中,你完全可以根据自己的要求进行修改!比如,示例中是通过time.sleep()方法进行时间延迟,你完全可以根据实际的程序运行耗时进行控制;同样,在进度百分比处,你也可以显示实际的进度比,而不是例子中机械的自增百分比。importsysimporttimedefview_bar(num,total):rate=num/t
系统 2019-09-27 17:38:09 2321
一名大三(马上大四实习)软件工程学子,入门基础的所有内容都是我在观看网易云课堂的Alex老师的Python课程之后自己所留下的复习笔记,以便加深自己的印象。本文非常非常非常的基础!!!一、开发工具的选择我下载了多款IDE工具,包含eclipse+pydevAnacondacanopypycharm最后通过多方面综合(安装/环境配置过程操作难度,后期运用起来的难易程度)最后选择了Pycharm,因为就我个人来看,我感觉学生党用jetbrains的IDE真的是
系统 2019-09-27 17:56:28 2320
一、什么是高阶函数在计算机编程语言中,高阶函数指的是接受函数作为输入或输出的函数。二、高阶函数的特性函数本身也可以赋值给变量变量可以指向函数f=abs#abs()取绝对值函数,将函数赋给变量fprint(f(-10))#输出结果-10的绝对值三、内置高阶函数map()map():接收两个参数,一个是函数一个是序列map()将传入的函数依次作用到序列的每个元素,并且把结果作为新的序列返回例:对一个序列[-1,3,-4,-5]的每一个元素求绝对值代码:结果:例
系统 2019-09-27 17:54:46 2320