Impresión de un diamante ASCII con ancho de conjunto en python

Sí, esta es una tarea de tarea. Pero solo por favor, si me va a dar el código, por favor dígame qué ha hecho en detalle. Soy extremadamente nuevo en esto.

Por lo tanto, la tarea es imprimir un diamante ASCII según el ancho que ingrese el usuario. Puedo hacer la primera mitad del diamante, pero no la mitad inferior, por alguna razón, simplemente no puedo ver cómo hacerlo.

Aquí está mi código:

wid = int(input("Width: "))
i = 1

while i <= wid:
  print(" " * (wid - i) + "* " * i)
  i = i + 1

Lo que dará como resultado lo siguiente si wid = 5:

Width: 5
    * 
   * * 
  * * * 
 * * * * 
* * * * * 

Respuestas a la pregunta(6)

Su respuesta a la pregunta