Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/104: Рейтинг темы: голосов - 104, средняя оценка - 4.59
3 / 3 / 5
Регистрация: 18.11.2013
Сообщений: 118
1

Инициализация двумерного массива

14.06.2014, 18:06. Показов 21830. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет! Только начал изучать python после с и не могу справится со следующей задачей: мне нужно проинициализировать двумерный массив с клавиатуры, случайным способом и из файла таким образом, чтобы потом можно было работать с любым элементом строки/столбца. Написал пока вот такой код для инициализации с клавиатуры, но он не работает, выскакивает ошибка :
Python
1
2
3
4
Traceback (most recent call last):
  File "/Users/mac/Desktop/LR1.py", line 13, in <module>
    a[i][j] = int(input())
IndexError: list index out of range
В чем ее суть я понимаю, но как исправить не очень
Сам код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
n = int(input("Введите колличество элементов в строке: "))
m = n
a = []
print("Выберите метод инициализации элементов:\n")
print("1. Ручной ввод")
print("2. Формирование случайным образом")
print("3. Ввод из файла")
print("\n")
c = int(input("Введите номер Вашего выбора: "))
if c == 1:
    for i in range(0, n, 1):
        for j in range(0, m, 1):
            a[i][j] = int(input())
elif c == 2:
    print("n is a perfect square\n")
elif c == 3:
    print("n is an even number\n")
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.06.2014, 18:06
Ответы с готовыми решениями:

Перевод массива комплексных чисел в массив float. Инициализация двумерного массива
Здравствуйте! Начал осваивать python и никак не могу разобраться. Есть массив list, состоящий из n...

Инициализация двумерного массива.
Доброго времени суток! Нужно инициализировать двумерный массив используя конструктор класса....

Инициализация двумерного массива
Чет не понимаю на что возмущается компилятор... Заполняю как и заполнял раньше... char my_array;...

Инициализация двумерного массива
Учу С++ и переделываю шахматы в ооп. Не получается написать конструктор для двумерного массива....

Инициализация двумерного массива
Здравствуйте! Заранее извиняюсь, если создал не в той теме.... Проблема в том, что не могу...

2
2741 / 2340 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
14.06.2014, 18:56 2
Нечего там особо инициализировать, раз известно заранее какой массив должен быть, тогда его просто создаешь, а дальше заполняешь его данными от пользователя:
Python
1
2
3
4
5
6
>>> array = [[], []]
>>> array[0].append(1)
>>> array[1].append(2)
>>> array[1].append('строка')
>>> array
[[1], [2, 'строка']]
Ну заполнять его ты естественно будешь не так, но смысл такой.
1
12 / 10 / 12
Регистрация: 23.12.2012
Сообщений: 51
23.08.2014, 16:50 3
Перед тем как заполнять таблицу (переменная a) ее нужно сначала создать. Делается это так:
Python
1
a = [[0 for j in xrange(0, n)] for i in xrange(0, m)]
Или если ты не знаком с генераторами списков то можно так:
Python
1
2
3
4
for i in xrange(0, m):
   a.append([])
   for j in xrange(0, n):
       a[-1].append(0)
0
23.08.2014, 16:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.08.2014, 16:50
Помогаю со студенческими работами здесь

Инициализация двумерного массива
Подскажите пожалуйста как проинициализировать двумерный массив размером 10 на 10.(самый простой...

Инициализация двумерного массива char-ов
как можно инициализировать и реализовать двумерный массив чаров в heder и cpp соответстенно

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

Инициализация двумерного массива в классе
Есть класс: class Test { int T; public: Test(); ~Test(); };

Инициализация двумерного динамического массива
Как задать численные значения элементам двумерного динамического массива при его инициализации? ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru