如何将多行命令行参数读入到python2的CSV读取中

2024-09-30 01:25:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在测试一个python2脚本,它将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

我希望有以下几行:

^{pr2}$

但我最后只说了一句话:

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是正确的,但我似乎没有使用正确的方法。在

有什么想法吗? 谢谢,在广告中。!在


Tags: 文件csvthe字符串命令行文本脚本input
1条回答
网友
1楼 · 发布于 2024-09-30 01:25:58

为什么不直接从csv文件中读取这些行呢?例如:

    with open('D:/file-1.csv','r') as csvfile:
         creader=csv.reader(csvfile, delimiter=',')
         for line in creader:
             print line

用你自己的功能来代替“打印线”。如果确实需要手动复制csv文件中的每一行,则可以尝试在传递给读取器之前按'\r\n'拆分每一行。在

^{pr2}$

相关问题 更多 >

    热门问题