首页 > 解决方案 > 如何防止拆分字符串中的转义换行符(python)

问题描述

我正在编写一个将 CSV 转换为 JSON 的脚本。我的电子表格单元格之一包含“<,>”分隔的字符串。我想将其转换为列表。我在处理该单元格的脚本中有以下行:

quest["preMessages"] = [x.strip() for x in row["preMessages"].split('<,>')]

其中 row["preMessages"] 表示单元格中的文本。

它主要工作除了我的单元格输入如下的一种情况:

I'm receiving orders from headquarters!<,>
<THE_COMPANY> assigns tasks to the <SHIP_NAME> from time to time. \n\n Best to complete them as soon as possible before they take corrective measures.

我的输出是:

"preMessages": [
"I'm receiving orders from headquarters!", 
"<THE_COMPANY> assigns tasks to the <SHIP_NAME> from time to time.\\n\\n Best to complete them as soon as possible before they take corrective measures."
],

问题是中间的换行符。我希望它们保持为非转义换行符。当我在这一行之前打印 row["preMessages"] 时,它看起来很正常,就像在电子表格中一样。

即使我删除了对 strip() 的调用,问题仍然存在,所以它必须是拆分。但是我提供了自己的分隔符,所以我不确定它为什么会与新行混淆。

我怎样才能保持我的换行符完好无损?

标签: pythoncsv

解决方案


推荐阅读