Как правильно переписать часть кода с Python на Си?
primary_list = tuple([line.strip() for line in open('file1.txt', 'r')])
secondary_list = tuple([line.strip() for line in open('file2.txt', 'r')]) Квадратные скобки, на мой взгляд, необязательны.for item in primary_list:
    if item is None:
      continue Не уверен, что эта ветвь выполнится хотя бы раз.
Если стоит задача ускорить работу скрипта, то, на мой взгляд, проще переписать так:primary_set = frozenset(line.strip() for line in open('file1.txt', 'r'))
secondary_set = frozenset(line.strip() for line in open('file2.txt', 'r'))
with open('test.txt', 'w') as f:
    for item in primary_set&secondary_set:
        if item:
            f.write(item+'\n')
print 'Complete'
Можете добавить сортировку по вкусу.
Множества (set) нужно использовать и на c++, и на питоне. 
Считать оба файла в множества, взять пересечение, и распечатать.