Расщепление результатов строки - PullRequest
0 голосов
/ 16 октября 2019

У меня есть список слов, которые соответствуют записи в первом столбце базы данных. Я использую панды, чтобы перебрать первый столбец в базе данных, и если слово из списка слов совпадает со словом в ячейке - вся строка извлекается и помещается в другой список. Это выполняется по циклу, который проходит через весь список слов. Мне нужна извлеченная строка, которая добавляется в новый список, чтобы разделить записи из каждой ячейки, используя какой-либо разделитель (пробел, дефис или запятую).

import pandas as pd

excel_file = 'C:/Users/username/Desktop/Translation.xlsx'
translationFile = pd.read_excel(excel_file)

compList = ['HelloEng', 'HiEng']
newComp = []
length = len(compList)
for i in range(length):
    newComp.append(translationFile.loc[translationFile['English'] == compList[i]].to_string(index=False, header=False))
print (length)
print(newComp)

Текущий результат:

['HelloEng HelloSpa HelloIta HelloGer', 'HiEng HiSpa HiIta HiGer ']

Мне нужен результат:

['HelloEng(delimiter) HelloSpa(delimiter) HelloIta(delimiter) HelloGer', 'HiEng(delimiter) HiSpa(delimiter) HiIta(delimiter) HiGer ']

1 Ответ

1 голос
/ 16 октября 2019

вы можете использовать functino str.split(), он берет строку и разделяет ее по seprerator (по умолчанию ' ')

Если я вас неправильно понял, и вы просто хотите изменить расстояние между словами вчто-то еще вы можете использовать str.replace(' ', '|')

Обновление

import pandas as pd

excel_file = 'C:/Users/username/Desktop/Translation.xlsx'
translationFile = pd.read_excel(excel_file)

compList = ['HelloEng', 'HiEng']
newComp = []
length = len(compList)
for i in range(length):
    result = translationFile.loc[translationFile['English'] == compList[i]].to_string(index=False, header=False)
    if result:
        newComp.extend(result.split())
print (length)
print(newComp)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...