使用Python拆分字符串时遇到问题

使用Python拆分字符串时遇到问题,python,parsing,split,text-processing,Python,Parsing,Split,Text Processing,我正在拼命尝试使用Python拆分字符串,但我需要解析的文本文件有点棘手: 文本文件是逗号分隔的数据文件 我做了以下工作: import fileinput for line in fileinput.input("sample.txt"): data = line.strip().split(',') pass 这实际上应该使工作正确吗 好了,现在是棘手的部分:我有一个字段,里面包含逗号,如下所示: "(CONTRACTS OF 5,000 BUSHELS)" 使用我的代码,脚本还将此

我正在拼命尝试使用Python拆分字符串,但我需要解析的文本文件有点棘手:

  • 文本文件是逗号分隔的数据文件
我做了以下工作:

import fileinput
for line in fileinput.input("sample.txt"):
data = line.strip().split(',')
pass
这实际上应该使工作正确吗

好了,现在是棘手的部分:我有一个字段,里面包含逗号,如下所示:

"(CONTRACTS OF 5,000 BUSHELS)"
使用我的代码,脚本还将此字段拆分为2

我如何要求python使用逗号作为分隔符,而不是当它们被“”括起时

提前感谢您的回答


Crak应使用CSV文件处理。

您的数据采用非常常见的格式--逗号分隔值(CSV)。而不是编写另一个解析器,考虑使用内置模块。

可以使用模块


这似乎是一个很好的建议,但在这种情况下如何使用csv模块的示例将真正改善这个答案。官方文档中有很多示例,我不认为在这里复制这些文件会有什么不同。可能是因为我从未使用过csv库,在阅读了几分钟的文档后,我感到困惑。你是对的,你已经提供了必要的东西。但如果这是我的问题,对我来说会有不同。@FarmBoy:请单击我答案中指向
csv
模块的链接,向下滚动几行到第一个绿色框,以获得一个非常简单的示例。请礼貌一点,我完全同意@S.Lott的评论。@FerdinandBeyer谢谢。删除的注释。为什么在代码示例中有一个
pass
。。。一天几乎白白浪费:)谢谢。如果这个答案在评论的地方有什么意义,我会把它投上去。问题没有具体说明他在用它做什么。它是用逗号分开的,但不是用引号里的逗号分开的。
import csv

with open('sample.txt', 'rb') as f:
    reader = csv.reader(f)
    for row in reader:
        # each row is a list of items,
        # corresponding to each row in your file,
        # including commas for quoted items