Maison >développement back-end >Tutoriel Python >Qu'est-ce que pythontemp
Le module tempfile est spécialement utilisé pour créer des fichiers temporaires et des répertoires temporaires. Il fonctionne bien sur les plateformes UNIX et Windows.
Le module tempfile fournit de nombreuses fonctions couramment utilisées. Permettez-moi de présenter ces fonctions en détail ci-dessous.
tempfile.TemporaryFile(mode='w+b', buffering=Aucun, encoding=Aucun, newline=Aucun, suffix=Aucun, prefix=Aucun, dir=Aucun ) : Créez un fichier temporaire. Cette fonction renvoie un objet de type fichier, c'est-à-dire qu'elle prend en charge les E/S de fichier.
tempfile.NamedTemporaryFile(mode='w+b', buffering=None, encoding=None, newline=None, suffix=None, prefix=None, dir=None, delete=True) : Créer un fichier temporaire déposer . Cette fonction fait à peu près la même chose que la fonction précédente, sauf que le fichier temporaire qu'elle génère a un nom de fichier dans le système de fichiers.
Recommandations associées : "Tutoriel vidéo Python"
tempfile.SpooledTemporaryFile(max_size=0, mode='w+b', buffering=None, encoding=None, newline=Aucun, suffix=Aucun, prefix=Aucun, dir=Aucun) : Créez des fichiers temporaires. Par rapport à la fonction TemporaryFile, lorsque le programme envoie des données dans le fichier temporaire, elles seront d'abord sorties dans la mémoire et ne seront pas réellement sorties sur le disque physique tant que max_size n'est pas dépassé.
tempfile.TemporaryDirectory(suffix=None, prefix=None, dir=None) : Génère un répertoire temporaire.
tempfile.gettempdir() : récupère le répertoire temporaire du système.
tempfile.gettempdirb() : Identique à gettempdir(), sauf que cette fonction renvoie une chaîne d'octets.
tempfile.gettempprefix() : Renvoie le préfixe utilisé pour générer les fichiers temporaires.
tempfile.gettempprefixb() : Identique à gettempprefix(), sauf que cette fonction renvoie une chaîne d'octets.
Le module tempfile fournit également deux fonctions de bas niveau, tempfile.mkstemp() et tempfile.mkdtemp(). Les quatre fonctions présentées ci-dessus pour créer des fichiers temporaires et des répertoires temporaires sont toutes des fonctions de haut niveau prenant en charge le nettoyage automatique et peuvent être utilisées avec l'instruction with, contrairement à ces deux fonctions de bas niveau. Il est généralement recommandé d'utiliser des fonctions de haut niveau pour créer des fichiers temporaires et des répertoires temporaires.
De plus, le module tempfile fournit également l'attribut tempfile.tempdir. Le répertoire temporaire du système peut être modifié en attribuant une valeur à cet attribut.
Le programme suivant montre comment utiliser les fichiers temporaires et les répertoires temporaires :
import tempfile # 创建临时文件 fp = tempfile.TemporaryFile() print(fp.name) fp.write('两情若是久长时,'.encode('utf-8')) fp.write('又岂在朝朝暮暮。'.encode('utf-8')) # 将文件指针移到开始处,准备读取文件 fp.seek(0) print(fp.read().decode('utf-8')) # 输出刚才写入的内容 # 关闭文件,该文件将会被自动删除 fp.close() # 通过with语句创建临时文件,with会自动关闭临时文件 with tempfile.TemporaryFile() as fp: # 写入内容 fp.write(b'I Love Python!') # 将文件指针移到开始处,准备读取文件 fp.seek(0) # 读取文件内容 print(fp.read()) # b'I Love Python!' # 通过with语句创建临时目录 with tempfile.TemporaryDirectory() as tmpdirname: print('创建临时目录', tmpdirname)
Le programme ci-dessus crée des fichiers temporaires de deux manières :
Premier Le La première méthode consiste à créer manuellement un fichier temporaire. Après avoir lu et écrit le fichier temporaire, vous devez le fermer activement. Lorsque le programme ferme le fichier temporaire, le fichier sera automatiquement supprimé.
La deuxième façon consiste à utiliser l'instruction with pour créer un fichier temporaire, afin que l'instruction with ferme automatiquement le fichier temporaire.
Le programme ci-dessus crée également un répertoire temporaire à la fin. Étant donné que le programme utilise l'instruction with pour gérer le répertoire temporaire, le programme supprime également automatiquement le répertoire temporaire.
Exécutez le programme ci-dessus et vous pouvez voir le résultat suivant :
C:\Users\admin\AppData\Local\Temp\tmphvehw9z1 两情若是久长时,又岂在朝朝暮暮。 b'I Love Python!' 创建临时目录C:\Users\admin\AppData\Local\Temp\tmp3sjbnwob
La première ligne de sortie ci-dessus est le nom de fichier du fichier temporaire généré par le programme, et la dernière La ligne de sortie est le nom du fichier temporaire généré par le programme. Le nom du répertoire temporaire. Il convient de noter que ne recherchez pas de fichiers temporaires ou de dossiers temporaires, car les fichiers temporaires et les dossiers temporaires seront supprimés à la fermeture du programme.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!