当foo调用子函数 bar, 又会创建一个栈帧 所有的栈帧都是分配在堆内存(栈帧一直在堆内存之中)上,这就决定了栈帧可以独立于调用者存在"""#import dis#print(dis.dis(foo)) #查看运行的字节码过程foo()print(frame.f_code.co_name)#barcaller_frame =frame.f_backprint(caller_frame.f_code.co_name)#f...
浏览器的本质就是一个socket客户端遵循HTTP协议,HTTP协议的本质:通过\r\n分割的规范+请求响应之后断开连接。HTTP协议是建立在tcp之上的,HTTP是一种规范,它规定了发送数据的数据格式,这个数据格式是通过\r\n进行分割的,请求头与请求体也是通过2个\r\n分割的。响应的时候,响应头与响应体也是通过\r\n分割,并且规定...
Redis Redis是一个高性能的Key-Value数据库。 学习目标 能够描述出什么是 nosql 能够说出 Redis 的特点 能够根据参考资料修改常用Redis配置 能够写出Redis中string类型数据的增删改查操作命令 能够写出Redis中hash类型数据的增删改查相关命令 能够说出R
bin文件的第一个属性用“d”表示,“d”在Linux中表示该文件是一个目录文件。(第一个字符代表这个文件是目录、文件、或超链接文件等等)。 当为[ d ]则是目录 当为[-]则是文件; 若是[ l ]则表示为链接文档(link file); 若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置); 若是[ ...
一、Linux磁盘管理 Linux磁盘管理好坏直接关系到整个系统的性能问题,Linux磁盘管理常用三个命令为df、du、fdisk。 df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分区 1、df df [-ahikHTm] [目录或文件名] 检查文件系统的磁盘空间
启动vi/vim进入命令模式,按下i切换到输入模式。以下常用的命令模式: i 切换到输入模式,以输入字符。 x 删除当前光标所在处的字符。 : 切换到底线命令模式,以在最底一行输入命令。 2、输入模式 在命令模式下按下i就进入了输入模式,在输入模式,可以使用以下按键: ...
01-阻塞-非阻塞-同步-异步 去看评论,看见比较说得好的一个同学的,记下来,帮助自己更好理解这些
它支持各种浏览器,包括 Chrome,Safari,Firefox 等主流界面式浏览器,如果你在这些浏览器里面安装一个 Selenium 的插件,那么便可以方便地实现Web界面的测试。换句话说叫 Selenium 支持这些浏览器驱动。话说回来,PhantomJS(无头浏览器)不也是一个浏览器吗,那么 Selenium 支持不?答案是肯定的,这样二者便可以实现无缝对接了...
requests模块基础 什么是requests模块 requests模块是python中原生基于网络模拟浏览器发送请求模块。功能强大,用法简洁高效。 为什么要是用requests模块 用以前的urllib模块需要手动处理url编码 手动处理post参数 处理cookie和代理操作繁琐 ...
将一组元素看成一个序列,元素在序列的位置和顺序。这样的一组序列元素的组织形式,我们可以抽象为线性表。 根据线性表的实际存储方式,分为两种实现模型: 1、顺序表:将元素顺序地存放在一块连续的存储区,元素间的顺序关系由它们的存储顺序自然表示。 2、链表:将元素存放在通过连接构造起来的一系列存储快中。