[英]Python Use Socket as Global Variable
我创建了一个 function 来建立到服务器的 TCP/IP 套接字连接。 现在我想在我的应用程序中为其他任务重用套接字。 这样我就有了:
import socket
def creat_tcp_connection():
sock_tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock_tcp.connect(("163.173.96.12", 32000))
return sock_tcp
if __name__ == "__main__":
creat_tcp_connection()
texte = "PING\n"
creat_tcp_connection.sock_tcp.send(texte.encode('utf-8'))
data=creat_tcp_connection.sock_tcp.recv(1024).decode('utf-8')
print("Received ", str(data))
但是“AttributeError: 'function' object 没有属性 'sock_tcp'”。 如何在 creat_tcp_connection() function 中使用套接字 sock_tcp
非常感谢你!
您正在尝试访问 function 的属性,而不是 function 的返回值。试试这个:
import socket
def creat_tcp_connection():
sock_tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock_tcp.connect(("163.173.96.12", 32000))
return sock_tcp
if __name__ == "__main__":
sock = creat_tcp_connection()
texte = "PING\n"
sock.send(texte.encode('utf-8'))
data=sock.recv(1024).decode('utf-8')
print("Received ", str(data))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.