(Python)解析制表符用换行符分隔的字符串

时间:2013-04-18 01:56:34

标签: python

我正在尝试读取制表符分隔的文件,但字段可能包含换行符,我想维护具有换行符的字段。我当前的实现从每个“\ n”创建新字段。

我已经尝试了csv模块,只是拆分“\ t”而没有成功我正在寻找的东西。以下是给定文件的示例行:

* Field_1 \ t Field_2 \ t Field_3 \ n其他文字\ n更多文字\ t Field_4 *

我想从上面的数据生成4个元素的列表。

* [“Field_1”,“Field_2”,“Field3 \ n其他文字\ n更多文字”,“Field_4”] *

任何想法或建议都会有所帮助。

2 个答案:

答案 0 :(得分:3)

您是否尝试过这样的标签?

data = 'Field_1 \t Field_2 \t Field_3 \n Additional Text \n More text \t Field_4'
print data.split('\t')

答案 1 :(得分:1)

fileName替换为您正在阅读的文件的路径:

inFile = open(fileName, "r")
rawData = inFile.read() # Entire file's contents as one multiline string (if there's a line break)
data = rawData.split("\t")
inFile.close()

还有一个选项(通常建议)对文件I / O使用with语句:

with open(fileName, "r") as inFile:
    rawData = inFile.read() # Entire file's contents as one multiline string (if there's a line break)
    data = rawData.split("\t")
# you can omit the inFile.close() statement.

使用with语句,打开的文件流将在运行时出现错误时自动关闭,但对于学习文件I / O的工作方式,人们不太清楚。