一、网络基础
1、端口
1 - 端口,是什么?为什么要有? 2 端口是为了将同一个电脑上的不同程序进行隔离。 3 4 IP是找电脑 5 端口是找电脑上的程序 6 7 示例: 8 MySQL是一个软件,软件帮助我们在硬盘上进行文件操作。默认端口:3306 9 Redis是一个软件,软件帮助我们在内存里进行数据操作。默认端口:6379 10 网站默认端口:80 ,访问时:http://www.luffycity.com:80 11 网站默认端口:443 ,访问时:https://www.luffycity.com:443 12 13 范围: 14 1 - 65535 15 1 - 1024
一般情况:
8001、8000
2、OSI 7层模型
1 7层: 2 自己写的代码:自己代码+框架 3 应用层,使用软件。 打开软件或网站 4 表示层,看到数据,如图片和视频。 生产数据:szwwd 5 会话层,保持登录或链接状态。 应用偷偷携带一点其他数据:令牌 19rRNAwf8GVe6xyT9kJPIu5SlQc 6 7 socket模块: 8 传输层,TCP/UDP [TCP][szwwd|19rRNAwf8GVe6xyT9kJPIu5SlQc] 9 网络层,IP 【IP】【[TCP][szwwd|19rRNAwf8GVe6xyT9kJPIu5SlQc]】 10 数据链路层,MAC [MAC][【IP】【[TCP][szwwd|19rRNAwf8GVe6xyT9kJPIu5SlQc]】] 11 物理层,将数据转换成电信号发送 12 13 5层: 14 应用层 15 应用层 表示层 16 会话层 17 传输层 18 网络层 19 数据链路层 20 物理层 21 4层: 22 应用层 23 应用层 表示层 24 会话层 25 传输层 26 网络层 27 物理层 数据链路层 28 物理层 29 30 注意:7层背会。
3、TCP三次握手、四次挥手
1 socket客户端向服务端发起连接请求:三次握手 2 client.connect((....)) 3 客户端 服务端 4 我能打你吗 5 来呀来呀 6 好的,我这就来 7 ----------------------------- 8 client.send('发送数据') 9 收发数据 收发数据 10 11 客户端和服务端断开连接:四次挥手 12 client.close() 或 conn.close() 13 ----------------------------- 14 我要断开连接 15 断开就断开,等我处理一些手头的事情 16 ... 17 我处理完了,断开吧。 18 拜拜 19 20 21 补充:断开连接时,反应到代码上:抛出异常/发送空内容; 22 23 总结:了解网络相关知识。 25 你与科班出人的人区别: 26 1. 计算机组成原理 27 2. 网络 28 3. 数据结构 29 4. 算法 30 牛逼大学的人+考研的人
二、FTP作业相关
1、进度条
"""""" # 第一个知识点 """ import time print(' 80%',end='') # 是返回该行首位置 end='' 默认end是等于换行 time.sleep(2) print(' 90%',end='') """ # 第二个知识点 """ tpl = "进度条目前是%s%%" %(90,) print(tpl) """ import time def func(size,total_size): val = int(size/total_size * 100) time.sleep(0.1) print(' %s%%|%s' %(val,"#"*val,), end='') for i in range(101): func(i,100)
2、计算文件大小
import os size = os.stat(r'D:sylars15day311.进度条.py').st_size print(size)
3、修改文件名称
import os import shutil # py2 + win:报错 # os.rename('a.text','b.txt') # py2+py3 shutil.move('c.txt','a.txt') # shutil.rmtree('D:sylars15day30')