Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 1, 2012 13:14:36

fata1ex
От:
Зарегистрирован: 2009-07-11
Сообщения: 732
Репутация: +  52  -
Профиль   Отправить e-mail  

из строки в массив

Мои сообщения игнорируют здесь? :(



Офлайн

#2 Авг. 1, 2012 13:19:39

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

из строки в массив

Elena
В данном примере строки не равной длины. Лучший пример типа этого:
1 2.3 4
5.8 0 6
4 6 7.8
значит на выходе получаем матрицу
1 2.3 4
5.8 0 6
4 6 7.8
А в чем разница?



Офлайн

#3 Авг. 1, 2012 13:21:23

fata1ex
От:
Зарегистрирован: 2009-07-11
Сообщения: 732
Репутация: +  52  -
Профиль   Отправить e-mail  

из строки в массив

FishHook, во втором текстовом поле список. Он просто еще маленький, поэтому без скобок и запятых.



Офлайн

#4 Авг. 1, 2012 13:25:22

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

из строки в массив

fata1ex, да я догадался, это я чтобы опять проигнорировать



Офлайн

#5 Авг. 1, 2012 13:33:13

Elena
Зарегистрирован: 2012-08-01
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

из строки в массив

fata1ex один из ваших вариантов мне очень даже подошел, спасибо большое

>>> numbers = []
>>> with open('filename.txt', 'r') as f:
...     for line in f:
...         current = []
...         for num in line.split():
...             current.append(float(num))
...         numbers.append(current)
...         
>>> numbers
[[1.0, 2.0, 3.6, 7.9, 90.0], [1.0, 2.0, 3.6, 7.8, 90.0], [1.0, 2.0, 3.6, 7.7, 90.0]]

С циклом for мне проще понимать и разбираться в python

Офлайн

#6 Авг. 1, 2012 13:35:33

fata1ex
От:
Зарегистрирован: 2009-07-11
Сообщения: 732
Репутация: +  52  -
Профиль   Отправить e-mail  

из строки в массив

Это вполне логично :) Остальные здесь для того, чтобы появился интерес посмотреть хоть одним глазом на другие моменты языка.

FishHook, значит я всё испортил :(



Офлайн

#7 Авг. 1, 2012 13:41:20

Elena
Зарегистрирован: 2012-08-01
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

из строки в массив

fata1ex у вас очень хорошие примеры, я даже не знала что такие моменты в python можно использовать

Офлайн

#8 Авг. 1, 2012 14:14:38

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

из строки в массив

Знаю, что так нельзя, но очень хочется повыпендриваться

s=[map(float, i.split()) for i in open('uu.txt','r').readlines()]



Офлайн

#9 Авг. 2, 2012 03:21:23

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

из строки в массив

>>> with open('file.txt', encoding='utf-8') as fin:
...   matr = [list(map(float, line.split())) for line in fin]
... 
>>> matr
[[1.0, 2.3, 4.0], [5.8, 0.0, 6.0], [4.0, 6.0, 7.8]]
>>>



Офлайн

#10 Авг. 2, 2012 05:07:00

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

из строки в массив

py.user.next
list(map
Хорошо бы еще и версию питона указывать.

Елена, не слушай их. Юзай то решение, которое ты понимаешь. Или хотя бы сможешь сдать преподу.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version