对象迭代写入文件,但只能写入最后一个

for catalogue in all_catalogue:
    
    detail = catalogue['href']

    f = open("course_catalogue.txt","w")
    f.write("https://www.coursera.org" + detail + '\n' )
    f.close

这个是我的代码,爬取coursera中的10课程目录链接,但是build完之后,看到txt中只写入了10个目录链接中的最后一个,求解啊,谢谢大家

阅读 2.5k
1 个回答

因为每次重新打开文件,重新写入,把原来的覆盖了,标准写法:

with open("course_catalogue.txt","w") as f:
    for catalogue in all_catalogue:
        detail = catalogue['href']
        f.write("https://www.coursera.org" + detail + '\n' )
推荐问题