python如何创建TCP服务端和客户端

yipeiwu_com5年前Python基础

本文实例为大家分享了python创建tcp服务端和客户端的具体代码,供大家参考,具体内容如下

1.服务端server

from socket import *
from time import ctime

HOST = ''
PORT = 9999
BUFSIZ = 1024
ADDR = (HOST, PORT)

tcpSerSock = socket(AF_INET, SOCK_STREAM)  #创建套接字
tcpSerSock.bind(ADDR)  #绑定IP和端口
tcpSerSock.listen(5)  #监听端口,最多5人排队

while True:
  print('waiting for connection...')
  tcpCliSock, addr = tcpSerSock.accept()  #建立连接
  print('...connected from:', addr)

  while True:
    data = tcpCliSock.recv(BUFSIZ)
    if not data:
      break
    content = '[%s] %s' % (bytes(ctime(), "utf-8"), data)
    print(data)
    print(type(content))
    tcpCliSock.send(content.encode("utf-8"))

  tcpCliSock.close()

tcpSerSock.close() 

2.客户端client

from socket import *

HOST = '127.0.0.1' # or 'localhost'
PORT = 9999
BUFSIZ = 1024
ADDR = (HOST, PORT)

tcpCliSock = socket(AF_INET, SOCK_STREAM)
tcpCliSock.connect(ADDR)

while True:
  data = input('> ')
  if not data:
    break

  tcpCliSock.send(data.encode("utf-8"))
  data = tcpCliSock.recv(BUFSIZ)
  if not data:
    break
  print(data.decode("utf-8"))

tcpCliSock.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python global全局变量函数详解

global语句的作用 在编写程序的时候,如果想为一个在函数外的变量重新赋值,并且这个变量会作用于许多函数中时,就需要告诉python这个变量的作用域是全局变量。此时用global语句就...

Python数据分析之双色球统计两个红和蓝球哪组合比例高的方法

Python数据分析之双色球统计两个红和蓝球哪组合比例高的方法

本文实例讲述了Python数据分析之双色球统计两个红和蓝球哪组合比例高的方法。分享给大家供大家参考,具体如下: 统计两个红球和蓝球,哪个组合最多,显示前19组数据 #!/usr/bi...

图文详解Django使用Pycharm连接MySQL数据库

图文详解Django使用Pycharm连接MySQL数据库

在 Pycharm 的右上方找到 Database 点击 依次点击,选择 MySQL 数据库 点击 Download 下载驱动文件 下载完成后对数据库的相关信息进行填写 填写完成...

Python求出0~100以内的所有素数

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。 一、判断一个数是否为素数: 基于定义 def is_prime(num):...

Python 、Pycharm、Anaconda三者的区别与联系、安装过程及注意事项

Python 、Pycharm、Anaconda三者的区别与联系、安装过程及注意事项

1、致欢迎词 我将详细讲述在学Python初期的各种手忙脚乱的问题的解决,通过这些步骤的操作,让你的注意力集中在Python的语法上以及后面利用Python所解决的项目问题上。而我自己作...