如何在python中使用split函数?

时间:2016-12-07 01:53:08

标签: python file split

我有一个包含大量信息的文件。例如,所有行都遵循与此相同的模式:

     <school>Nebraska</school>

我正在尝试使用split函数来检索'Nebraska'。这就是我到目前为止所做的,但我不知道该怎么做才能让它切断两个部分,而不仅仅是第一部分。

   with open('Pro.txt') as fo:
       for rec in fo:
          print(rec.split('>')[1])

有了这个我得到:

    Nebraska</school

3 个答案:

答案 0 :(得分:1)

你已经切断了部分字符串。继续以同样的方式:

>>> s = '<school>Nebraska</school>'
>>> s.split('>')[1]
'Nebraska</school'
>>> s.split('>')[1].split('<')[0]
'Nebraska'

也就是说,你应该使用像BeautifulSoup这样的HTML解析器来解析HTML。

答案 1 :(得分:0)

s = '<school>Nebraska</school>'

在:

s.split('>')

出:

['<school', 'Nebraska</school', '']

在:

s.split('>')[1].split('<')

出:

['Nebraska', '/school']

在:

s.split('>')[1].split('<')[0]

出:

'Nebraska'

答案 2 :(得分:0)

您可以使用正则表达式:

import re
regexp = re.compile('<school>(.*?)<\/school>')

with open('Pro.txt') as fo:
    for rec in fo:
        match = regexp.match(rec)
        if match: 
            text = match.groups()[0]
            print(text)