随笔分类 -  python

摘要:原文 安装scapy之前要安装 依赖模块Npcap,不然会报错,安装scap可以使用pip install scapy 阅读全文
posted @ 2019-05-27 18:01 持&恒 阅读(832) 评论(0) 推荐(0)
摘要:在程序中导入时,如下顺序 1、Python 标准库模块2、Python 第三方模块3、应用程序自定义模块 import的搜索顺序: 首先判断这个module是不是built-in即内建模块,如果是则引入内建模块,如果不是则在一个称为sys.path的list中寻找sys.path在python脚本执 阅读全文
posted @ 2019-04-03 10:19 持&恒 阅读(6211) 评论(0) 推荐(2)
摘要:self.conn=MySQLdb.connect(host='localhost',port=3306, user='keystone', passwd='OptValley@4312', db=self.db_name) self.cur = self.conn.cursor() self.cu 阅读全文
posted @ 2019-03-13 11:21 持&恒 阅读(5947) 评论(0) 推荐(0)
摘要:参考原文 在Ubuntu下安装Nginx有以下方法,但是如果想要安装最新版本的就必须下载源码包编译安装。 一、基于APT源安装 安装好的文件位置: /usr/sbin/nginx:主程序 /etc/nginx:存放配置文件 /usr/share/nginx:存放静态文件 /var/log/nginx 阅读全文
posted @ 2018-11-13 15:47 持&恒 阅读(3788) 评论(0) 推荐(0)
摘要:参考原文 对于 Python2.x 版本:(测试通过) 第一步:sudo apt-get install python-dev 第二步:sudo apt-get install python-pip 第三部:sudo pip install uwsgi 对于 Python3.x 版本: 第一步:su 阅读全文
posted @ 2018-11-13 15:28 持&恒 阅读(8502) 评论(0) 推荐(0)
摘要:python中websocket需要我们自己实现握手代码,流程是这样:服务端启动websocket服务,并监听。当客户端连接过来时,(需要我们自己实现)服务端就接收客户端的请求数据,拿到请求头,根据请求头信息封装响应头,并将响应头发给前端,这样就完成了一次握手,接下来服务端和客户端才可以通信。 上代 阅读全文
posted @ 2018-09-28 17:49 持&恒 阅读(8149) 评论(1) 推荐(0)
摘要:原文 见过很多获取服务器本地IP的代码,个人觉得都不是很好,例如以下这些 不推荐:靠猜测去获取本地IP方法 这类代码带有猜测的行为。 如果机器上只有eth0 或者 只有bond0上有IP,那么此类代码都有可能失败,而且还不容易移植到其他平台上。 不推荐:通过hostname来获取本机IP 这个方法是 阅读全文
posted @ 2018-09-19 10:07 持&恒 阅读(970) 评论(0) 推荐(0)
摘要:sys.exit 执行该语句会直接退出程序,这也是经常使用的方法,也不需要考虑平台等因素的影响,一般是退出Python程序的首选方法。 退出程序引发SystemExit异常,(这是唯一一个不会被认为是错误的异常), 如果没有捕获这个异常将会直接退出程序执行, 当然也可以捕获这个异常进行一些其他操作( 阅读全文
posted @ 2018-08-10 18:44 持&恒 阅读(1901) 评论(0) 推荐(0)
摘要:摘抄: 字符串在Python内部的表示是Unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符解码(decode)成unicode,再从unicode编码(encode)成另一种编码。 decode的作用是将其他编码的字符转换成unicode编码,如st 阅读全文
posted @ 2018-08-06 16:45 持&恒 阅读(428) 评论(0) 推荐(0)
摘要:os.popen('ipconfig') 命令返回的结果在调试时乱码了: 我猜这里输出的内容要和控制台设置的编码一致,我查了一下我的控制台编码时gbk 这样就好了 阅读全文
posted @ 2018-08-06 16:03 持&恒 阅读(9851) 评论(0) 推荐(0)
摘要:windows下py文件的运行需要安装python,如果是exe文件就可以直接运行 1. 直接在命令行用pip安装 pyinstaller 2 在命令行中切换到要打包的程序所在目录,直接输入下面的指令即可 阅读全文
posted @ 2018-08-03 18:18 持&恒 阅读(400) 评论(0) 推荐(0)
摘要:原文 settings: 阅读全文
posted @ 2018-08-03 17:02 持&恒 阅读(1083) 评论(0) 推荐(1)
摘要:摘自: https://blog.zengrong.net/post/2167.html https://blog.csdn.net/lanonjj/article/details/51050212 https://www.cnblogs.com/zh605929205/p/7705192.html 阅读全文
posted @ 2018-07-31 09:55 持&恒 阅读(502) 评论(0) 推荐(0)
摘要:原文 在一个对象中绑定函数,称为这个对象的方法。 在JavaScript中,对象的定义是这样的: 但是,如果我们给xiaoming绑定一个函数,就可以做更多的事情。比如,写个age()方法,返回xiaoming的年龄: 绑定到对象上的函数称为方法,和普通函数也没啥区别,但是它在内部使用了一个this 阅读全文
posted @ 2018-07-24 10:41 持&恒 阅读(2068) 评论(0) 推荐(0)
摘要:在一个模块中,我们可能会定义很多函数和变量,但有的函数和变量我们希望给别人使用,有的函数和变量我们希望仅仅在模块内部使用。在Python中,是通过_前缀来实现的。 正常的函数和变量名是公开的(public),可以被直接引用,比如:abc,x123,PI等; 类似__xxx__这样的变量是特殊变量,可 阅读全文
posted @ 2018-07-23 16:01 持&恒 阅读(516) 评论(0) 推荐(0)
摘要:原文 Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function)。要注意,这里的偏函数和数学意义上的偏函数不一样。 在介绍函数参数的时候,我们讲到,通过设定参数的默认值,可以降低函数调用的难度。而偏函数也可以做到这一点。举例如下: int()函数 阅读全文
posted @ 2018-07-23 15:36 持&恒 阅读(332) 评论(0) 推荐(0)
摘要:由于函数也是一个对象,而且函数对象可以被赋值给变量,所以,通过变量也能调用该函数。 函数对象有一个__name__属性,可以拿到函数的名字: 现在,假设我们要增强now()函数的功能,比如,在函数调用前后自动打印日志,但又不希望修改now()函数的定义,这种在代码运行期间动态增加功能的方式,称之为“ 阅读全文
posted @ 2018-07-23 11:47 持&恒 阅读(221) 评论(0) 推荐(0)
摘要:当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便。 在Python中,对匿名函数提供了有限支持。还是以map()函数为例,计算f(x)=x2时,除了定义一个f(x)的函数外,还可以直接传入匿名函数: 通过对比可以看出,匿名函数lambda x: x * x实际上就是: 关键 阅读全文
posted @ 2018-07-23 11:29 持&恒 阅读(325) 评论(0) 推荐(0)
摘要:原文 函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回。 我们来实现一个可变参数的求和。通常情况下,求和的函数是这样定义的: 但是,如果不需要立刻求和,而是在后面的代码中,根据需要再计算怎么办?可以不返回求和的结果,而是返回求和的函数: 当我们调用lazy_sum()时 阅读全文
posted @ 2018-07-23 11:26 持&恒 阅读(194) 评论(0) 推荐(0)
摘要:原文 排序也是在程序中经常用到的算法。无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小。如果是数字,我们可以直接比较,但如果是字符串或者两个dict呢?直接比较数学上的大小是没有意义的,因此,比较的过程必须通过函数抽象出来。 Python内置的sorted()函数就可以对list进行排序 阅读全文
posted @ 2018-07-23 11:11 持&恒 阅读(613) 评论(0) 推荐(0)