Python Socket基础学习,注意,需要先开服务器程序,在开客户端程序,

服务器端

# -*- coding: utf-8 -*-

# python:2.x

__author__ = ‘Administrator‘

from socket import *

from time import *

HOST=‘‘

PORT=1122#侦听端口

BUFSIZ=1024

ADDR=(HOST,PORT)

sock=socket(AF_INET,SOCK_STREAM)

sock.bind(ADDR)

sock.listen(5)

#条件

STOP_CHAT=False

while not STOP_CHAT:

print u‘等待接入,侦听端口:%d‘%(PORT)

tcpClientSock,addr=sock.accept()

print u‘接收,客户端地址:%d‘%(addr)

while True:

try:

data=tcpClientSock.recv(BUFSIZ)#接收数据

except:

tcpClientSock.close()

break

if not data:

break

IOSTIMEFORMAT=‘%Y-%m-%d %X‘

strime=strftime(IOSTIMEFORMAT,localtime())

s=u‘%s发送给我的信息是:%s‘%(addr[0],data.decode(‘utf8‘))

tcpClientSock.send(s.encode(‘utf8‘))

print ([strime],‘:‘,data.decode(‘utf8‘))

#如果输入quit(忽略大小写),则程序退出

STOP_CHAT=(data.decode(‘utf8‘).upper()==‘QUIT‘)

if not STOP_CHAT:

break

tcpClientSock.close()

sock.close()

print ‘-------‘

客户端程序

# -*- coding: utf-8 -*-

# python:2.x

__author__ = ‘Administrator‘

from socket import *

class TcpC:

HOST=‘127.0.0.1‘

PORT=1122

BUFSIZ=2048

ADDR=(HOST,PORT)

def __init__(self):

self.client=socket(AF_INET,SOCK_STREAM)

self.client.connect(self.ADDR)

while True:

data=raw_input(‘>‘)

if not data:

break

self.client.send(data)

print ‘发送信息到%s:%s‘%(self.HOST,data)

if data.upper()==‘QUIT‘:

break

data=self.client.recv(self.BUFSIZ)

if not data:

break

print ‘从%s收到的信息%s‘%(self.HOST,data)

if __name__==‘__main__‘:

client=TcpC()

print ‘udp学习‘

# python:2.x

__author__ = ‘Administrator‘

from socket import *

#upd通讯

port=8081#端口号

s=socket(AF_INET,SO_DEBUG)#发送者,接收udp数据

s.bind((‘‘,port))

print  u‘等待数据接收‘

while True:

#接收数据

data,addr=s.recvfrom()

print ‘received:‘,data,‘from:‘,addr

# -*- coding: utf-8 -*-

# python:2.x

__author__ = ‘Administrator‘

from socket import *

#upd通讯

port=8081#端口号

host=‘localhost‘

s=socket(AF_INET,SOCK_DGRAM)

s.sendto(b‘hello,this is a test info!‘,(host,port))

时间: 2024-10-15 23:44:46

Python Socket基础学习,注意,需要先开服务器程序,在开客户端程序,的相关文章

Python入门基础学习 三

Python入门基础学习 三 数据类型 Python区分整型和浮点型依靠的是小数点,有小数点就是浮点型. e记法:e就是10的意思,是一种科学的计数法,15000=1.5e4 布尔类型是一种特殊的整形,true就相当于1,false相当于0,可以用来计算 类型转换 转换:整数:int();字符串:str();浮点数:float() 转换例子:(图9) 如果用内置函数当变量名,比如str=123,一旦被赋值,再使用这个函数会被报错. type()函数可以明确告诉我们变量类型. isinstance

python函数基础学习

函数的定义与调用: def 函数名(参数1,参数2): '''函数注释''' print('函数体') return 返回值 定  义:def关键字开关,空格之后接函数名和圆括号,最后冒号结尾 def 是固定且不可变的 函数名:函数名是包含字母.数字.下划线的任意组合,(不能以数字开头) 函数调用: 返回值 = 函数名 (参数1,参数2) 函数返回值: 1- return的作用:结束一个函数的执行 2- 首先返回值可以是任何的数据类型 3- 函数可以有返回值:如有返回值,必须要用变量接受才有效果

python 零基础学习大纲 - 【整理】

[整理]url:https://zhuanlan.zhihu.com/p/101953135 Python基本概念最全图1.Python 解释器: 2.Python数据结构: 3.变量与运算符: 4.Python 流程控制: 5.Python 文件处理: 6.Python 输入输出: 7.Python 异常: 8.Python 函数和模块: 9.Python 面相对象: 10.Python 多线程: 11.Python 标准库: 12.Python 第三方库: 一开始学习知识的时候,我们对基本概

跨语言学习的基本思路及python的基础学习

笔者是C#出身,大学四年主修C#,工作三年也是C#语言开发.但在学校里其他的语言也有相应的课程,eg:Java,Php,C++都学过,当然只是学了皮毛(大学嘛,你懂得),严格来说未必入门,但这些语言的代码阅读倒是不成问题,毕竟触类旁通嘛,有道是“一法通,万法明”,多学学其他的也没坏处. 近期被临时借调到其他项目组,由于新项目用的是Python,本人呢又没有python开发经验(之前只是知道有这门语言),工期呢两周多吧,简单来说就是时间紧,任务重,而且开发环境完全陌生,于是就得快速学会使用一门新语

Python零基础学习系列之二--Python介绍及环境搭建

1-1.Python简介: Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议. Python(英国发音:/?pa?θ?n/ 美国发音:/?pa?θɑ?n/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第

Python函数基础学习(定义、函数参数、递归函数)

1.本程序是测试函数的基础.函数的参数.递归函数的测试. 函数的参数有: 必选参数.默认参数.可变参数.命名关键字参数和关键字参数 #!/usr/bin/python # -*- coding: utf-8 -*- #当程序存在中文时,注释表明使用utf-8编码解释 #函数学习 print('函数定义') def result(x,n=2): s = 1 while n>0: n = n-1 s = s*x return s #使用def定义一个函数,def 函数名(参数): print(res

Python 入门基础学习

Python入门学习 我们使用python3.0版本 首选来入门  带你进入Hello World >>> print ("Hello World")Hello World 好了 我们会python了  呵呵了 我们来实现个简单的列子吧  文字游戏 print('------------我爱九月天---------------') temp = input("不妨猜一下九月天在你心里你会想的是哪个数字:") guess = int(temp) if

跟着大王学Python-基础学习(Day1)

这么多年来一直有打算整理一个自己的博客,从WordPress.51Cto.blog163等等这些没有一个我坚持写下去的,反思其结果总有这样或者那样的一些借口来进行自我辩护,其实自己内心深处是知道最原始的问题.今天是我学习Python的第一天,正如老师所说的写好一个blog可以让很多人知道你,关注你.为了实现这一目标,我又开始了我的blog生涯~,我希望这是我最后申请的一个博客,我要用它来记录我的成长之路,同时也给自己一个警示.目标是需要脚踏实地一步一步去走过,而不是想想就能实现的.~开源的心很重

python requests 基础学习

首先,Python 标准库中的 urllib2 模块提供了你所需要的大多数 HTTP 功能,但是它的 API 不友好.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务,所以学习reuqests模块,比较简洁好用(以后慢慢会学习scapy,更强大的库),安装就不用说了 1 导入模块 >>> import requests 2 直观感受一下发送请求的简洁 >>> r = requests.get('your url') &g