¿Cómo puedo obtener un array vacío del tamaño que quiera en python?
Básicamente quiero un equivalente en python de esto en C
int a[x];
Pero en python declaro un array como
a = []
Pero el problema es que quiero asignar ranuras aleatorias con valores como
a[4] = 1
Pero no puedo hacer eso con python, ya que el array está vacío
5 answers
Si por "array" realmente te refieres a una lista de Python, puedes usar
a = [0] * 10
O
a = [None] * 10
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-05 17:44:29
No puedes hacer exactamente lo que quieres en Python (si te he leído correctamente). Necesitas poner valores para cada elemento de la lista (o como lo llamaste, array).
Pero, prueba esto:
a = [0 for x in range(N)] # N = size of list you want
a[i] = 5 # as long as i < N, you're okay
Para listas de otros tipos, use algo además de 0. None
es a menudo una buena opción también.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-05 17:46:18
Puedes usar numpy:
Importar numpy como np
Ejemplo de Matriz vacía :
np.empty([2, 2])
array([[ -9.74499359e+001, 6.69583040e-309],
[ 2.13182611e-314, 3.06959433e-309]])
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-09-13 20:23:35
También se puede ampliar con extender método de lista.
a= []
a.extend([None]*10)
a.extend([None]*20)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-03-05 19:36:55
Simplemente declare la lista y añada cada elemento. Para ex:
a = []
a.append('first item')
a.append('second item')
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-10-25 13:07:33