从入门到入土:基于Python采用TCP协议实现通信功能的程序

此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出。欢迎各位前来交流。(部分材料来源网络,若有侵权,立即删除)
本人博客所有文章纯属学习之用,不涉及商业利益。不合适引用,自当删除!
若被用于非法行为,与我本人无关

基于Python采用TCP协议实现通信功能的程序

代码

客户端

import socket

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#创建socket对象,选择AF_INET的目的是使用IPv4进行通信,SOCK_STREAM提供面向连接的稳定数据传输
ip=socket.gethostname()
#ip=''

port=9999

s.connect((ip,port))

while True:

    while True:
        mes = input("请输入要发送的信息:")
        if mes != "exit":
            T_mes = bytes(mes,encoding="gbk")
            s.send(T_mes)
            data=s.recv(1024)
            print(str(data,encoding="gbk"))
        else:
            break;
    if mes == "exit":
        break;
        
s.close()

服务端

import socket
import platform
import psutil

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)#创建socket对象,选择AF_INET的目的是使用IPv4进行通信,SOCK_STREAM提供面向连接的稳定数据传输
ip=socket.gethostname()
#ip=''
port=9999
s.bind((ip,port))#绑定端口
s.listen(5)#设置最大连接数

while True:
    print("服务器启动,正在监听客户端连接")
    connet, addr = s.accept()  # 建立客户端连接
    while True:
        data=connet.recv(1024).decode()
        print('客户端发送内容:',data)
        if data == "show me OS info":
            os = platform.uname()
            reply01 = bytes(str(os), encoding="gbk")
            connet.send(reply01)
        else:
            if data == "show me Disk info":
                m=[]
                a = str(psutil.disk_partitions())+str(len(psutil.disk_partitions()))
                reply02 = bytes(a,encoding="gbk")
                connet.send(reply02)
            else:
                    reply00 = bytes("命令无效\n", encoding="gbk")
                    connet.send(reply00)
s.close()

运行效果

  • 首先启动服务端
    在这里插入图片描述
  • 然后启动客户端
    在这里插入图片描述
  • 可以发送指定的命令,不过需要自行编写,我这边写了一个查看OS版本和一个磁盘分区情况查询
show me OS info
show me Disk info

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 服务端也是有收到客户端发送过来的数据

end

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Simulink是一款强大的仿真工具,用于设计、模拟和分析各种系统的行为。下面是一个从入门入土的Simulink仿真教程。 1. 软件安装:首先需要下载和安装Simulink软件。在MathWorks官方网站上找到适合的版本,并按照指示进行安装。 2. Simulink基础:打开Simulink后,可以看到一个模块化的仿真环境。了解基本的Simulink界面、工具栏和库,这些是使用Simulink进行仿真的基础。 3. 模型建立:使用Simulink可以通过将各种模块组合在一起来建立模型。通过从库中拖拽模块到仿真界面,使用线连接相应的模块,可以构建出一个完整的系统模型。 4. 参数设置:对于每个模块,都可以设置相应的参数。这些参数可根据需要进行调整,以便模型可以更准确地模拟真实系统的行为。 5. 信号输入:创建一个仿真的关键是提供输入信号。可以通过添加信号源模块来生成不同类型的输入信号,如恒定值、正弦波、脉冲等。 6. 仿真运行:配置好模型和输入信号后,可以点击运行按钮开始仿真。仿真结果将在仿真器窗口中显示,此时可以观察系统的行为。 7. 结果分析:Simulink提供了多种工具用于分析仿真结果。可以绘制输出信号的波形图,计算系统的响应时间、频率响应等。 8. 优化改进:根据分析结果,可以调整模型参数以改进系统的性能。这包括调整模块参数、修改模型结构等。 9. 进阶功能:通过进一步学习和实践,还可以掌握更高级的Simulink功能,如使用MATLAB脚本进行仿真、使用状态流图进行建模等。 10. 深入学习:要真正掌握Simulink,需要不断深入学习和实践。可以参考Simulink的官方文档、视频教程和论坛,以及阅读相关书籍。 总之,通过上述步骤,您可以从入门入土地掌握Simulink的基本原理和使用方法,能够进行各种系统模型的建立和仿真。但记住,Simulink只是一个工具,对于真正理解和解决复杂系统问题,还需要深入学习掌握相关的系统理论和建模方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值