将收到的消息分为两部分

时间:2018-11-22 10:27:10

标签: java python string

我在Java中有一个服务器,该服务器应该在一条消息中将IP地址和数字传输给客户端。这是转移代码:

int indexMin;
int num;
.
.
.
String found = String.format("10.0.0.%1$d %2$d", indexMin, num);
byte[] foundByte = found.getBytes();

indexMin和num的长度是可变的(它们可能具有1或2或...位数字)。

我在客户端使用Python。我希望我的客户端接收此字符串并区分地址(例如10.0.0.5)和第二个由空格分隔的值。这是我在客户端上使用的代码:

def read_udp(s):
    data,addr = s.recvfrom(1024)
    print("received message:", data)
    .
    .
    .
    address = #adress part
    num = #2nd number part

由于接收到的字符串的长度是可变的,我如何提取addressnum?我应该一一检查接收到的消息的字符以找到space还是有更好的方法?

2 个答案:

答案 0 :(得分:1)

假设您的字符串像data = "10.10.122.1 5678"一样

data_split = data.split(" ")
address, num = data_split[0], data_split[1]

答案 1 :(得分:1)

您可以轻松做到:

address, num = data.split();