Python读取文本文件,按
我有一个文本文件,如下所示:Python读取文本文件,按,python,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循环中每次获得新行category id+category url。 在代码出现之前,我有其他方法: def main(): config=ConfigParser.Conf
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循环中每次获得新行category id+category 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的格式更改为文本文件格式吗
通过一些在线研究,我发现这是代码应该是什么样子的开始:
with open('categories.txt','r') as f:
for line in f:
但需要按“,”和“appead”和“url”进行分类。但我担心会因为这段代码而错过第一行或最后一行。这段代码会全部阅读并起作用吗?一些帮助将是伟大的 看起来像一个csv文件。尝试:
import csv
with open('categories.txt') as fp:
for category, url in csv.reader(fp):
print category, url
我就是这样做的
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)
假设你想把它们保存在一个列表中
urlcatlist=list()
with open('categories.txt','r') as f:
for line in f:
urlcatlist.append(line.strip().split(","))
#or print
print(line.strip().split(","))
它似乎可以工作,但在一些行
回溯(最后一次调用)后出现错误:文件“readfile.py”,第4行,for类别,url in csv.reader(fp):ValueError:太多的值无法解包
。在这种情况下,您的文件与逗号分隔的值不一致。你能提供一个更大的文件示例吗?其他答案向您展示了如何使用适用于您的案例的.split(“,”
)。否则,您可以将类别url
替换为值
,这将是一个列表。然后看看列表中有多少值。是的,我好像有一个,在某个地方删除了它,效果非常好。非常感谢。