Diferència entre revisions de la pàgina «ASIX-M3-UF3-Banc de Solucions»

De wikiserver
Dreceres ràpides: navegació, cerca
(Fitxers de text)
(Fitxers de text)
Línia 88: Línia 88:
 
==Fitxers de text==
 
==Fitxers de text==
  
1. El fitxer comarques.txt conté un llistat de les comarques de Catalunya. És un fitxer de text i cada comarca ocupa una línia. Feu un programa amb un menú que ens permeti executar els mètodes per:
+
1. Fes un programa que crei un diccionari en les dades dels empleats del fitxer de text empleats.txt. Y a continuació, el recorri mostrant les seves dades.
 +
 
 +
'''Format del diccionari:'''
 +
:Clau: Id de la persona
 +
:Valor: Llista amb Nom, Cognom i Salari
 +
 +
Creeu prèviament el fitxer de text amb el següent format: Id;Nom;Cognom;Sou (un a cada línia).
 +
 
 +
Exemple de la sortida:
 +
 
 +
<pre>
 +
Id    Nom    Cognoms    Sou
 +
----------------------------
 +
123H  Pere    Pou        900
 +
547A  Maria  Roda      1500
 +
784K  Luis    Abadal    1300
 +
465F  Raquel  Busquet  1600
 +
</pre>
 +
 
 +
:Fitxer:
 +
<pre>
 +
123H;Pere;Pou;900
 +
547A;Maria;Roda;1500
 +
784K;Luis;Abadal;1300
 +
465F;Raquel;Busquet;1600
 +
</pre>
 +
<!--
 +
<source lang="python">
 +
from io import open
 +
 
 +
fitxer_emp = open('empleats.txt','r', encoding="utf8")
 +
text_empleats = fitxer_emp.readlines()
 +
fitxer_emp.close()
 +
 
 +
empleats = {}
 +
for empleat in text_empleats:
 +
    camps = empleat.replace("\n", "").split(";") 
 +
    empleats [camps[0]] = [camps[1],camps[2],camps[3]]
 +
 
 +
print("Id    Nom    Cognoms    Sou ")
 +
print("----------------------------")
 +
for clau, valor in empleats.items():
 +
    print(clau.ljust(5), valor[0].ljust(7), valor[1].ljust(8), valor[2].rjust(5))
 +
</source>
 +
-->
 +
 
 +
2. El fitxer comarques.txt conté un llistat de les comarques de Catalunya. És un fitxer de text i cada comarca ocupa una línia. Feu un programa amb un menú que ens permeti executar els mètodes per:
  
 
:*1. Mostrar totes les comarques que comencin per una lletra i el nombre total de les mateixes.
 
:*1. Mostrar totes les comarques que comencin per una lletra i el nombre total de les mateixes.
Línia 164: Línia 210:
  
  
??. Fes un programa que crei un diccionari en les dades dels empleats del fitxer de text empleats.txt. Y a continuació, el recorri mostrant les seves dades.
 
 
'''Format del diccionari:'''
 
:Clau: Id de la persona
 
:Valor: Llista amb Nom, Cognom i Salari
 
 
Creeu prèviament el fitxer de text amb el següent format: Id;Nom;Cognom;Sou (un a cada línia).
 
 
Exemple de la sortida:
 
 
<pre>
 
Id    Nom    Cognoms    Sou
 
----------------------------
 
123H  Pere    Pou        900
 
547A  Maria  Roda      1500
 
784K  Luis    Abadal    1300
 
465F  Raquel  Busquet  1600
 
</pre>
 
 
:Fitxer:
 
<pre>
 
123H;Pere;Pou;900
 
547A;Maria;Roda;1500
 
784K;Luis;Abadal;1300
 
465F;Raquel;Busquet;1600
 
</pre>
 
<!--
 
<source lang="python">
 
from io import open
 
 
fitxer_emp = open('empleats.txt','r', encoding="utf8")
 
text_empleats = fitxer_emp.readlines()
 
