【无标题】

目录

1.with open语句

2.递归

3.隐式递归

4.堆和栈是在计算机内存中用于存储数据的两种不同的区域,它们有以下几个方面的区别

5.创建虚拟环境与打开虚拟环境

6.TOP三次握手四次挥手

7.redis过期策略:

8、redis事务:

9、计算机的电子元件

10、64位的解释

1.with open语句

1.自动关闭文件: 使用with open语句可以确保在操作结束后自动关闭文件。在代码块执行完毕后,无论是正常执行还是发生异常,文件都会被正确关闭。这样可以避免因为忘记关闭文件而导致资源泄漏的问题。
2.简洁和优雅: with open语句的语法简洁明了,使得代码更加清晰和易读。它可以将文件操作的相关代码块封装在一个作用域内,提高了代码的可维护性。

2.递归

特点:
一个函数内部调用自己,函数内部可以调用其他函数,当然在函数内部也可以调用自己。

代码特点:

1. 函数内部的代码是相同的,只是针对参数不同,处理的结果不同

2. 当参数满足一个条件时,函数不再执行。这个非常重要,通常被称为递归的出口,否则会出现死循环

3.隐式递归

隐式递归是一种递归算法的实现方式,期中递归调用并没有明确地出现在代码中,而是通过函数或方法内部的循环来隐式地实现递归。

4.堆和栈是在计算机内存中用于存储数据的两种不同的区域,它们有以下几个方面的区别

1. 分配方式:堆是由程序员手动管理的,需要显式地进行内存分配和释放,以便存储动态分配的数据。栈是自动分配和释放的,数据存储在栈上以支持函数调用和局部变量的使用。

2. 内存管理:在堆中,程序员需要手动分配内存,并负责释放不再使用的内存。而栈有一个管理机制,它会自动分配和释放内存,不需要手动操作。

3. 空间大小:堆的空间大小通常比较大,取决于操作系统和计算机硬件的限制。栈的空间相对较小,大小通常是固定的,取决于编译器或操作系统的限制。

4. 分配速度:堆空间的分配速度相对较慢,因为需要搜索合适的内存块,以满足动态分配的需求。栈的分配速度相对较快,因为只需要移动栈指针来分配内存。

5. 存储数据类型:堆可以存储各种数据类型,包括基本类型和自定义类型。而栈主要存储局部变量和函数调用的上下文信息,如栈帧和返回地址。

6. 存在时间:堆上分配的内存可能会在程序的整个生命周期内存在,直到程序员显式释放它。栈上分配的内存只在函数调用期间存在,函数返回后会自动释放。

7. 后果:当堆中的内存分配不当或未释放时,可能会导致内存泄漏,造成程序性能下降或崩溃。栈上分配的内存不需要手动释放,避免了内存泄漏的风险。

5.创建虚拟环境与打开虚拟环境

1.新建文件夹,打开命令行输入cmd,黑窗口输入Python -m venv 文件名创建虚拟环境

2.打开黑窗口输入workon,在输入mk virtualenv 虚拟环境名,在Python文件打开设置进入interpreter选择新创建的虚拟环境

6.TOP三次握手四次挥手

TCP三次握手:

客户端向服务端发送一个带有 SYN(同步)标志的连接请求报文段。
服务端收到请求后,向客户端发送一个带有 SYN/ACK(同步/确认)标志的确认报文段,表示服务端同意建立连接。
客户端收到确认报文段后,再向服务端发送一个带有 ACK(确认)标志的报文段,表示客户端确认连接建立。
服务端收到确认报文段后,连接建立完成,双方可以开始传输数据。
TCP四次挥手:

客户端发起关闭连接请求,发送一个带有 FIN(结束)标志的报文段。
服务端收到请求后,向客户端发送一个带有 ACK 标志的确认报文段,表示服务端收到关闭请求。
服务端继续发送剩余数据,待数据发送完毕后,向客户端发送一个带有 FIN 标志的报文段。
客户端收到服务端的关闭请求后,发送一个带有 ACK 标志的确认报文段,双方确认关闭连接。

7.redis过期策略:

1,定时过期

每个设置过期时间的key都需要创建一个定时器,到过期时间就会立即清除。该策略可以立即清除过期的数据,对内存很友好;但是会占用大量的CPU资源去处理过期的数据,从而影响缓存的响应时间和吞吐量。

2,惰性过期

只有当访问一个key时,才会判断该key是否已过期,过期则清除。该策略可以最大化地节省CPU资源,却对内存非常不友好。极端情况可能出现大量的过期key没有再次被访问,从而不会被清除,占用大量内存。

3,定期过期

每隔一定的时间,会扫描一定数量的数据库的expires字典中一定数量的key,并清除其中已过期的key。该策略是前两者的一个折中方案。通过调整定时扫描的时间间隔和每次扫描的限定耗时,可以在不同情况下使得CPU和内存资源达到最优的平衡效果。

8、redis事务:

1、单独的隔离操作:

事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。

2、没有隔离级别的概念:

队列中的命令没有提交之前都不会实际被执行,因为事务提交前任何指令都不会被实际执行。

3、不保证原子性 :

事务中如果有一条命令执行失败,其后的命令仍然会被执行,没有回滚。

9、计算机的电子元件

1、第一代计算机逻辑元件采用的是真空电子管,称为电子管数字机,(1946-1958年)
2、第二代计算机采用了晶体管,体积缩小、能耗降低、可靠性提高、运算速度提高,称为晶体管数字机 (1958-1964年) ;
3、第三代计算机硬件方面,逻辑元件采用中、小规模集成电路 (MSI、SSI),称为集成电路数字机(19641970年) ;
4、第四代计算机硬件方面,逻辑元件采用大规模和超大规模集成电路(LSI和VLSI),称为大规模集成电路机 (1970年至今)

10、64位的解释

电脑64位什么意思?
64位的电脑是指能够处理64位数据的电脑,它有更大的内存,更强大的处理能力。64位的电脑可以处理更大的数据,并且有更高的运行速度,可以更好的支持多任务处理。
电脑64位的优势
1.更大的内存容量:64位的电脑可以处理更大的数据,支持更大的内存,可以更好的支持多任务处理.
2.更快的处理速度:64位的电脑可以更快的处理数据,能够更快的运行应用程序,可以提高用户的工作效姿
3.更好的安全性: 64位的电脑可以更好的防止病毒的入侵,保护用户的系统安全。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值