Omet navegació

MD2.1 Començam a picar codi!

 

⛏ Començam a picar codi!

Per assignar un valor a una variable (emmagatzemar una dada a la memòria) hem de fer-ho mitjançant lletres o paraules completes seguides de l'operador "=". En programació no fa la mateixa funció que a matemàtiques i aquí és l'encarregat d'assignar un valor (part dreta) a la variable esmentada (part esquerra).

# Exemple de variable. Emmagatzema la ciutat d'origen d'un usuari

# `=`: Operador # Part esquerra: variable # Part dreta: valor ciutat_origen = "París"

❓️ Què haurem de tenir en compte a l'hora de definir variables?

  • Per definir variables emprarem lletres [Aa - Zz] i/o també nombres [0 - 9]. NO podem emprar signes ni caràcters especials llevat del guió baix que explicarem a continuació.
  • Usarem, en la mesura del possible, noms concrets i descriptius que facilitin l'enteniment del codi. Emprarem lletres minúscules per definir les nostres variables (nom, valor, ciutat, numero1, sumatori, x, z, etc.).

❗ATENCIÓ! És important subratllar que en Python, les variables són case-sensitive, és a dir, Eivissa, eivissa i EIVISSA són variables diferents. Si la variable que s'ha definit a l'inici ha estat Eivissa, només aquesta funcionarà quan sigui invocada. Tot i que es poden emprar lletres majúscules, ens convé seguir les convencions d'escriptura establertes i fer-ho en minúscula sempre que sigui possible.

  • Si volem fer referència a paraules compostes, usarem el guió baix per separar-les "_" (en programació, l'estil d'escriptura conegut com a snake case). Ex. nom_complet, codi_postal, nou_valor, etc.
  • Una altra tècnica, manco emprada, però també disponible, és aquella coneguda com a camelCase on escrivim paraules juntes fent servir majúscula cada vegada que canviam de parula. Ex. dataDeNaixement, ciutatOrigen, marcaDeCotxe, etc.
  • Usarem el signe igual "=" per assignar el valor a la nostra variable. Abans i després del signe deixarem un espai en blanc (només un). Ex. primer_numero = 3, nom = "Maria", etc.
  • Si volem definir la nostra variable emprant números, hem de saber que sí que podem fer-ho, però mai al principi de la paraula (no està permès fer-ho). Ex. alumne5 = "Pere" # Això està permès, 5a = "La meva classe" #Això no està permès.
  • Si tenim un gran grapat de variables i les volem escriure en una sola línia també podem fer-ho seguint l'estructura següent: variable1,variable2, variable3 = "valor variable 1", "valor variable 2", "valor variable 3".
# Exemple de variables dins una mateixa línia
fruita1,fruita2, fruita3 = "meló", "síndria", "pinya"

# Imprimim les variables en pantalla
print(fruita1, fruita2, fruita3)

meló síndria pinya
  • Una altra necessitat que se'ns pot donar és que haguem de donar el mateix valor a tota una sèrie de variables, per això ho farem d'aquesta manera tan senzilla: variable1 = variable2 = variable 3 = "valor desitjat".
# 3 variables que tenen el mateix valor
meu_capital = teu_capital = seu_capital = "3500 €"

# Mostram en pantalla com interpreta aquestes dades el programa
print(meu_capital)
print(teu_capital)
print(seu_capital)

3500 €
3500 €
3500 €
  • Cal recordar que el valor d'una variable es pot modificar si se li assigna un nou valor. El sentit de lectura del llenguatge és descendent, és a dir, agafarà el darrer valor que li haguem assignat. Fixa't en l'exemple:
# Variable inicial
guanyador_concurs = "Pau Mestre"

# Variable rectificada
guanyador_concurs = "Alba Torres"

print(guanyador_concurs)

Alba Torres
  • Hem de saber que a qualsevol llenguatge de programació hi ha paraules reservades que NO es poden emprar per definir variables. Per exemple, "print" o "break" no pot esdevenir noms de variables perquè realitzen altres funcions al moment de programar. Si vols tenir a mà el llistat de paraules reservades, executa Python al teu equip, escriu `help()`i a continuació `keywords` i tendràs el llistat complet que has d'evitar al moment de definir variables.
