Iterando através de diretórios com Python

Eu preciso percorrer os subdiretórios de um determinado diretório e procurar por arquivos. Se eu pegar um arquivo, tenho que abri-lo e alterar o conteúdo e substituí-lo por minhas próprias linhas.

Eu tentei isso:

import os

rootdir ='C:/Users/sid/Desktop/test'

for subdir, dirs, files in os.walk(rootdir):
    for file in files:
        f=open(file,'r')
        lines=f.readlines()
        f.close()
        f=open(file,'w')
        for line in lines:
            newline = "No you are not"
            f.write(newline)
        f.close()

mas estou recebendo um erro. O que estou fazendo de errado?

questionAnswers(3)

yourAnswerToTheQuestion