import socket
updsocket = socket.socket(socket.af_inet, socket.sock_dgram)
updsocket.sendto(
"helloworld!"
.encode(
'utf-8'),
("172.20.52.75"
,3333))
updsocket.close(
)
import socket
udpsocket = socket.socket(socket.af_inet, socket.sock_dgram)
udpsocket.bind(
("172.20.52.75"
,6666))
# ip省略表示是自己的ip 繫結傳送方的埠 內部是乙個元組
udpsocket.sendto(
"hello world!"
.encode(
"utf-8"),
("172.20.52.75"
,4444))
#對方ip和port
data = udpsocket.recvfrom(
1024
)#阻塞
print
(data[0]
.decode(
"gbk"))
#內容print
(data[1]
)#ip和port
udpsocket.close(
)
import socket
udpsocket = socket.socket(socket.af_inet, socket.sock_dgram)
udpsocket.setsockopt(socket.sol_socket, socket.so_broadcast,
true
)#設定廣播
udpsocket.sendto(
"哈哈 打不過我吧~ 啦啦啦~"
.encode(
"gbk"),
("255.255.255.255"
,7777))
udpsocket.close(
)
import socket
address =
'127.0.0.1'
#監聽哪些網路127.0.0.1是監聽本機 0.0.0.0是監聽整個網路
tcpsocket = socket.socket(socket.af_inet, socket.sock_stream)
#建立套接字
#tcpsocket.bind(("",12345)) #元組
tcpsocket.connect(
("172.20.52.75"
,7777))
tcpsocket.send(
'約嗎?'
.encode(
"gbk"))
#已經建立了連線 直接傳送
recvdata = tcpsocket.recv(
1024
)print
(recvdata.decode(
"gbk"))
tcpsocket.close(
)
import socket
tcpsocket = socket.socket(socket.af_inet, socket.sock_stream)
#建立套接字
tcpsocket.bind((""
,8080))
#元組tcpsocket.listen(
128)
#監聽上限 在windows 128有效 在linux無效
newsocket,ipport = tcpsocket.accept(
)#阻塞等待客戶端連線 ipport是個元組只有兩個元素
print
(ipport[0]
)#ip
print
(ipport[1]
)#port
recvdata = newsocket.recv(
1024
)print
(recvdata.decode(
"gbk"))
newsocket.close(
)tcpsocket.close(
)
import socket
tcpsocket = socket.socket(socket.af_inet, socket.sock_stream)
#建立套接字
tcpsocket.bind((""
,8080))
#元組tcpsocket.listen(
128)
#監聽上限 在windows 128有效 在linux無效
newsocket,ipport = tcpsocket.accept(
)#阻塞等待客戶端連線 ipport是個元組只有兩個元素
print
(ipport[0]
)#ip
print
(ipport[1]
)#port
while
true
: recvdata = newsocket.recv(
1024
)# 當接收到資料為空的時候,表示客戶端已經斷開連線了
if recvdata:
print
(recvdata.decode(
"gbk"))
else
:print
("客戶端斷開連線!"
) newsocket.close(
)break
tcpsocket.close(
)
基於UDP和TCP實現CS
1.我們應該先了解udp和tcp協議 首先udp和tcp是基於傳輸層的協議 我們需要了解udp和tcp的特性 tcp協議的特性 1 面向連線的服務 2 可靠的資料傳輸服務 3 面向位元組流。udp協議的特性 1 無連線服務 2 不可靠的資料傳輸 3 面向資料報 以下是流行網際網路應用層及其應用層協議...
Python中TCP和UDP用法
socket 簡稱 套接字 是程序間通訊的一種方式,它與其他程序間通訊的乙個主要不同是 它能實現不同主機間的程序間通訊,socket屬於全雙工。關於建立套接字的引數說明 socket.socket addressfamily,type address family 可以選擇 af inet 用於 i...
python網路程式設計 udp和tcp
udp伺服器import socket s socket.socket socket.af inet,socket.sock dgram s.bind 192.168.1.103 8888 while true data,addr s.recvfrom 1024 print s s str addr...