lunes, 21 de octubre de 2019

Listas / Arrays en Python II - Eliminar elementos con Del - Curso Python de cero a profesional - Capítulo 12

Listas / Arrays en Python II -  Eliminar elementos con Del

Listas en python del

En el capítulo anterior vimos cómo se crean las listas en Python. En este vamos a ver cómo modificar el contenido de estas listas, en concreto, voy a enseñarte a eliminar elementos.





Cuando creas programas complejos, en ocasiones necesitas que estas listas vayan cambiando constantemente.

Veamos un ejemplo, tenemos un videojuego en el que el jugador tiene una serie de logros por conseguir. Uno de eso logros, por ejemplo, son los disparos a la cabeza, conocidos también como headshots. El primero son 100, 1000 el segundo, 5000 el tercero y 25000 el cuarto. Podría quedar así:


logrosHeadshot = ['100Headshot', '1000Headshot', '5000Headshot', '25000Headshot']

A medida que el jugador vaya avanzando, se le irán sumando headshots a la variable contadorHeadshot. Cuando consiga el primer logro (100) se eliminará de la lista para evitar que cada 100 headshot que consiga el jugador, vuelva a conseguir el mismo logro. Lo que queremos es que le aparezcan cada uno de los 4 logros una única vez. Para ello, voy a eliminar de manera dinámica el primer logro.




logrosHeadshot = ['100Headshot', '1000Headshot', '5000Headshot', '25000Headshot']

contadorHeadshot = 100

if contadorHeadshot == 100:
    
    print("Logro desbloqueado - 100 Headshots")
    
    del logrosHeadshot [0]

    print(logrosHeadshot)

No te asustes con este código, aún no hemos visto el condicional if que aparece, pero es buen momento para que entres un poco en contacto con él. El condicional if ejecuta el código de su interior si su condición se cumple.

Analicemos el código detenidamente:

Tenemos una lista llamada logrosHeadshot con 4 logros dentro.
La variable contadorHeadshot irá guardando durante la partida los headshots hasta que su valor sea 100.
Cuando contadorHeadshot valga 100 se va a ejecutar el código del if ¿Por qué? porque la variable contadorHeadshot es igual (==) a 100.



Una vez se ejecuta el if, aparece un mensaje en la pantalla (Logro desbloqueado - 100 Headshots).

Después del mensaje en pantalla, se ejecuta la parte del código del logrosHeadshot [0]. Con este [0] estoy llamando a la primera posición (0) de la lista (100Headshot) y con del hago que la elimine.

Finalmente, para comprobar si se ha eliminado el logro correctamente, hago un print() que efectivamente, me muestra la lista ahora con una posición menos.

Ahora si, el resultado:

Resultado


Del listas Python

Pueden ser conceptos difíciles para estar empezando y puede que no lo entiendas del todo. Lo importante, es que entiendas el funcionamiento de del, que básicamente sirve para eliminar partes de una lista. 



En esta lista se ha eliminado el elemento número [0] (100Headshot) y es en esa posición, dónde queda ahora (1000Headshot).

Comprobémoslo.


del logrosHeadshot [0]

print(logrosHeadshot [0])

Elimino con del logrosHeadshot [0] a 100Headshot y luego imprimo la posición donde estaba. En ella se ha posicionado 1000Headshot.

Resultado
Logros videojuegos Python

Es importante que tengas en cuenta que los elementos cambian de posición, porque cuando tengas códigos extensos, puedes hacer muchos errores, por ejemplo, si más adelante tu juego o programa tuviese código que trabajase directamente con el elemento eliminado, esto daría lugar a errores.



Es mucha información de golpe, pero si superas esta barrera, estarás un poco más cerca de ser un/a profesional de Python, así que si te quedan dudas, no dudes (valga la redundancia) en preguntarme en los comentarios.

Bucles en Java II - El bucle do while

Bucles en Java II - El bucle do while

Bucle do while Java

En el capítulo anterior expliqué el bucle while, en este veremos una variante, el bucle do while. Te recomiendo que lo leas el capítulo anterior para que entiendas mejor este: el bucle while.

Sintaxis del bucle while en Java

