Python разделить данные из сокета - PullRequest
1 голос
/ 17 февраля 2011

Я пытаюсь выяснить, как разделить данные, полученные из сокета.У меня работают сокеты, и я могу получить данные правильно, но теперь я хочу разделить полученные данные и получить последнюю строку.Вот что я пытаюсь (данные - это данные, полученные из сокета)

split = data.split(' ')
print split
print split[-1]

Но когда я пытаюсь это сделать, по какой-то причине это не сработает.Например, допустим, у меня получена строка «test test1», которую я хочу получить test1.

Ответы [ 2 ]

1 голос
/ 17 февраля 2011

У меня работает следующее:

>>> data = "chdir /"
>>> a = data.split(" ")
>>> a
['chdir', '/']
>>> a[-1]
'/'

Похоже, это то, что вы ищете. Причина, по которой ваш код не работает, скорее всего, связана с точным содержанием data.

Обратите внимание, что использование .split(" ") немного отличается от .split(), если в исходной строке несколько пробелов. См. Например:

>>> "chdir /".split(" ")
['chdir', '/']
>>> "chdir  /".split(" ")
['chdir', '', '/']
>>> "chdir  /".split()
['chdir', '/']
0 голосов
/ 17 февраля 2011

Просто обратите внимание, что использование имен общих библиотечных функций для именования объектов в вашем собственном коде является плохой практикой.

Иногда это вызывает ошибки, но всегда создает путаницу.

...