Python读取文本文件拆分

时间:2013-10-18 15:23:55

标签: python

我有一个文本文件,如下所示:

164,http://www.site.com/category1
161,http://www.site.com/category2
162,http://www.site.com/category3
163,http://www.site.com/category4

我试图在for循环中每次获取新行类别id +类别url。 在代码看起来之前我有其他方法:

def main():
    config=ConfigParser.ConfigParser()
    config.readfp(open("settings.cfg"),"r")
    for site in config.sections():
       # ipdb.set_trace()
        settings=dict(config.items(site))
        for (url,category) in zip(settings['url'].split(","),settings['category'].split(",")):

任何人都可以帮我将settings.cfg的for更改为我的文本文件格式吗?

使用一些研究我在网上找到了代码应该如何开始:

with open('categories.txt','r') as f:
    for line in f:

但需要用“,”和appeand url,类别剥离它。但我害怕错过这段代码的第一行或最后一行,这会读完所有内容吗?一些帮助将是伟大的!

3 个答案:

答案 0 :(得分:1)

看起来像一个csv文件。尝试:

import csv

with open('categories.txt') as fp:
    for category, url in csv.reader(fp):
        print category, url

答案 1 :(得分:0)

我就是这样做的。

file1 = "myFile.txt";
tFile1 = open(file1,'r')

for line in tFile1.readlines():
    lineParse = line.split(',')
    lineNumber = lineParse[0];
    urlParse = lineParse[1].split('/');
    url = urlParse[2];
    category = urlParse[3];

    print str(lineNumber)+" "+"http://"+str(url)+" "+str(category)

答案 2 :(得分:0)

假设您要将这些内容保留在列表列表中,

urlcatlist=list()
with open('categories.txt','r') as f:

    for line in f:
        urlcatlist.append(line.strip().split(","))
        #or print
        print(line.strip().split(","))