Программирование и научные вычисления на языке Python/§8: различия между версиями

Содержимое удалено Содержимое добавлено
Нет описания правки
Нет описания правки
Строка 76:
 
==Использование списков==
Представим, у нас есть функция ''f(x)'' и мы хотим применить ее к ''n'' числам ''x<sub>1</sub>'', ''x<sub>2</sub>'', ... , ''x<sub>n-1</sub>'', ''x<sub>n</sub>''. Мы можем составить ''n'' пар (''x<sub>i</sub>'', f(x<sub>i)</sub>, а можем создать два списка — один со значениями переменной, а другой с соответствующими значениями функции:
 
 
<source lang="python">
>>> def f(x):
... return x**3
...
>>> n = 5 # no of points along the x axis
>>> dx = 1.0/(n-1) # spacing between x oints in [0,1]
>>> xlist = [i*dx for i in range(n)]
>>> ylist = [f(x) for x in xlist]
>>> pairs = [[x, y] for x, y in zip(xlist, ylist)]</source>
 
 
Здесь для решения задачи мы использовали два приема: генерацию списков и двойной zip-проход по спискам. В списке <tt>pairs</tt> все элементы представляют собой списки из двух float чисел, в списках <tt>xlist</tt> и <tt>ylist</tt> все объекты float. Но список это довольно гибкий объект, и он может содержать объекты любых типов:
 
 
<source lang="python">mylist = [2, 6.0, 'tmp.ps', [0,1]]</source>