Автоматическое экранирование в строке python

#python-3.x #pandas #string #dataframe #escaping

Вопрос:

Я понял, что в python есть некоторый механизм автоматического экранирования строки, когда я экспортировал свой фрейм данных в текстовый файл.

Фрейм данных

 ID | Description 
1 | fruitsbaskets
2 | apple orange"pear
 

Когда я экспортировал фрейм данных в текстовый файл, значение груши»яблочный апельсин «было изменено на»яблочный апельсин»»груша». Python автоматически добавил заключающие двойные кавычки и дополнительные двойные кавычки в мое значение.

Могу я узнать, как мне предотвратить это? Я хочу экспортировать фрейм данных в виде необработанной строки — экспортируя яблочно-оранжевую»грушу», как она есть.

Любая помощь будет признательна! Спасибо!

Комментарии:

1. по умолчанию quotechar='"' , поэтому вы можете изменить это quotechar="'" на to_csv() метод in, чтобы это выглядело так df.to_csv('filename.txt',quotechar="'") , но помните, что если данные будут выглядеть так apple orange'pear , в этом случае у вас возникнет та же проблема, с которой вы сталкиваетесь сейчас

2. но в данном случае: apple orange'pear принимая это " как соглашение, вы можете заменить все ' на " , чтобы эта проблема также разрешилась

3. привет @AnuragDabas! Спасибо за ваше предложение. Я не против того, чтобы заключать двойные кавычки. Но я не хочу, чтобы в значении была дополнительная двойная кавычка. Есть какие-нибудь предложения?

4. как я уже упоминал выше, вы можете использовать quotechar параметр в to_csv() методе, поэтому apple orange"pear будете писать так, как он есть внутри текстового файла

5. @AnuragDabas спасибо! Обнаружил, что моя проблема возникла из-за использования quoting=csv. ЦИТАТА_ВСЕ.