gpt4 book ai didi

python - 在 Google App Engine 的 python 中上传和解析带有 "universal newline"的 csv 文件

转载 作者:太空狗 更新时间:2023-10-29 18:06:20 27 4
gpt4 key购买 nike

我正在从 GAE 中的表单上传一个 csv/tsv 文件,我尝试使用 python csv 模块解析该文件。

喜欢描述here ,GAE中上传的文件是字符串。
所以我将上传的 string 视为类似文件的对象:

file = self.request.get('catalog')
catalog = csv.reader(StringIO.StringIO(file),dialect=csv.excel_tab)

但我的文件中的新行不一定是“\n”(感谢 excel..),它产生了一个错误:
错误:未加引号的字段中出现换行符 - 您是否需要以通用换行模式打开文件?

有谁知道如何使用 StringIO.StringIO 将字符串视为以通用换行符打开的文件?

最佳答案

怎么样:

file = self.request.get('catalog')
file = '\n'.join(file.splitlines())
catalog = csv.reader(StringIO.StringIO(file),dialect=csv.excel_tab)

或者正如评论中指出的那样,csv.reader() 支持来自列表的输入,因此:

file = self.request.get('catalog')
catalog = csv.reader(file.splitlines(),dialect=csv.excel_tab)

或者如果将来 request.get 支持读取模式:

file = self.request.get('catalog', 'rU')
catalog = csv.reader(StringIO.StringIO(file),dialect=csv.excel_tab)

关于python - 在 Google App Engine 的 python 中上传和解析带有 "universal newline"的 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5341174/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com