do {
     
//Código a ejecutar al menos una vez.

}
  
while (condición);


Todo el código que se encuentra dentro de las llaves del do es ejecutado al menos una vez. Es decir, que aunque la condición del while sea igual a false (por lo cual no se ejecutaría nada), se va a ejecutar una vez el código del do.

Veamos un ejemplo práctico:


public class bucleWhile {

 public static void main(String[] args) {
     
  int contador=50;
     
  while (contador<=10) {
      
   System.out.println("Esto no se va a ejecutar.");
 
  }
  
 }

}

Este código no hace nada el while no es ejecutado.
Si has leído el capítulo anterior ya deberías saberlo. El valor de la variable contador es 50, por lo que la condición del while (menor o igual a 10) no se cumple y nunca se ejecuta el código de su interior.

Para poder ejecutar ese código al menos una vez, necesitamos el bucle do while:


public class bucleDoWhile {

 public static void main(String[] args) {
     
  int contador=50;
     
  do {
      
   System.out.println("Esto se ejecuta gracias al do.");

   }
  
  while (contador<=10); 

 }

}

Resultado
bucle do while java

La condición del while sigue siendo false. No obstante, he conseguido ejecutar el println() una vez. Esta es la única diferencia que tiene el bucle do while del while.

En el siguiente capítulo veremos el último de los bucles de Java que quedan por ver. El bucle for.

domingo, 20 de octubre de 2019

Cabeceras Bootstrap 4 - Estilos para textos

Bootstrap 4 - Estilos para cabeceras HTML

Cabeceras Bootstrap 4

Como ya sabrás, en HTML tenemos 6 tipos de headings (cabeceras) para títulos que van de <h1> a <h6>.



Bootstrap 4 lleva estilos para estas cabeceras.

Estas son las cabeceras normales sin estilos Bootstrap:


HTML cabeceras

Estos son los estilos que trae Bootstrap 4 para las cabeceras. No necesitas poner ningún tipo de clase en tus etiquetas <h>, solo con tener la hoja de Bootstrap 4 enlazada te funcionará:




<html>
<head>
  <title>Cabeceras HTML</title>
  <meta charset="utf-8">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
</head>
<body>

  <h1>h1 Cabecera Bootstrap 40px</h1>
  <h2>h2 Cabecera Bootstrap 32px</h2>
  <h3>h3 Cabecera Bootstrap 28px</h3>
  <h4>h4 Cabecera Bootstrap 24px</h4>
  <h5>h5 Cabecera Bootstrap 20px</h5>
  <h6>h6 Cabecera Bootstrap 16px</h6>

</body>
</html>


Bootstrap 4 headings styles

Listas I - Arrays - Curso Python de cero a profesional - Capítulo 11

Listas en Python I

Listas en python

En Python cuando hablamos de listas, estamos hablando de lo que serían para otros lenguajes de programación los arrays.





Si estás familiarizado/a con los array no tendrás ninguna dificultad en entender las listas de Python.


frutas = ['Fresa', 'limón', 'Naranja', 'Sandía', 'Melón', 'Kiwi', 'plátano']

print(frutas)

Resultado


Listas en Python

Este código imprime esta lista completa y esto no es lo que normalmente se quiere hacer cuando se trabaja con listas.



Veamos un ejemplo más práctico:


frutas = ['Fresa', 'limón', 'Naranja', 'Sandía', 'Melón', 'Kiwi', 'plátano']

Las posiciones de las listas van del 0 al último número de elemento que tengas en una lista (son 7 elementos en total en esta lista).
La lista frutas tiene 6 elementos por lo que las posiciones irán del 0 (Fresa) al 6 (Plátano).




Si imprimes en consola cada uno de los elementos de la lista por separado, puedes comprobarlo:


frutas = ['Fresa', 'limón', 'Naranja', 'Sandía', 'Melón', 'Kiwi', 'plátano']

print(frutas[0]) 
print(frutas[1])
print(frutas[2]) 
print(frutas[3])
print(frutas[4]) 
print(frutas[5])
print(frutas[6])

Resultado


Arrays Python


No importa el orden en el que invoques a estos elementos. Puedes trabajar con uno solo o con varios. 

frutas = ['Fresa', 'limón', 'Naranja', 'Sandía', 'Melón', 'Kiwi', 'plátano']

compra = "Hoy tengo que comprar " + frutas[6] + ", " + frutas[3] + " y " + frutas[0]

print(compra)

Resultado


python list

Podemos hacer infinidad de cosas con las listas, ahora solo queda que le pongas imaginación.
A medida que avances en el curso, irás viendo más formas de aprovechar estas listas.



¿Te quedan dudas sobre el tema? no dudes en preguntarme y por supuesto, si encuentras que debería añadir algo, comenta, por favor.

sábado, 19 de octubre de 2019

Concatenando strings con integers - Curso Python de cero a profesional - Capítulo 10

Concatenando strings con integers

como concatenar strings python

Nos encontramos ya en el décimo capítulo del curso de Python, todavía nos queda mucho trabajo por delante, pero hasta este punto, ya has avanzado bastante si no sabías nada de Python.



Para este capítulo, tengo preparado un sencillísimo código para poder concatenar strings y variables. Si sabes de otros lenguajes de programación como Java, sabrás lo sencillo que es hacer esto, en Python, si no sabes lo que vas a ver a continuación, puede ser un verdadero quebradero de cabeza, aunque en realidad, no tiene mayor dificultad, es solo saberlo.


capitulo = 10
frase = "Este es el capítulo nº " + capitulo + " del curso de Python."
print(frase)

Puedes pensar que este código va a funcionar, pero no, no funciona. En muchos lenguajes esta lógica sería válida, pero en Python no, devuelve este error.




TypeError: can only concatenate str (not "int") to str

¿Qué nos dice este error?
Básicamente, que no se puede concatenar un string con un integer (capitulo).

La función predefinida str() en Python

El siguiente código si que es correcto, solo tienes que añadir la función str() para convertir el int (número entero) en un string (cadena de texto). Si no entiendes este párrafo, deberías revisar los capítulos anteriores.



Para que quede más claro, hay que convertir el valor numérico 10 de la variable capitulo en texto.


capitulo = 10
frase = "Este es el capítulo nº " + str(capitulo) + " del curso de Python."
print(frase)

Resultado
str python

¿Te quedan dudas sobre el tema? no dudes en preguntarme y por supuesto, si encuentras que debería añadir algo, comenta, por favor.


viernes, 18 de octubre de 2019

Los tipos de datos en Python - Números float - round() - Curso de cero a profesional - Capítulo 9

Los tipos de datos en Python - Números con coma flotante - floats y round()

Python float round()

El tipo de dato float se utiliza para trabajar con números decimales, algo que no podíamos hacer con los números enteros (integer del capítulo anterior).





Vamos a ver unos ejemplos con operaciones básicas para que te vayas familiarizando con los float.

Operaciones básicas con integers en Python

Las operaciones básicas son adición (+)sustraer (-)multiplicar (*) y dividir (/).
Veamos unos ejemplos con su uso:





resultados = "Los resultados son: ";
print(resultados)

suma = 10.55+13.1;
print(suma);

resta = 10.55-13.1;
print(resta);

multiplicacion = 10.55*13.1;
print(multiplicacion);

division = 50.55/13.1;
print(division);

Resultado


números float python

Seguramente no tengas problema para ver que los resultados encajan con las operaciones, pero si no te cuadra, utiliza la calculadora (ojo, la calculadora suele redondear estos números, por lo que por ejemplo, el resultado -2,549999999999999 será 2,55 en una calculadora.).


Acotar o reducir el número de decimales de los float en Python

Un problema al que nos enfrentamos todos los programadores en algún momento es cuando recibimos resultados con tantos decimales como los del ejemplo anterior. Por eso, es importante que aprendas a limitar o truncar el número de decimales que ofrecen los float.



Vamos a reducir el número de decimales en 2 para todos los resultados anteriores.

Para hacer esto, solo hay que añadir la función predefinida de Python llamada round() (redondear en español) y añadirle también con una coma el número de decimales que queremos. Yo he puesto dos, tú puedes poner los que quieras.


resultados = "Los resultados son: ";
print(resultados)

suma = 10.55+13.1;
print(round(suma,2));

resta = 10.55-13.1;
print(round(resta,2));

multiplicacion = 10.55*13.1;
print(round(multiplicacion,2));

division = 50.55/13.1;
print(round(division,2));

Resultado

round() float python

Cómo puedes ver, aparecen los resultados con solo dos decimales y redondeados.



Espero que estés aprendiendo mucho, si quieres que suba capítulos más a menudo, dejame un comentario para que lo sepa y me anime a escribir más sobre este hermoso lenguaje de programación que es Python.

Bucles en Java I - El bucle while

Bucles en Java I - El bucle while

Bucle while Java

En este capítulo vamos a ver el primero de los tres bucles de Java, el bucle while.




Sintaxis del bucle while en Java

while (condición) {
   
      //Código a ejecutar mientras la condición se cierta (true).
   
}  

El bucle while cuenta siempre con una condición, mientras que esta sea verdadera se ejecutará en bucle el código escrito entre llaves.



Veamos un sencillo ejemplo:


public class buclewhile {

 public static void main(String[] args) {
  
  int contador=5;
  
  while (contador<=10) {
   
   System.out.println("El valor de contador es: " + contador);
   
   contador++;

  }

 }

}

La variable contador vale inicialmente 5.
La condición del while especifica que mientras que el valor de contador sea menor o igual que 10, se ejecuten las instrucciones del interior del bucle while.
El código del while, si has seguido el curso de Java hasta aquí, ya debes saber lo que hace, pero si no, te explico. Simplemente, muestra un string y el valor de la variable contador. Finalmente, incrementa en 1 el valor de contador, permitiendo de este modo, que en algún momento se pueda salir del bucle y este, no sea infinito.



Una vez termina el bucle, las líneas posteriores se ejecutan siguiendo el flujo de ejecución de Java (de arriba a abajo).

Resultado


El bucle while Java

Bucles infinitos Java

Si en algún momento tu propósito es hacer un bucle infinito, lo tienes muy fácil, solo tienes que hacer que la condición del bucle sea siempre verdadera.

Simplemente quita el incremento de contador (contador++;) y tu bucle se ejecutará infinitamente.



¿Por qué? porque inicialmente contador es igual a 5 por lo que al no incrementarse nunca esta variable, la condición del bucle será siempre verdadera (true), contador siempre será menor que 10.


public class buclewhile {

 public static void main(String[] args) {
  
  int contador=5;
  
  while (contador<=10) {
   
   System.out.println("El valor de contador es: " + contador);
   

  }

 }

}

Resultado


bucle while infinito




martes, 15 de octubre de 2019

Los tipos de datos primitivos en C#

Los tipos de datos primitivos en C#

tipos de datos primitivos c#

C sharp tiene una buena cantidad de tipos de datos, en concreto son 16.
De estos 16 tenemos 13 que son primitivos o simples.

Por el momento, vamos a ver los tipos simples que son los que vas a utilizar en los próximos tutoriales. Los otros los veremos más adelante.


Los tipos de datos simples en C sharp

 En el siguiente capítulo verás los tipos de datos enteros.

lunes, 14 de octubre de 2019

Cómo escribir variables en C# - Declaración e iniciación.

Las variables en C#

variables c#

En C Sharp podemos declarar variables sin iniciarlas, especificando el tipo de dato (int de integer en el ejemplo) y darle una nombre:




Declarar una variable sin iniciarla.

int numero1;

Podemos iniciar la variable en otra línea:



Iniciar una variable ya declarada.


int numero1;

numero1 = 10;

Otra opción es declarar e iniciar la variable en la misma línea:

Declarar una variable e iniciarla.

int numero1 = 10;

Para los ejemplos he utilizado el tipo de dato int de número entero, pero puedes utilizar cualquiera de los tipos de datos que nos ofrece C#.

Tres ejemplos de variables con distintos datos, tenemos un integer con un número entero, un double con un número con decimal y un string con un texto:


int numero1 = 10;

double numero2 = 5.5;

string nombreBlog = "The Hittos Lab.";



sábado, 12 de octubre de 2019

Cómo escribir comentarios en C#

Cómo escribir comentarios en C#Comentarios c#

En C# o C Sharp hay dos formas de escribir comentarios como en la mayoría de lenguajes de programación, de una línea o multilínea.

Cómo escribir comentarios de una línea

//Este es un comentario de una sola línea.
Console.WriteLine("¡Hola Mundo!") //Este comentario no anula el código.

Cómo escribir comentarios de multilínea

/* Comentario multilínea:
   Aquí puedes añadir tantas líneas como quieras.
   Aquí puedes añadir tantas líneas como quieras.
   Aquí puedes añadir tantas líneas como quieras.
*/

/* También puedes invalidar código.
   Console.WriteLine("¡Hola mundo!");
   Console.WriteLine("¡Hola mundo!");*/

Este capítulo de C# se queda corto, pero considero que no son necesarias más explicaciones con este tema.

Introducción - Curso Excel 2019 de cero a profesional - Capítulo 1

Introducción a Excel 2019

Pantalla de inicio de Excel 2019

Cuando inicia Excel, te encuentras con dos partes. Por un lado, la parte izquierda de color verde y el lado derecho.

Inicio Excel 2019

El botón de "Inicio" del panel verde nos proporciona unas opciones rápidas para hacer un nuevo libro, tutoriales, etc. Además aparecen archivos que hemos utilizado o creado recientemente y los que hayamos anclado o fijado para que se queden en esta sección.

Excel 2019 Inicio
Haz click en la imagen para ampliar

Plantillas Excel 2019

En el botón "Nuevo" nos muestra una serie de plantillas incluidas en el programa para facilitarnos la creación de nuestros documentos.
Podemos buscar y descargar nuevas plantillas.
También puedes crear un libro en blanco.


Excel 2019 Nuevo
Haz click en la imagen para ampliar

Abrir archivos en Excel 2019

El botón "Abrir" muestra archivos que hayamos utilizado recientemente en "Recientes". Podemos buscar archivos en nuestra cuenta de OneDrive.
Puedes buscar en todo tu equipo con "Este PC".

Excel 2019 Abrir
Haz click en la imagen para ampliar



No vamos a ver de momento el resto de apartados de esta pantalla de inicio. Por el momento, ya tienes suficiente para empezar a utilizar Excel 2019.

domingo, 6 de octubre de 2019

Ghost Recon: Breakpoint para PC, PS4 y Xbox One

Ghost Recon: Breakpoint

Descargar Ghost Recon Breakpoint


Esta última entrega de Ghost Recon se ha convertido en solo 2 días desde su lanzamiento en un top ventas.


Probablemente lo mejor de este título sea su gran mundo abierto en el que podemos jugar solos o en el modo cooperativo con otros jugadores.

Nos encontramos en Auroa, un lugar del Pacífico sur, una tierra con diferentes biomas en los que nos tendremos que adaptar. 

Plataformas
PC, PS4, Xbox One
Lanzamiento 4 de octubre de 2019
Géneros Acción, Acción táctica, bélico
Desarrollado por UbiSoft
Distribuidora UbiSoft

Puedes descargar el juego para PC con un 32% de descuento por 46,69€:

También lo puedes tener con DLC incluido con un 25% de descuento por 51,29€

Descargar Ghost Recon: Breakpoint para PC + DLC


Para Xbox One también lo puedes tener con DLC incluido con un 10% de descuento por 61,59€

Imágenes de Trine 4: The Nightmare Prince
Descargar Ghost Recon: Breakpoint

Descargar Ghost Recon: Breakpoint

Descargar Ghost Recon: Breakpoint

Descargar Ghost Recon: Breakpoint

Ghost Recon: Breakpoint

Ghost Recon: Breakpoint

Ghost Recon: Breakpoint Steam

Comprar Ghost Recon: Breakpoint Xbox One

Comprar Ghost Recon: Breakpoint PS4

Comprar Ghost Recon: Breakpoint PC

Descargar Ghost Recon: Breakpoint PC