随笔分类 - Python
摘要:1 概念梳理: 1.1 线程 1.1.1 什么是线程 线程 是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。一个线程是一个execution context(执行上下文
阅读全文
摘要:搭建了一个本地wordpress,写一个基于多线程异步I/O的暴力破解 1 测试 提交错误的表单数据时,查看请求参数 登录时发送的cookie 2 登录分析 经过多次测试,发现无论是输入正确的密码还是错误的密码,这些登录需要提交的参数是不会改变的。并且只要登录成功,服务器一定会返回包含session
阅读全文
摘要:1 拷贝 1.1 浅拷贝 在使用浅拷贝时,对象内部的属性和内容仍然引用原始对象,这样的操作速度很快,而且节省内存。 1.2 深拷贝 如果需要拷贝一些容器对象,还必须递归地拷贝其内部引用的对象。这种深拷贝操作会消耗相当的时间和内存。 2 函数参数传递 2.1 值传递 以上的参数传递过程可简化为一下步骤
阅读全文
摘要:1 版本差异概览 1.1 Python 2.X: str(用于8位文本和二进制数据) unicode(用于宽字符文本) 在Python2中,通用的str类型填补了二进制数据的这一角色(特指python3中的bytes类型),因为字符串也只是字节的序列(单独的unicode类型处理宽字符串)。 在Py
阅读全文
摘要:本文以max()为例,对min/max内建函数进行说明 源码 初级技巧 中级技巧:key属性的使用 当key参数不为空时,就以key的函数对象为判断的标准。 如果我们想找出一组数中绝对值最大的数,就可以配合lamda先进行处理,再找出最大值 高级技巧:找出字典中值最大的那组数据 如果有一组商品,其名
阅读全文
摘要:python下的ssh都需要借助第三方模块paramiko来实现,在使用前需要手动安装。 一、python实现ssh (1) linux下的ssh登录 查看known_hosts文件 (2) python实现ssh (3) python实现sftp 二、传统的免密登录 (1) 生成公钥 使用ssh
阅读全文
摘要:在操作数据库的时候,python2中一般使用mysqldb,但在python3中已经不在支持mysqldb了,我们可以用pymysql和mysql.connector。本文的所有操作都是在python3的pymysql下完成的。 一、基本操作 (1) 查询 (2) 修改 (3) 返回dict类型的数
阅读全文
摘要:1. 异常 (1) 异常处理 e是由Exception类实例化的一个对象 (2) 异常分类 Exception是万能的异常捕捉方法,可以捕捉到任何错误。 |常见异常|| | | | |AttributeError |试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x |IOError
阅读全文
摘要:静态字段。静态方法。类方法。普通属性。类是由type类实例化产生的。类中有一个属性__metaclass__,其用来表示该类由谁来实例化创建,所以,我们可以为__metaclass__设置一个type类的派生类,从而查看类创建的过程。
阅读全文
摘要:面向对象编程 (Object Oriented Programming,OOP) 1. 面向过程编程最易被初学者接受,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,即:将之前实现的代码块复制到现需功能处。 2. Java和C 只支持面向对象编程,而python比较灵活,即支持
阅读全文
摘要:1. 生成器 2. 反射 反射就是根据字符串的形式去对象(某个模块)中操作其成员。 当模块与当前文件不在同一目录下的时候,需要添加fromlist=True,否则python就找不到commens模块: (1) getattr 以字符串的形式,获取模块中的某函数 (2) hasattr 以字符串的形
阅读全文
摘要:1 元字符: 1.1 . .除了换行符以外的任何单个字符 1.2 ^ ^只匹配起始字符 1.3 只匹配结尾字符 1.4 \ 匹配0到多次,等同于{0,} 1.5 + +匹配1到多次,{1,} 1.6 ? ?匹配0到1次,{0,1} 1.7 { } { }自定义匹配次数:{1}匹配1次,{1,2
阅读全文
摘要:1. 系统变量 (1) '\__doc__' 文件注释,在py中代码最上方""" """里面一般写注释,系统会把文件注释自动存放在'\__doc__'这个全局变量里。 (2). '\__file__' 存放所在文件的文件路径 (3). '\__package__' 当前.py文件所在的文件夹,用.划
阅读全文
摘要:本文会涉及到的模块: 1. subprocess 2. logging 1. subprocess 可以执行shell命令的相关模块和函数有: os.system os.spawn os.popen 废弃 popen2. 废弃 commands. 废弃,3.x中被移除 以上执行shell命令的相关的
阅读全文
摘要:本文会涉及到的模块: 1. json、pickle 2. urllib、Requests 3. xml.etree 4. configparser 5. shutil、zipfile、tarfile 1. json & pickle序列化 json,用于 字符串 和 python数据类型 间进行转换
阅读全文
摘要:本文会涉及到的模块: 1. time 2. datetime 3. sys 4. os 5. random 6. re 7. hashlib 模块,用若干代码实现了某个功能的代码集合。 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合。
阅读全文
摘要:一、百分号方式 %[(name)][flags][width].[precision]typecode (name) 可选,用于选择指定的key flags 可选,可供选择的值有: \+ 右对齐;正数前加正号,负数前加负号 \ 左对齐;正数前无符号,负数前加负号; 空格 右对齐;正数前加空格,负数前
阅读全文
摘要:操作文件时,一般需要经历如下步骤: + 打开文件 + 操作文件 + 关闭文件 一、打开文件 文件在open的时候是不会被加到内存中的,只有read或write的时候才会加到内存中。 打开文件的模式有: r ,只读模式【默认】 w,只写模式【不可读;不存在则创建;存在则清空内容;】 x, 只写模式【不
阅读全文
摘要:一、基础 函数的定义 空函数 如果想定义一个什么事也不做的空函数,可以用pass语句: 参数检查 调用函数时,如果参数个数不对,Python解释器会自动检查出来,并抛出TypeError;如果参数类型不对,Python解释器无法检查,可通过内置函数isinstance()来实现。 返回值 在pyth
阅读全文
摘要:一、总览 二、内置函数 abs() all() 遍历一个迭代器,如果都为空,或者每个迭代元素都会true,则返回ture。 问:有哪些元素为True? 答:常见的False有:0,None,“”,[],(),{},剩下的都是True any() 与all()用法一样,只要有一个为真,即为真。 asc
阅读全文