Python一个简单的通信程序(客户端 服务器)
作者:Dai___ 发布时间:2023-09-09 11:09:39
标签:python,通信程序,客户端,服务器
功能是从客户端向服务发送一个字符串, 服务器收到后将字符串重新发送给客户端,同时,在连接建立之后,服务器可以向客户端发送任意多的字符串
客户端:
10.248.27.23是我电脑的IP
import socket, sys
host = '10.248.27.23'
# host = raw_input("Plz imput destination IP:")
# data = raw_input("Plz imput what you want to submit:")
port = 51423
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
try:
s.connect((host, port))
except socket.gaierror, e:
print "Address-related error connecting to server: %s" %e
sys.exit(1)
except socket.error, e:
print "Connection error: %s" %e
sys.exit(1)
data = raw_input("Plz imput what you want to submit:")
s.send(data)
s.shutdown(1)
print "Submit Complete"
while 1:
buf = s.recv(1024)
sys.stdout.write(buf)
服务器:
import socket, traceback
host = ''
port = 51423
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((host, port))
s.listen(1)
print "done"
while 1:
#when connect error happen, skip the error
try:
ClientSock, ClientAddr = s.accept()
except KeyboardInterrupt:
raise
except:
traceback.print_exc()
continue
#Get informaion form client and reply
try:
print "Get connect from ", ClientSock.getpeername()
data = ClientSock.recv(1024)
print "The information we get is %s" % str(data)
ClientSock.sendall("I`ve got the information: ")
ClientSock.sendall(data)
while 1:
str = raw_input("What you want to say:")
ClientSock.sendall(str)
ClientSock.sendall('\n')
except (KeyboardInterrupt ,SystemError):
raise
except:
traceback.print_exc()
#Clocs socket
try:
ClientSock.close()
except KeyboardInterrupt:
raise
except:
traceback.print_exc()
来源:https://blog.csdn.net/rebelqsp/article/details/22183981


猜你喜欢
- 方法一 delete from test; alter table `test` auto_increment=1 (好处,可以设置AUTO
- 1.假如有下述表格mytabe字段1 username 字符串型(姓名)字段2 &nb
- Ajax在网上已经叫喊了好几年了, 但是还是有很多像我这样的新手没掌握它, 像这样能改善交互体验的技术不会用真是很遗憾呢. 所以我就把我学到
- 初级画心学Python,感觉你们的都好复杂,那我来个简单的,我是直接把心形看作是一个正方形+两个半圆:于是这就很简单了,十行代码解决:imp
- golang的单引号转义如题,golang中有时候需要将一个字符串中的单引号再转义一次,比如在两个单引号之间包含一个含有单引号的字符串的情形
- 抱着“取之于众 服务于众”的思想,我总结了一下,把它拿到网上来与大家分享,希望能帮助遇到类似问题的朋友。 我主要使用了IE内置的WebBro
- 先看函数参数:torch.flatten(input, start_dim=0, end_dim=-1)input: 一个 tensor,即
- 工具/原料win7操作系统MySQLzip格式安装包方法/步骤MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的。如果是ms
- 数据库对象表时存储和操作数据的逻辑结构,而数据库对象存储过程和函数,则是用来实现将一组关于表操作的sql语句当作一个整体来执行。在数据库系统
- 使用JS的DOM(文档对象模型)获取前端循环的参数使用Go语言渲染html,但是想让网页动起来,显示一些弹窗还是比较麻烦的,于是乎,想到使用
- Pytorch 使用GPU训练使用 GPU 训练只需要在原来的代码中修改几处就可以了。我们有两种方式实现代码在 GPU 上进行训练方法一 .
- PHP getName() 函数实例返回 XML 元素及其子元素的名称:<?php $xml=<<<XML<?
- MySQL 自4.1版以后开始支持INSERT … ON DUPLICATE KEY UPDATE语法,使得原本需要执行3条SQL语句(SE
- 对于什么是好设计,一万个人那里至少有一万零一个答案。每个人都有自己的答案,有的人还不止一个答案。老师说,一定要在设计里灌注自己的思想,有了自
- 本文研究的主要内容是Python中装饰器相关学习总结,具体如下。装饰器(decorator)功能引入日志函数执行时间统计执行函数前预备处理执
- 使用Nodejs的开发者愈来越多,基于Nodejs的后台开发也多了起来,像短信验证码、短信群发、国际短信这些需求,完全可以采用第三方接口来实
- 自己写了玩的一个小脚本,百度图片下载import reimport osimport requestsimport hashlibdef d
- 引言本文将深入探讨Python语言中的核心概念:类(Class)和对象(Object)。我们将介绍这些基本概念,然后通过示例代码详细展示Py
- 最近做一项目,需要对数据进行排序输出,要求有行号,依次递增1.2.3.4.5.......。前端通过<c:forEach> 遍历
- 这篇文章主要介绍了Django app配置多个数据库代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需