入力ファイル名と出力ファイル名(それぞれ文字列)を引数に取り,入力ファイルに行番号を付けた内容を出力ファイル名にコピーする関数 copy を書きなさい.行番号は半角の数字と「:」(コロン),スペース一つとする.たとえば,1: や 50: となる.また,テキストファイルの文字コードは utf-8 とする.
という問題なのですが、このように考えました。
python
1import shutil 2def copy(input_filename, output_filename): 3 f = open(input_filename, mode='r',encoding='utf-8') 4 i = 1 5 for s in f: 6 print('{}: {}'.format(i,s.rstrip('¥n'))) 7 i += 1 8 f.close() 9 shutil.copy2(input_filename, output_filename) 10 return output_filename
1: 10
2: 20
にならなければならないのですが、10 、20 のような数字だけ出力されるようになっていました。
わかる方教えていただけますでしょうか。また、どのようにすればできるのでしょうか