2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2
 
 
Сообщение15.02.2007, 20:51 
Аватара пользователя
:evil:
И вот что удивительно: стоит кому-либо начать, и все бросаются на перегонки писать программу за человека. Который, в результате, сдает ее, так ничему не научившись.

Марк писал(а):
def subsets(used, selected):
def - это что? subsets - функция решения задачи?
range() - считает число элементов?

def — ключевое слово, определение новой функции.
subset() — функция, перечисляющая комбинации.
range(n) — функция, в простейшем случае выдающая список целых чисел от 0 до n-1.
for x in list: — повторяет тело цикла, последовательно давая переменной x значения из списка list.

 
 
 
 
Сообщение17.02.2007, 14:31 
Фух... наконец-то вырвался... продолжаем...
if __name__ == "__main__":
Главная функция, место от куда стартует программа?

Функция range(8) возврощает число 76543210? или raw - массив?
и что нибуть, про функцию len() и вот эту строку: acc = [None] * len(raw)

 
 
 
 
Сообщение17.02.2007, 22:15 
Аватара пользователя
:evil:
Марк писал(а):
if __name__ == "__main__":
Главная функция, место от куда стартует программа?

Грубо говоря, да. Это своеобразная идиома. На самом деле, программа исполняется с начала. Определение функций есть тоже исполнение программы (это характерно для многих интерпретируемых языков). А вот фраза if __name__ == "__main__" выделяет часть программы, которая исполняется если скрипт запущен (а не используется как часть другой программы, т.е. как библиотечный модуль).


Марк писал(а):
Функция range(8) возврощает число 76543210? или raw - массив?

незваный гость писал(а):
range(n) — функция, в простейшем случае выдающая список целых чисел от 0 до n-1.

Еще раз: список целых чисел. range(3) == [0,1,2]. Массив == список (в Python).

len(массив) — длина массива
acc = [None] * len(raw) — способ быстро сконструировать массив такой же длины, что и raw. Буквально: мы берем массив из одного элемента, None, и размножаем его len(raw) раз. [1,2,3] * 3 == [1,2,3,1,2,3,1,2,3].

 
 
 [ Сообщений: 18 ]  На страницу Пред.  1, 2


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group