如何在 Python 套接字中传递变量?

How to pass a variable in Python sockets?

我的 python 客户端应用程序具有以下代码并且工作正常:

import socket
sock = socket.socket()
sock.connect(('127.0.0.1', 55555))
sock.send(b'mkdir test') # windows command
data = sock.recv(1024)
sock.close()
print(data)

我需要用输入运算符输入命令,例如:

comm = input('Input the system command: ') # mkdir test
sock.send(b'f{comm}')

但是没用。我试图将 b 更改为字节,写成 b'\f 之类的。有什么想法吗?

您尝试的方式,如果我是对的,您正在尝试在二进制 (b) 字符串中使用 f 字符串,但无法完成。所以,试试这个,

comm = input('Input the system command: ') # mkdir test
sock.send(b'{}'.format(comm, encoding='utf-8'))

这将帮助你实现你想做的事。

如果这不起作用,你可以这样做,

comm = input('Input the system command: ') # mkdir test
sock.send(bytes(comm, encoding='utf-8'))