Copie d'un fichier ligne par ligne en python

Je suis en train d'écrire un programme en python pour copier un fichier ligne par ligne dans un nouveau fichier. Le code que j'ai est ci-dessous dans lequel je suis à l'aide d'une boucle pour copier le fichier ligne par ligne.

Cependant, puisque le nombre de lignes dans le fichier peut changer, est-il un moyen de copier un fichier ligne par ligne en python sans l'aide d'une boucle qui s'appuie sur les chiffres, et au lieu de cela repose sur quelque chose comme le caractère EOF pour terminer la boucle?

import os
import sys

i = 0
f = open("C:\\Users\\jgr208\\Desktop\\research_12\\sap\\beam_springs.$2k","r")
copy = open("C:\\Users\\jgr208\\Desktop\\research_12\\sap\\copy.$2k","wt")
#loop that copies file line by line and terminates loop when i reaches 10
while i < 10:
     line = f.readline()
     copy.write(str(line))
     i = i +1
f.close()
copy.close()
copy est une confusion de nom parce que Python a un copy module.
"je suis en train d'écrire un programme en python pour copier un fichier ligne par ligne dans un nouveau fichier." Pourquoi?
Pourquoi êtes-vous en passant la ligne d'str() avant de l'écrire? Il devrait venir en tant que chaîne, ainsi str() est redondant.
Je l'ai dit en dessous, au plus tard dans le programme, je vais avoir à modifier une ligne dans le fichier donc je ne peux pas lire le fichier à la fois. Au lieu de cela, j'ai dupliquer le fichier ligne par ligne.

OriginalL'auteur jgr208 | 2012-07-20