Сравните смайлики и поместите пробелы вокруг них в python - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть набор данных, и когда я сталкиваюсь с смайликами без пробела, я хочу разместить вокруг них пространство, но я не знаю нескольких вещей

  • У меня есть этот список

    sentences=["HiRob?","swiggy","??"].
    

    как их сравнивать, поскольку они хранятся в виде строк.

  • Как поставить вокруг них пробелы?

    Желаемый вывод

    sentences=["HiRob ? ","swiggy"," ? ? "]
    

Моя основная проблема - поставить вокруг них пробелы.

1 Ответ

0 голосов
/ 03 сентября 2018

Вы можете использовать пакет emoji , чтобы немного упростить ваш код.

from emoji import UNICODE_EMOJI

# search your emoji
def is_emoji(s):
    return s in UNICODE_EMOJI

# add space near your emoji
def add_space(text):
    return ''.join(' ' + char if is_emoji(char) else char for char in text).strip()

sentences=["HiRob?","swiggy","??"]
results=[add_space(text) for text in sentences]

print(results)

выход

['HiRob ?', 'swiggy', '? ?']

Попробуйте онлайн!

относится к: Как извлечь из текста все смайлики?

если add_space выглядит как черная магия, вот более дружественная альтернатива:

def add_space(text):
  result = ''
  for char in text:
    if is_emoji(char):
      result += ' '
    result += char
  return result.strip()
...