Как в Windows создать файл с кириллицей в названии файла?
Может быть так сработает?
with open('f.txt') as file:
    lines = file.read().splitlines()

for line in lines:
    print(line)
    with open(line.encode('utf-8'), 'w') as file:
        file.write('')

Тут мы явно указываем, что имя файла в кодировке UTF-8, а не в однобайтной кодировке OEM.
 The default encoding is platform dependent (whatever locale.getpreferredencoding() returns), but any text encoding supported by Python can be used.
Так что Ultra-Bad Coder прав. По дефолту на винде у тебя f.txt открывается с кодировкой windows-1251, а в линуксе по дефолту юникод поди.
Лучше всегда при открытии явно указывать режим и ожидаемую кодировку файла.