Chat en python - Python - Programmation
Marsh Posté le 08-12-2012 à 12:31:50
http://code.activestate.com/recipes/134892/
(accessoirement, c'est quoi cette idée bizarre d'ouvrir 3 fois le même fichier et de ne jamais le fermer?)
Marsh Posté le 08-12-2012 à 14:20:06
Merci beaucoup mais je ne comprends pas grand-chose à ces lignes de code (je suis débutant) pourrait tu m'expliquais ?
en ce qui concerne les fichiers il me semble avoir lu que ce n’était pas nécessaire de les fermes
Marsh Posté le 08-12-2012 à 14:25:53
flolam62 a écrit : Merci beaucoup mais je ne comprends pas grand-chose à ces lignes de code (je suis débutant) pourrait tu m'expliquais ? |
Par défaut l'entrée/sortie de Python (genre input() ou print()) est line-buffered, donc elle n'est "activée" qu'au moment où une ligne est terminée (en appuyant sur la touche "entrée", donc).
Il y a des paramètres pour éviter le buffering de la sortie, mais pas de l'entrée, donc il faut utiliser des hooks spécifiques à la plateforme. Ce que le code lié fait, il crée une fonction getch() que tu peux appeler pour obtenir un caractère sais par l'utilisateur sans attendre la fin de ligne.
flolam62 a écrit : en ce qui concerne les fichiers il me semble avoir lu que ce n’était pas nécessaire de les fermes |
C'est incorrect dans le cas général.
Marsh Posté le 08-12-2012 à 11:32:21
Bonjour à tous cela fait quelque temps que je me casse la tête sur un programme. En effet il fonctionne, mais pas comme je voudrais, je voudrais qu'il affiche le texte contenu dans un fichier .txt mais en temps réel ce qui n'est hélas pas le cas on doit obligatoirement appuyaient sur "entrée" ce qui n'est pas pratique
voici mon une partie de mon code:
import os
user=raw_input("pseudo?: " )
print "bienvenu sur le Chat",user
print "pour quitter tapez: EXIT"
while not user=="admin":
obFichier = open('chat.txt','a')
fichier=open("chat.txt",'r')
chat = fichier.read()
print chat
texte=raw_input("Texte: " )
fichier=open("chat.txt","a" )
fichier.write(user)
fichier.write(": " )
fichier.write(texte)
fichier.write(".\n" )
print chat
if texte=='EXIT':
os.system('pause')
break
j'aimerais que le programme affiche en temps réel ses changements
merci d'avance