Замена значения переменной на основе словаря/списка, импортированного из csv ⇐ Python
-
Гость
Замена значения переменной на основе словаря/списка, импортированного из csv
Я прочитал всю документацию, но ничего не понял.
Вот что я пытаюсь сделать:
Заменить строковое значение, хранящееся в переменной, другим значением на основе списка словаря
например. Переменная содержит фразу «Это моя исходная строка», которую нужно заменить на «Это моя замененная строка». В этом словаре может быть около 500 строк.
Вот подход, который я опробовал на данный момент:
Импортирован CSV в Dataframe, который имеет словарь текущего значения и значения, которое будет заменено
Фрейм данных преобразован в словарь с помощью to_dict()
В цикле for для элементов словаря — попробовала команду replace() для значения переменной
Постоянно выдает ошибку. Я уверен, что делаю что-то в корне неправильно или просто не понял правил использования.
Произошло исключение: TypeError (примечание: отображается полная трассировка исключения, но выполнение приостанавливается в: _run_module_as_main) Аргумент replace() 2 должен быть str, а не Series Файл «C:\python\Scripts\BW_Translate.py», строка 60, в AcctName = AcctName.replace(ключ,значение) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tran_csv = 'X:/00XYZZZZ-FIN/acct_translation.csv' df = pd.read_csv(tran_csv) print('словарь:' + df.to_string()) tran_dict = df.to_dict('список') для f в xml_file_list: print('чтение:' + f) дерево = ET.parse(f) корень = дерево.getroot() для кодирования в root.findall('.//CodingRows/CodingRow'): AcctName = coding.find('AccountName').text для ключа, значения в df.items(): AcctName = AcctName.replace(ключ,значение)
Я прочитал всю документацию, но ничего не понял.
Вот что я пытаюсь сделать:
Заменить строковое значение, хранящееся в переменной, другим значением на основе списка словаря
например. Переменная содержит фразу «Это моя исходная строка», которую нужно заменить на «Это моя замененная строка». В этом словаре может быть около 500 строк.
Вот подход, который я опробовал на данный момент:
Импортирован CSV в Dataframe, который имеет словарь текущего значения и значения, которое будет заменено
Фрейм данных преобразован в словарь с помощью to_dict()
В цикле for для элементов словаря — попробовала команду replace() для значения переменной
Постоянно выдает ошибку. Я уверен, что делаю что-то в корне неправильно или просто не понял правил использования.
Произошло исключение: TypeError (примечание: отображается полная трассировка исключения, но выполнение приостанавливается в: _run_module_as_main) Аргумент replace() 2 должен быть str, а не Series Файл «C:\python\Scripts\BW_Translate.py», строка 60, в AcctName = AcctName.replace(ключ,значение) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tran_csv = 'X:/00XYZZZZ-FIN/acct_translation.csv' df = pd.read_csv(tran_csv) print('словарь:' + df.to_string()) tran_dict = df.to_dict('список') для f в xml_file_list: print('чтение:' + f) дерево = ET.parse(f) корень = дерево.getroot() для кодирования в root.findall('.//CodingRows/CodingRow'): AcctName = coding.find('AccountName').text для ключа, значения в df.items(): AcctName = AcctName.replace(ключ,значение)
Мобильная версия