根据文件中的制表符分割字符串

发布于 2021-01-29 17:50:15

我的文件包含用制表符(“ \ t”)分隔的值。我正在尝试创建一个列表,并将文件的所有值存储在列表中。但是我遇到了一些问题。这是我的代码。

line = "abc def ghi"
values = line.split("\t")

只要每个值之间只有一个制表符,它就可以正常工作。但是,如果标签不止一个,则它将标签也复制到值。就我而言,额外的标签通常位于文件中的最后一个值之后。

关注者
0
被浏览
159
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您可以regex在这里使用:

    >>> import re
    >>> strs = "foo\tbar\t\tspam"
    >>> re.split(r'\t+', strs)
    ['foo', 'bar', 'spam']
    

    更新:

    您可以 str.rstrip用来摆脱尾随'\t',然后应用正则表达式。

    >>> yas = "yas\t\tbs\tcda\t\t"
    >>> re.split(r'\t+', yas.rstrip('\t'))
    ['yas', 'bs', 'cda']
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看