Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 属性列中的分隔符字符_Python_Tab Delimited - Fatal编程技术网

Python 属性列中的分隔符字符

Python 属性列中的分隔符字符,python,tab-delimited,Python,Tab Delimited,我有一个以制表符分隔的文件。其中一列是文本输入,通常包含选项卡 所以有点像 ID Phone Text Time ###### ######## blahblah \t\t i know YYYY-MM-DD HH:MM:SS 所以,当我在(python)中读取文件并按标签分开时,它显然会把事情搞砸。有没有办法针对特定的标签页?在一条线内说“在第一条、第二条和最后一条上划界”?是否

我有一个以制表符分隔的文件。其中一列是文本输入,通常包含选项卡

所以有点像

ID            Phone              Text                 Time
######        ########         blahblah \t\t i know   YYYY-MM-DD HH:MM:SS

所以,当我在(python)中读取文件并按标签分开时,它显然会把事情搞砸。有没有办法针对特定的标签页?在一条线内说“在第一条、第二条和最后一条上划界”?是否有有效的方法删除文本字段中的选项卡?我可以用任何东西代替它们,a-,a空间,没关系,它们不重要

如果您正在阅读这些行,并且您知道在其他字段中不会有选项卡,那么您可以执行以下操作:

f = open('your_file.txt','r')

id,phone,text,tm = [],[],[],[]
for i,line in enumerate(f):
    if i == 0:
        continue
    fields = line.strip().split('\t')
    id.append(fields[0])
    phone.append(fields[1])
    text.append('\t'.join(fields[2:-1]))
    tm.append(fields[-1])

f.close()

这将保留文本字段中的选项卡。如果你想摆脱它们,你可以用不同的字符将它们连接起来。

我看到的几个测试示例似乎都是这样。感觉很傻,因为这应该是一开始就显而易见的解决方案。谢谢没问题,我很高兴它能为您工作:)