zoukankan      html  css  js  c++  java
  • 网络基础, 进度条, 计算文件大小, shutil模块,

    一. 端口,是什么?为什么要有?
        端口是为了将同一个电脑上的不同程序进行隔离。

        IP是找电脑
        端口是找电脑上的程序

        示例:
            MySQL是一个软件,软件帮助我们在硬盘上进行文件操作。默认端口:3306
            Redis是一个软件,软件帮助我们在内存里进行数据操作。默认端口:6379
            网站默认端口:80 ,访问时:http://www.luffycity.com:80
            网站默认端口:443 ,访问时:https://www.luffycity.com:443

        范围:
            1 - 65535
            1 - 1024 (被其他占用)

            一般情况:
                8000
                8001
                ...


    二. OSI 7层模型
        7层:
            自己写的代码:自己代码+框架
                应用层,使用软件。                      打开软件或网站
                表示层,看到数据,如图片和视频。      生产数据:szwwd
                会话层,保持登录或链接状态。          应用偷偷携带一点其他数据:令牌 19rRNAwf8GVe6xyT9kJPIu5SlQc

            socket模块:
                传输层,TCP/UDP                          [TCP][szwwd|19rRNAwf8GVe6xyT9kJPIu5SlQc]
                网络层,IP                            【IP】【[TCP][szwwd|19rRNAwf8GVe6xyT9kJPIu5SlQc]】
                数据链路层,MAC                          [MAC][【IP】【[TCP][szwwd|19rRNAwf8GVe6xyT9kJPIu5SlQc]】]
                物理层,将数据转换成电信号发送

        5层:
                    应用层
            应用层    表示层
                    会话层
            传输层
            网络层
            数据链路层
            物理层
        4层:
                    应用层
            应用层    表示层
                    会话层
            传输层
            网络层
            物理层    数据链路层
                    物理层


    三. TCP三次握手/四次挥手

        socket客户端向服务端发起连接请求:三次握手
                        client.connect((....))
                            客户端              服务端
                            我能打你吗
                                                来呀来呀
                            好的,我这就来
                            -----------------------------
                        client.send('发送数据')
                            收发数据             收发数据

                  客户端和服务端断开连接:四次挥手
                        client.close() 或 conn.close()
                            -----------------------------
                            我要断开连接
                                                断开就断开,等我处理一些手头的事情
                                                ...
                                                我处理完了,断开吧。
                            拜拜

        断开连接时,反应到代码上:抛出异常/发送空内容;

    四. 进度条

    import time
    print('
    80%',end='')
    time.sleep(2)
    print('
    90%',end='')
    

    五. 计算文件大小

    import os
    size = os.stat(r'D:123.py').st_size
    print(size) 

    六. shutil模块

    import shutil
    shutil.move('c.txt','a.txt')  # 重命名, rename在py2 + win系统下会报错
    shutil.rmtree('D:python')    # 移除文件夹
    
  • 相关阅读:
    IIS7.5应用程序池集成模式和经典模式的区别【转】
    Qt keyPressEvent keyReleaseEvent 分析
    cesium编程中级(二)源码编译
    cesium编程中级(一)添加示例到Sandcastle
    cesium编程中级开篇
    cesium编程入门(九)实体 Entity
    cesium编程入门(八)设置材质
    QPushButton 点击信号分析
    cesium编程入门(七)3D Tiles,模型旋转
    cesium编程入门(六)添加 3D Tiles,并调整位置,贴地
  • 原文地址:https://www.cnblogs.com/NachoLau/p/9606906.html
Copyright © 2011-2022 走看看