Python核心编程(网络编程)[通俗易懂]

Python核心编程(网络编程)[通俗易懂]1、pythonsocket模块内置方法2、tcp服务器伪代码3、tcp客户端伪代码4、socket模块属性5、一个简单的tcp客户端和服务端

大家好,又见面了,我是你们的朋友全栈君。

1、python socket模块内置方法

Python核心编程(网络编程)[通俗易懂]

Python核心编程(网络编程)[通俗易懂]

 

 2、tcp服务器伪代码

Python核心编程(网络编程)[通俗易懂]

 

3、tcp客户端伪代码

Python核心编程(网络编程)[通俗易懂]

4、socket模块属性

Python核心编程(网络编程)[通俗易懂]

Python核心编程(网络编程)[通俗易懂]

 

5、一个简单的tcp客户端和服务端

服务端代码:

# encoding:utf-8
from socket import *
from time import ctime
from datetime import *

# 定义tcpServer监听端口号
HOST = '0.0.0.0'
PORT = 21567
ADDR = (HOST, PORT)
BUFFSIZE=1024
# 初始化一個tcp socket
tcpSvrSock = socket(AF_INET, SOCK_STREAM)
tcpSvrSock.bind(ADDR)
tcpSvrSock.listen(5)
while True:
    print('[%s] wait for connection...'%(datetime.now()))
    tcpClientSock, clientAddr = tcpSvrSock.accept()
    print('[%s] connect from: %s...'%(datetime.now(),clientAddr))
    while True:
        recieveData = tcpClientSock.recv(BUFFSIZE)
        if not recieveData:
            break
        print('[%s] 收到报文:%s' %(datetime.now(),recieveData.decode('utf-8')))
        sendData = input('> ')
        if not sendData:
            break
        tcpClientSock.send(bytes(sendData,'utf-8'))
    tcpClientSock.close()
tcpSvrSock.close()

  

  

 客户端代码:
# encoding:utf-8
from socket import *
from datetime import *

HOST = '127.0.0.1'
PORT = 21567
ADDR = (HOST, PORT)
BUFFSIZE=1024
clientSocket=socket(AF_INET,SOCK_STREAM)
clientSocket.connect(ADDR)

while True:
    sendData=input('> ')
    if not sendData:
        break
    sendData=bytes(sendData, 'utf-8')
    clientSocket.send(sendData)
    recieveData=clientSocket.recv(BUFFSIZE)
    if not recieveData:
        break
    print(recieveData.decode('utf-8'))
clientSocket.close()

  

 Python核心编程(网络编程)[通俗易懂]

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155960.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 验证码的原理及作用「建议收藏」

    验证码的原理及作用「建议收藏」验证码被广泛用于用户登录以及注册的校验,那么验证码的作用仅仅是进行校验吗?,或者说为什么会有验证码校验这一环节?验证码是目前大多网站所支持并使用于注册登录的。就在于其作用能有效防止恶意登录注册,验证码每次都不同,这就可以排除,用其他病毒或者软件自动申请用户及自动登陆.有效防止这种问题。这就是验证码的真正作用,能够防止别人进行恶意攻击,而且大家也会注意到一点,如果频繁发送验证码,用户请求注册…

    2022年7月14日
    13
  • 自定义BeanUtils的populate方法实现「建议收藏」

    自定义BeanUtils的populate方法实现「建议收藏」1.1.1功能分析publicstaticvoidpopulate(Objectbean,Mapmap)//修改任意对象中的属性,为传入Map集合中的键和值思路:1.获取传入对象的字节码对象2.获取map集合中所有的键和值3.调用Class中的getDecl…

    2022年7月26日
    5
  • Linux offsetof宏定义

    Linux offsetof宏定义#include<stddef.h>size_t offsetof(type, member) #define offsetof(TYPE, MEMBER)        \           ((size_t)&((TYPE*)0)->MEMBER) Themacroreturntheoffsetofthe…

    2022年8月22日
    8
  • Idea激活码最新教程2022.2.1版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2022.2.1版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2022 2 1 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2022 2 1 成功激活

    2025年5月25日
    2
  • mysql 误清空表 恢复数据

    mysql 误清空表 恢复数据把今天一不小心把订单表清空,怎么恢复数据的记录下来首先mysql需要开启bin-log,我的是宝塔面板,默认开启接下来进入到宝塔的www/server/data控制台输入find/-namemysqlbinlog-print找到binlog地址然后软连到usr/binln-fs/www/server/mysql/bin/mysqlbinlog/usr…

    2022年5月27日
    30
  • mysqlbackup 还原特定的表

    mysqlbackup 还原特定的表

    2022年1月13日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号