Найти - Пользователи
Полная версия: как создать массив
Начало » Python для новичков » как создать массив
1 2
skorpik
у меня есть текстовый файл измерений параметров ветра в котором содержится слудующая информация:
00:00:25 309.0 1.5
00:00:55 209.0 2.7
00:01:25 115.0 3.5
00:01:55 39.0 1.2
00:02:25 56.0 3.5
00:02:55 108.0 1.9
00:03:25 270.0 4.5

f=open('c://wind.txt', 'r')
i=1
while i<=7:
t=f.readline()
spisok=[t[11:16], t[19:24]]
napravlenie=spisok[0]
napr=float(napravlenie)
print type(napr)
i=i+1
f.close()
нужно сформировать массив napravlenie из значений 1-го столбца, они должны соответствовать типу numpy.ndarray.
skorpik
может кто-нибудь знает как можно сформировать массив для данного примера (используя значения из файла)
Rodegast
sp = []
for x in open("/home/rodegast/12.txt","r").readlines(): sp.append(x.split()[0])
knkd
Rodegast
Rodegast
Зачем такие сложности? :)
zip(*[x.split() for x in open('c:/wind.txt')])
Rodegast
Ну можно и так, правда ему только первый столбец нужен.
knkd
Rodegast
Ну можно и так, правда ему только первый столбец нужен.
:)
zip(*[x.split() for x in open('c:/wind.txt')])[0]
Ed
Мне первый вариант не кажется сложным в отличие от вашего.
Вот тоже самое, но покороче:
sp = [x.split()[0] for x in open("/home/rodegast/12.txt")]
skorpik
спасибо за советы, я проверил всё работает! я немного дописал код вот что получилось
sp = []
for x in open('c://wind.txt','r').readlines(): sp.append(x.split()[1])
print type (sp)
vv = np.array(sp)
print vv
print vv[1]+vv[2]
а можно сделать чтобы массив vv выводился без апострофов? сейчас выводит вот так:
>>>
<type ‘list’>
<type ‘numpy.ndarray’>

65.0309.0
>>>
это всё нужно чтобы можно было выполнять различные операции над элементами массива vv (как в данном примере это сложение)
Ed
vv = np.array([float(x.split()[1]) for x in open("c://wind.txt")])
skorpik
спасибо! это то что мне нужно
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB