Pas limité à python, mais ** je déteste trop les opérations sur les fichiers **, donc j'essaierai un peu les opérations sur les fichiers. L'opération de fichier ici est le niveau d'ouverture, d'écriture et de fermeture du fichier.
Pour le moment, Je pense qu'il faudra un certain temps à un tiers pour rendre l'article significatif.
step1
J'ai exécuté le code suivant.
file_step1.py
f1 = open('testfile1.txt')
f1.write(123)
f1.write(456)
f1.close
J'ai été grondé comme suit.
C:\_temp_work\fileA>python file_step1.py
Traceback (most recent call last):
File "file_step1.py", line 2, in <module>
f1.write(123)
TypeError: write() argument must be str, not int
C:\_temp_work\fileA>
Ce qui précède est une erreur supplémentaire, mais j'ai corrigé l'erreur.
file_step1a.py
f1 = open('testfile1.txt')
f1.write('123')
f1.write('456')
f1.close
De plus, j'ai été grondé.
C:\_temp_work\fileA>python file_step1a.py
Traceback (most recent call last):
File "file_step1a.py", line 2, in <module>
f1.write('123')
io.UnsupportedOperation: not writable
C:\_temp_work\fileA>
Fixé.
file_step1b.py
f1 = open('testfile1.txt', mode='w')
f1.write('123')
f1.write('456')
f1.close
Cette fois, il n'y a pas de problème.
C:\_temp_work\fileA>python file_step1b.py
C:\_temp_work\fileA>
testfile1.txt Peut être fait.
Le contenu est
testfile1.txt
123456
aucun problème.
Donc je m'intéresse aux binaires ** J'ai essayé mode = 'wb'. ** **
file_step2.py
f1 = open('testfile1.txt', mode='wb')
f1.write('123')
f1.write('456')
f1.close
De plus, j'ai été grondé.
C:\_temp_work\fileA>python file_step2.py
Traceback (most recent call last):
File "file_step2.py", line 2, in <module>
f1.write('123')
TypeError: a bytes-like object is required, not 'str'
C:\_temp_work\fileA>
à suivre.