Python 初学笔记:Socket网络编程

最近在读Magnus Lie Hetland的Python基础教程,做了个Socket小练习,先记录一下。

Socket包括服务器套接字和客户机套接字。

Socket Server代码如下:

#Socket Server
import socket
s = socket.socket()
host = socket.gethostname()
port = 5700
s.bind((host, port))
s.listen(3)
try:
    while True:
        c, addr = s.accept()
        print "Got connetion from", addr
        sndmsg = "Thank you for connection"
        c.send(sndmsg)
        recmsg = c.recv(1024)
        while not "quit" in recmsg:
            print "Received >>", recmsg
            sndmsg = raw_input("Please input your message: ")
            if sndmsg and (not "quit" in sndmsg):
                print "Send Msg:", sndmsg
                c.send(sndmsg)
                recmsg = c.recv(1024)
            else:
                break
        c.close()
        cmd = raw_input("Do you want to finish the socket? y/n\n")
        if cmd != 'n': break
finally:
    s.close()



Socket Client代码如下:

# Socket client
import socket

s = socket.socket()

host = "sinjon-PC"
port = 5700
s.connect((host, port))

recmsg = s.recv(1024)

while True:
    print "Received >>", recmsg
    sndmsg = raw_input("Enter your message: ")
    if sndmsg and (not "quit" in sndmsg):
        s.send(sndmsg)
        print "Send Msg:", sndmsg
        recmsg = s.recv(1024)
    else:
        cmd = raw_input("Do you want to finish this chart? y/n\n")
        if cmd != 'n':
            s.send("quit")
            break



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值