Как создать динамический 2d-массив в python

#python #arrays

#python #массивы

Вопрос:

Итак, мой вопрос был задан, но он немного отличается, поэтому я не знаю, как это применить.

У меня есть 2 переменные, которые я хочу использовать в массиве, поскольку мне нужно выполнить с ними операцию. Переменная 1 изменяется от 0 до 7, в то время как переменная 2 может и будет изменяться от 0 до 18000 или в некоторых случаях больше … конечно, переменная 2 — это просто int , и это переменная, которая мне небезразлична. итак, допустим, у меня есть Variable1 = 5, Variable2 = 1553, а затем я получаю другую переменную 1 = 5 и Variable2 = 1200. Я хочу иметь возможность перейти и найти наименьшее значение для массива [5] [Variable2] . это означает, что он вернет мне значение 1200.

Другими словами, переменная 1 всегда будет значением от 0 до 7, которое я хочу использовать для индексации другого массива, содержащего все значения из переменной 2, данные опрашиваются последовательно внутри цикла for, поэтому я постоянно получаю данные для обеих переменных.

Примером данных может быть :

 sensor.variable1=2, sensor.variable2 = 1000
sensor.variable1=3, sensor.variable2 = 900
sensor.variable1=1, sensor.variable2 = 880
sensor.variable1=2, sensor.variable2 = 900
sensor.variable1=1, sensor.variable2 = 880
  

Итак, вопрос в том, как мне справиться с подобной ситуацией, когда я постоянно получаю данные и хочу заполнить массив 2d-измерений количеством данных до определенного момента. использование переменной 1 в качестве индекса, позволяющего мне сохранять каждое значение переменной 2. Примером, я думаю, будет использование 3 точек данных выше и рассмотрение 0 в качестве первого значения массива:

 ArrayOfData[1][1]= 880
  

Я, конечно, получал бы постоянный поток данных, и это внутри цикла, моя цель — иметь по крайней мере несколько точек данных на переменную 1, поэтому у меня есть установленный предел, который я мог бы жестко закодировать в цикле, возможно, после 1000 точек данных, это, конечно, может означать 1000 точек данных, где переменная 1 = 1, однакотакже может возникнуть ситуация, когда точки данных имеют другую переменную 1, и это не по порядку, поэтому использование цикла для заполнения массива на основе переменной 1 будет невозможно.

Комментарии:

1. Извините, я вообще не понимаю, что вы имеете в виду. Variable1 Укажите и Variable2 укажите размер массива, который вы хотите? или это просто два значения, которые вы хотите поместить в одну переменную? Когда вы говорите: «Я не знаю, сколько переменных у меня будет в переменной 2», я этого вообще не понимаю. Что вы имеете в виду, когда говорите, что в вашей переменной более одной переменной? И когда вы говорите, что «данные принимаются последовательно» — какие данные и какое получение? Было бы полезно, если бы вы показали какой-нибудь соответствующий код .

2. все списки python распределяются динамически, что означает, что для создания 2d-массива вы можете просто сделать array = [[]] , если вам нужен какой-то массив nxm, тогда вы можете сделать array = [[0]*m for _ in range(n)]

3. переменная 1 будет определять размер одного измерения массива, в то время как переменная 2 мне просто нужны значения. Переменная 1 всегда будет находиться в диапазоне от 0 до 7, в то время как переменная 2 может иметь любое значение и будет постоянно меняться, но я хочу сохранить большинство из них до определенного момента. и моя главная проблема заключается в том, что, поскольку я опрашиваю датчик, я постоянно получаю данные и пытаюсь быстро построить либо 8 массивов, либо 1 2d-массив со всеми нужными мне значениями до определенного момента. поскольку цикл никогда не заканчивается и не должен заканчиваться, я просто хочу быстро построить массив, чтобы я мог использовать его для дополнительной обработки.