fitxer_emp.close()
 
 
empleats = {}
 
for empleat in text_empleats:
 
    camps = empleat.replace("\n", "").split(";") 
 
    empleats [camps[0]] = [camps[1],camps[2],camps[3]]
 
  
print("Id    Nom    Cognoms    Sou ")
 
print("----------------------------")
 
for clau, valor in empleats.items():
 
    print(clau.ljust(5), valor[0].ljust(7), valor[1].ljust(8), valor[2].rjust(5))
 
</source>
 
-->
 
  
 
[https://docs.hektorprofe.net/python/manejo-de-ficheros/ejercicios/]
 
[https://docs.hektorprofe.net/python/manejo-de-ficheros/ejercicios/]

Revisió del 12:12, 4 maig 2021

Getió de fitxers i directoris

1. Feu un programa que actuï de manera diferent segons si existeix o no una carpeta anomenada “Temp” en un directori concret. Si no existeix, l'ha d'intentar crear. Si existeix, l'ha d’esborrar. Cada cop que es realitza una acció, cal dir si s'ha pogut dur a terme i la ruta absoluta de la carpeta processada.

2. Genereu un programa que demani a l'usuari dues cadenes de text de tres lletres, de manera que les pugui escriure pel teclat en una mateixa línia, i un directori. El programa ha de cercar tots els fitxers en el directori que tinguin com a extensió la primera cadena de text i canviar-la a la segona. Per exemple, si l'usuari escriu “txt doc”, tots els fitxers amb extensió ”.txt” han de passar a tenir l'extensió ”.doc”.

3. Realitzeu un programa que, en executar-se, llegeixi des del teclat la ruta a una carpeta del vostre ordinador i una mida en Kb. Llavors, ha de mostrat per pantalla tots els fitxers (no les carpetes) amb una mida superior a la donada per l’usuari. (Recordeu que 1 Kb = 1024 bytes.) Si la carpeta no existeix, ha de mostrar un missatge d'error.

>>> os.stat('uno.txt').st_size
2899


4. Feu un programa que pregunti per pantalla el nom (o part del nom) d'un fitxer i la ruta a una carpeta. Aquestes dades les introduirà l'usuari pel teclat. Llavors el programa ha de cercar i mostrar per pantalla la ruta absoluta de tots els fitxers amb aquest nom a partir de la carpeta assenyalada (tant directament dintre seu com dins d'altres carpetes successives).


Fitxers de text

1. Fes un programa que crei un diccionari en les dades dels empleats del fitxer de text empleats.txt. Y a continuació, el recorri mostrant les seves dades.

Format del diccionari:

Clau: Id de la persona
Valor: Llista amb Nom, Cognom i Salari

Creeu prèviament el fitxer de text amb el següent format: Id;Nom;Cognom;Sou (un a cada línia).

Exemple de la sortida:

Id    Nom    Cognoms    Sou 
----------------------------
123H  Pere    Pou        900
547A  Maria   Roda      1500
784K  Luis    Abadal    1300
465F  Raquel  Busquet   1600
Fitxer:
123H;Pere;Pou;900
547A;Maria;Roda;1500
784K;Luis;Abadal;1300
465F;Raquel;Busquet;1600

2. El fitxer comarques.txt conté un llistat de les comarques de Catalunya. És un fitxer de text i cada comarca ocupa una línia. Feu un programa amb un menú que ens permeti executar els mètodes per:

  • 1. Mostrar totes les comarques que comencin per una lletra i el nombre total de les mateixes.
  • 2. Crear un diccionari amb la primera lletra de cada comarca com a clau i el número de comarques que comencen per aquesta lletra.
  • 3. Crear un nou fitxer amb les dades del diccionari de l'apartat 2, una lletra per línia i el número separat per tabulador ('\t');
  • 4. A partir del fitxer anterior sumi i ens mostri quantes comarques hi ha (podeu utilitzar els mètodes dels strings split i rstrip.



[1]