Llistat de paraules reservades a Python
CEP IBSTEAM. Paraules reservades a Python (CC BY-SA)
  • Si, en voltes de definir una variable, volem disposar de constants1, ho farem emprant les majúscules. Ex. NOM_COMPLET = "Lluc Martí Jaume".

Constants1: En programació, una constant és una variable el valor de la qual no hauria de canviar després d'haver-se definit inicialment. A Python, no hi ha un tipus de dades específic per a constants, però per convenció, les constants es defineixen utilitzant només majúscules. Això indica als altres programadors que aquest valor no s'ha de modificar.

# Exemple de constant

# Escrivint `PI`amb majúscula indicam als desenvolupadors # que és un valor que no hauria de ser modificat. PI = 3,14159
 

Exemple 1. Emmagatzematge d'una variable a la memòria.

primer_valor = 5
print(primer_valor)

Resultat:

5

Exemple 2. Modificam el valor d'una variable.

primer_valor = 5
primer_valor = 100
print(primer_valor)

Resultat:

100

❗Recorda: Si tenim la mateixa variable amb dos valors diferents, el programa només tindrà en compte el valor que s'hagi definit en última instància. En el cas de l'exemple, primer_valor = 100.

Exemple 3. Emmagatzematge de dues variables i càlcul de la seva suma.

a = 5
b = 2
sumatori = a + b
print(sumatori)

Resultat:

7

Exemple 4. Niar variables en una única línia.

valor1,valor2 = 135, 409
print(valor1)
print(valor2)

Resultat:

135
409

Exemple 5. Emmagatzematge de cadenes de text en una variable. Recorda, és necessari emprar cometes simples o dobles (és indiferent) per definir la variable com una cadena de text o string.

nom_complet = "Josep Maria Grau"
print(nom_complet)

Resultat:

Josep Maria Grau

Exemple 6. Emmagatzematge de dues cadenes de text i presentació a la vegada en pantalla. Ho aconseguim afegint com a argument de la funció print() les variables 2, 3...

alumna1 = "Carla Domínguez"
alumne2 = "Pedro Gomila"
print(alumna1, alumne2)

Resultat:

Carla Domínguez Pedro Gomila

Exemple 7. Repetim les cadenes de text tantes vegades com indiquem amb "* núm.".

menjar_favorit = "Pinya"
print(menjar_favorit * 3)

Resultat:

PinyaPinyaPinya

Exemple 8. Modificam el tipus de dada introduïda.

# Establim una variable en format de nombre enter

primer_nombre = 27 print(primer_nombre) print(type(primer_nombre)) # La funció _type()_ ens indicarà de quin tipus de valor es tracta.

Resultat:

27
<class "int"> # De l'anglès "integer", nombre enter en català.
# Continuam amb l'exemple anterior 👆️, li direm a Python que
# aquesta variable passarà a ser una cadena de text

canvi_primer_nombre = str(primer_nombre) # str per a canviar a _string_.
print(canvi_primer_nombre)
print(type(canvi_primer_nombre))

Resultat:

27
<class "str">
# Intentam sumar-li 3 al 27 anterior i retornarà una errada
# perquè aquesta variable ja NO és un nombre

print(canvi_primer_nombre + 3)

Resultat:

print(canvi_primer_nombre + 3)
~~~~~~~~~~~~~~~~~~~~~^~~ TypeError: can only concatenate str (not "int") to str

❓ Podem demanar que introdueixi l'usuari la variable?

Doncs sí, podem aconseguir que sigui l'usuari qui introdueixi el valor a guardar en la memòria i ho farem amb la funció input().

Exemple 9. Introduir variable en memòria per part de l'usuari/ària.

# Variable
amic1 = "Joan"
amic2 = "Carme"
amic3 = "Marc"
el_meu_nom = input("Introdueix el teu nom: ")

# Execució de la instrucció amb línia llarga
print(
"El meu nom és", el_meu_nom,
"i els noms dels meus amics són:", amic1, amic2, amic3
)

Resultat:

Introdueix el teu nom: Miriam
El meu nom és Miriam i els noms dels meus amics són: Joan Carme Marc.

Solució

CEP IBSTEAM. Solució exemple 2.1 (CC BY-SA)

Creat amb eXeLearning (Finestra nova)