Patrick TRAU, L2 SPI
lien vers le sujet.
Trau : Bonjour. Le sujet est sur moodle. Comme toujours, deux moitiés de sujet, un rapport tout à la fin, après le seconde partie du TP (sous traitement de texte, avec explications). Aujourd'hui : Q1 et 2
aaaa : ON POURRAIT AVOIR LA CORRECTION DU DERNIER TP SVP
Trau : Je ne ferai pas la correction du 2è TP.
Regardez déjà les TD et TP1.
bbbb : "path" représente quoi monsieur ?
Trau : Path est un chemin. Il peut être absolu (c:\users\dupont)
ou relatif : par rapport au dossier actuel (qui est affiché par mon programme) par ex
TP-info\TP3 si vous avez un dossier "TP-info" dans votre répertoire actuel, et que celui-là a un
sous-dossier "TP3".
directory=répertoire=dossier
file=fichier
cccc : Bonjour, j'ai réussi à créer une liste contenant l'ensemble des dossiers/fichiers d'un dossier entré,
mais je n'arrive pas à exécuter les fonctions qui vérifient si l'élément est un fichier ou un dossier
Trau : chemin c'est chemin de départ + "\\" + nom_fic_ou_dir<
dddd : [Errno 2] No such file or directory: ca signifie quoi ?
Trau : fichier ou dossier inexistant.
Juste avant isdir(xxxx) imprimer le xxxx. Le chemin doit être juste (soit absolu, soit relatif, mais pas
juste le nom de fichier s'il n'est pas dans votre dossier du getcwd).
Trau : En fait question 1 : faire une fonction : def lister(nom). puis si c'est un dir il faut appeler lister (f) par contre pour un file on ne fait que print.
eeee : mr vous pouvez m'aider avec un bug ? je cherche depuis 30 mn pk mon programme ne fonctionne pas
et j'arrive pas à trouver l'erreur
Trau : Tu me mets le source dans un mail trau@unistra.fr
Trau : pour tous : si vous utilisez "chdir" pour que ça vous change de répertoire, alors tout va bien
quand vous "descendez" dans l'arborescence des dossiers, mais il ne faut pas oublier de "remonter" après,
pour revenir à l'endroit initial : os.chdir("..") car .. signifie "dossier père".
Il vaut mieux ne pas changer de dossier mais, à chaque fois qu'on va dans un sous-dossier, concatener son nom
avec le chemin d'avant, par ex "c:\users\pat" + "\\" + "mes documents"
Trau : toujours pour tous : il faut que tu fasses des print de ce que tu envoies à isdir ou isfile, pour
voir si le path est juste. S'il y a juste monfic.txt dans f et qu'en fait il est dans un sous-dossier, il faut concatener le dossier + "\\" + f
1) j'ai mis sur moodle une petite aide pour ceux qui n'ont pas encore fait la Q2. Si vous l'avez faite, gardez la votre !
2)
S'il nest pas possible de lancer 2 programmes en même temps sur MacOS
(ce qui m'étonne), je vous ai préparé une Q3 alternative, mais prévenez
moi avant ! en particulier dans votre rapport vous me direz ce que vous
avez essayé (et n'a pas marché) pour lancer les 2 programmes en même
temps
3) pour le rapport : expliquer ce que vous avez compris, les difficultés, ce qui reste flou....
rapport à rendre dès la fin de la séance, et j'essayerai de le corriger le plus rapidement possible.
AAAA: mr pour la question 2 les information du fichier sont accessible si on rajoute un bin à la place de hex c'est ca? enfin faut les afficher en binaire?
Trau: Q2
: non, ce que je veux c'est uniquement les droits d'accès. il faut
enlever toutes les autres informations que donne os.stat, et me dire
(mais, pas par 0 ou 1) quels sont les 3 droits du propriétaire, puis du
groupe, puis des autres (souvent on affiche RWX si on a tous les
droits, R-- si uniquement Read, -WX si pas Read mais Write et
eXecute....)
pour l'affichage, comme dit au début du TP, j'ai mis une proposition sur moodle
BBBB: Lorsque j'essaie d'ouvrir lecteur ou ecrivain dans le prompt, le message
suivant s'affiche : "python: can't open file 'lecteur.py': [Errno 2] No
such file or directory", pourquoi ?
Trau: le fichier n'existe pas. Peut-être s'appelle-t-il ".py.txt" ? Sur
windows, affichez la liste des fichiers. Choisissez l'onglet
"affichage". Décochez "masquer les extensions". Renommez lecteur.py.txt
en lecteur.py
ou alors sur le terminal (anaconda prompt) :
dir lecteur.*
ren lecteur.py.txt lecteur.py
CCCC: Mr le code à tester ne fontionne pas pour moi . J'ai 2 messages d erreur . "only one usage of each socket (protocol/network/port) is normally permitted "pour lecteur et "unexpcted character line continuation character" pour ecrivain.
Trau: essaye le port 80 au lieu de 8080 ?
CCCC: je fais ça comment ?
Trau: avec le bloc note, ou notepad++, vous changez dans les deux programmes
Trau: "unexpcted character line continuation" : est-ce le \ ? si tu le mets, il faut que la suite
de la ligne soit ligne suivante, ou alors tu l’enlèves et tu mets la suite sur la même ligne.
Ou alors quelque part tu as mal refermé des parenthèses, ou des apostrophes (mettre des guillemets
autour de "à l'écoute" et pas des apostrophes puisqu'il y en a une dedans)
Pour tous : pour la Q3 (jeu) il faut faire une boucle. Soit à chaque donnée vous ouvrez le tube, transmettez, refermez immédiatement, soit vous ouvrez une seule fois, faites la boucle avec plusieurs transmissions, puis fermez une fois le jeu fini (trouvé)
Patrick TRAU, avril 2021