Dans ce code j'ai essayé de définir une classe qui écrira dans un fichier. Dans la méthode init le nom du fichier est passé. J'ai aussi défini une méthode nommée " écrire "pour écrire dans le fichier. Puis j'ai créé une instance de la classe et j'ai passé la valeur du nom de fichier. Après cela, j'ai appelé la méthode d'écriture et j'ai passé le message pour écrire dans le fichier.Enfin, j'ai vérifié fichier est créé et si le fichier a le code du message.Here:Définir une classe à écrire dans un fichier en Python
class Logfile(object):
def __init__(self,file_name):
self.file_name = file_name
def write(self,msg):
with open('self.file_name','w') as myFile:
myFile.write(msg)
log = Logfile('myNewFile.txt')
log.write("this is a log file.")
with open('myNewFile.txt','r') as readFile:
read_file = readFile.read()
for line in read_file:
print(line)
Mais, il montre une erreur:
FileNotFoundError: [Errno 2] No such file or directory: 'myNewFile.txt'
Ce code python est enregistré dans un dossier de bureau appelé "Mon dossier". Et quand je vais là-bas, il n'y a vraiment pas un tel fichier nommé "myNewFile.txt".
Mais, si je lance le programme avec la partie vérification du code, je veux dire, cette partie:
with open('myNewFile.txt','r') as readFile:
read_file = readFile.read()
for line in read_file:
print(line)
alors, il n'y a pas d'erreur, mais toujours le « myNewFile.txt » n'est pas créé.
Pouvez-vous s'il vous plaît aidez-moi?
Dans votre méthode 'write':' 'self.file_name'' ->' self.file_name' L'une est une chaîne, l'autre est votre variable membre – UnholySheep
Oh, je l'ai eu. Donc idiot de moi.Merci – Protul
Vous ouvrez ceci: avec open ('self.file_name', 'w') comme myFile. Mais 'self.filename_name' n'est pas le nom du fichier. C'est une variable. –