PT1. Llibreries

De Lordwektabyte Wiki
Salta a la navegació Salta a la cerca


Guillem Solà i Boeck (host A10BPC22)

Ex1. Implementa l'exemple 1 de la teoria i executa'l

fibonacci.py

def fib(n):
#imprimeix per pantalla la sèrie fibonacci fins al terme "n" 
    a, b = 0, 1
    while b < n:
        print(b, end=' ')
        a, b = b, a+b
    print()


def fib2(n):
#Retorna la sèrie Fibonacci fins al terme "n"
    result = []
    a, b = 0, 1
    while b < n:
        result.append(b)
        a, b = b, a+b
    return result

exercici1.py

#importo la llibreria creada
import fibonacci

#crido la funció ''fib'' amb paràmetre 1000
fibonacci.fib(1000)

#imprimeixo el resultat de la funció ''fib2'' amb paràmetre 1000
print(fibonacci.fib2(1000))

#imprimeixo el resultat del mètode ''__name__'' de la llibreria (retorna el nom d'aquesta)
print(fibonacci.__name__)

Ex2. Busca per Internet 5 llibreries de python3 que puguin ser útils per a tu

math

Afegeix funcionalitat amb operacions matemàtiques més complexes; encara que la llibreria cmath està preparada per a operacions més complexes. Pàgina web

os

Ofereix una interfície per interactuar amb el sistema operatiu ja sigui amb comandes de terminal o altres funcions. Pàgina web

random

Funcions relacionades amb generadors de números pseudo-aleatoris, escollir ítems aleatoris de llistes, etc. Pàgina web

sys

Permet accedir a variables del propi entorn Python Pàgina web

datetime

Incorpora classes per a treballar amb formats de data i hora. Pot servir per a formatar variables com a dates i/o hores. | Pàgina web

Ex3. On podries trobar les llibreries de python al teu sistema. Utilitza la llibreria sys i la variable sys.path

Per defecte, les llibreries es troben a /usr/lib/pythonx.y (en funció de la versió) i /usr/lib64/pythonx.y per a les llibreries de 64 bits

Ex4. Realitzar un programa amb el següent menú

            SISTEMA DE DIAGNÒSTIC RÀPID DE FALLADES EN XARXA
************************************************************************
************ MENÚ ************
1. eina PING
2. eina TRACERT
3. eina HOSTNAME
4. eina IFCONFIG
5. eina DNS
6. eina GATEWAY

Per a poder realitzar el programa necessitarem la llibreria OS. No cal utilitzar funcions per a aquest programa

exercici4.py

import os

opcio=0
while opcio!=7:

    print("SISTEMA DE DIAGNÒSTIC RÀPID DE FALLADES EN XARXA")
    print("*************************************************")
    print("\nMENÚ")
    print("****")
    print("1. Eina PING")
    print("2. Eina TRACERT")
    print("3. Eina HOSTNAME")
    print("4. Eina IFCONFIG")
    print("5. Eina DNS")
    print("6. Eina GATEWAY")
    print("7. Sortir")

    opcio=eval(input("Tria una eina: "))
    if opcio==1:
        print("Faré 4 pings a www.google.com")
        os.system("ping -c 4 www.google.com")
    elif opcio==2:
        print("Faré un traceroute a www.google.com")
        os.system("traceroute www.google.com")
    elif opcio==3:
        print("El nom de host d'aquest sistema és")
        os.system("hostname")
    elif opcio==4:
        print("Resultat de la comanda ifconfig:")
        os.system("ifconfig -a")
    elif opcio==5:
        print("L'adreça IP de google.com és")
        os.system("host google.com")
    elif opcio==6:
        os.system("ping -c 4 gateway")
    elif opcio==7:
        print("Fins aviat")
    else:
        print("opció incorrecta")

Ex5. Fent servir la llibreria datetime realitza l’exercici següent

Hora i dia actual:  2018-05-02 13:04:21.221194
Hora i dia actual amb format:  18-05-02-13-04
Any Actual:  2018
Mes actual:  May
Setmana de l'any:  18
Dia de la setmana en número:  3
Dia de l'any:  122
Dia del mes:  02
Dia de la setmana:  Wednesday

No cal utilitzar funcions per aquest programa. Per poder donar-li el format desitjat a datetime, hauràs de fer servir strtime

Exemple: datetime.date.today().strftime("%c"))

exercici5.py

import time

print("Hora i dia actual: %s" % time.strftime("%Y-%m-%d %H:%M:%S.%f"))
print("Hora i dia actual amb format: %s" % time.strftime("%y-%m-%d-%H-%M"))
print("Any actual: %s" % time.strftime("%Y"))
print("Mes actual: %s" % time.strftime("%b"))
print("Setmana de l'any: %s" % time.strftime("%W"))
print("Dia de la setmana en número: %s" % time.strftime("%w"))
print("Dia de l'any: %s" % time.strftime("%j"))
print("Dia del mes: %s" % time.strftime("%d"))
print("Dia de la setmana: %s" % time.strftime("%a"))