我正在测试一个 Python 2 脚本,该脚本将 CSV 文件的文本作为命令行参数。CSV 是一个标准的 Excel CSV 文件,带有','
项目分隔符和'\r\n'
行尾分隔符。
问题是我需要将 CSV 文本作为单行传递给脚本,以便将字符串识别为单个参数。为了做到这一点,我在记事本中打开 CSV 并替换所有新行'\r\n'
,使我能够成功地将测试读入我的脚本。但是,当我尝试csv.reader
从字符串创建对象时,csv.reader
只会看到一行我希望 iot 看到多行的地方。
给定以下 CSV 字符串示例:
The,quick,brown,fox\r\njumps,over,the,lazy,dog
我希望以下几行:
The,quick,brown,fox
jumps,over,the,lazy,dog
但相反,我只得到了一行:
The,quick,brown,fox\r\njumps,over,the,lazy,dog
从命令行捕获字符串后,我使用以下内容将其加载到csv.reader
:
input_str = self.GetCsvStringFromInput()
input_reader = csv.reader(StringIO.StringIO(input_str))
我正在使用 Windows,所以我认为这\r\n
是正确的,但我似乎没有使用正确的方法。
有任何想法吗?谢谢,在adv.!