вертикально сложенный список - не можете перебрать их? - PullRequest
1 голос
/ 16 октября 2019

Я пытаюсь отфильтровать различные столбцы информационного кадра, чтобы сохранить значения, уже определенные в словаре. Я написал для этого функцию:

def replace_gym(x):
for i in list(amenities_dict['Gym']):
    if x == i:
        return(x)

, а затем применил функцию к столбцу:

transdf['Gym'] = transdf['Gym'].apply(lambda x: replace_gym(x))

Теперь по какой-то причине она применяется только к самому первому предмету в удобствах. список - кажется, что он не перебирает список. Все значения в столбце «Тренажерный зал». (это первый элемент в списке)

Список (comfort_dict ['Gym']) * (то есть список, связанный с ключом 'Gym' в словаре leisure_dict) выглядит следующим образомэто:

вертикальный и горизонтальный список

Ниже приведен пример со списком тестов. С помощью списка тестов, определенного вручную, он работает и сохраняет все значения (маникюр, педикюр и т. Д.)

testlist = ['Manicure', 'Pedicure', 'Bowling', 'Casino']

def replace_test(x):
    for i in testlist:
        if x == i:
            return(x)

transdf['Gym'] = transdf['Gym'].apply(lambda x: replace_test(x)) 

Так что я считаю, что в Python есть другой способ перебора «вертикали» и «а»горизонтальный список? Как видите, код точно такой же, меняются списки. В любом случае, я могу сделать их эквивалентными? (т. е. повернуть список гимнастики по горизонтали)

Заранее спасибо!

РЕДАКТИРОВАТЬ:

Спасибо за ответы. Обнаружил ошибку!

Неаккуратно с моей стороны, но я оставил строку кода, в которой на самом деле использует инвертированные comfort_dict для замены значений (например, все «Fitness Center», например, строки, в «Gym»)

Удаление этой строки решило проблему!

1 Ответ

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

Это оба обычные списки, там нет «вертикального» или «горизонтального» списка. Единственная причина, по которой они перечислены с другой ориентацией, состоит в том, что у них есть более длинные элементы.

Также, если amenities_dict['Gym'] уже является списком, т.е. если значение для ключа Gym уже является списком, то выне нужно делать list(amenities_dict['Gym'])

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...