Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 18, 2013 14:05:56

MountainDew
Зарегистрирован: 2013-06-18
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Посчитать сумму всех чисел, которые встречаются в строке.

помогите пожалуйста! нужно для зачета решить дофига задач по программированию на Python, а времени вовсем нет . Вот условие:
Посчитать сумму всех чисел, которые встречаются в строке.

Офлайн

#2 Июнь 18, 2013 14:21:40

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

Посчитать сумму всех чисел, которые встречаются в строке.

import re
s=" 1434fdsgfg sf22 3m mm2312kmk 231"
print sum(map(int, re.findall('(\d+)', s)))



Офлайн

#3 Июнь 18, 2013 14:27:52

MountainDew
Зарегистрирован: 2013-06-18
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Посчитать сумму всех чисел, которые встречаются в строке.

а по подробней можно, пожалуйста?

Офлайн

#4 Июнь 18, 2013 16:01:34

alexbadaloff
От: Иваново
Зарегистрирован: 2013-04-11
Сообщения: 198
Репутация: +  16  -
Профиль   Отправить e-mail  

Посчитать сумму всех чисел, которые встречаются в строке.

Импортируем модуль " для работы с регулярными выражениями":

FishHook
import re

Объявляем и присваиваем переменной s строку (любую):
FishHook
s=“ 1434fdsgfg sf22 3m mm2312kmk 231”

Ищем числа в строке s:
FishHook
re.findall('(\d+)', s)

Переводим найденные числа (str) в int (чтобы числа потом можно было сложить):
FishHook
map(int, re.findall('(\d+)', s))

Суммируем найденные числа:
FishHook
sum(map(int, re.findall('(\d+)', s)))

Выводим на экран:
FishHook
print sum(map(int, re.findall('(\d+)', s)))

P.S. Данный пример для Python2.x, для python3.x нужно c print использовать скобки:
print(sum(map(int, re.findall('(\d+)', s))))
И я с питоном не так давно, так что могу где-нибудь отсебятину написать.



————————–
Истина где-то рядом

Отредактировано alexbadaloff (Июнь 18, 2013 16:03:30)

Офлайн

#5 Июнь 18, 2013 16:16:52

MountainDew
Зарегистрирован: 2013-06-18
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Посчитать сумму всех чисел, которые встречаются в строке.

о, все, спасибо, разобралась )

Офлайн

#6 Июнь 18, 2013 16:33:58

alexbadaloff
От: Иваново
Зарегистрирован: 2013-04-11
Сообщения: 198
Репутация: +  16  -
Профиль   Отправить e-mail  

Посчитать сумму всех чисел, которые встречаются в строке.

Чтот я сомневаюсь.



————————–
Истина где-то рядом

Офлайн

#7 Июнь 19, 2013 21:23:58

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

Посчитать сумму всех чисел, которые встречаются в строке.

FishHook
re.findall('(\d+)', s)
re.findall(r'\d+', s)



Офлайн

#8 Июнь 20, 2013 09:33:35

MountainDew
Зарегистрирован: 2013-06-18
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Посчитать сумму всех чисел, которые встречаются в строке.

а не могли бы вы еще указать особенности модуля re и используемой вами функции???

Офлайн

#9 Июнь 20, 2013 11:00:25

alexbadaloff
От: Иваново
Зарегистрирован: 2013-04-11
Сообщения: 198
Репутация: +  16  -
Профиль   Отправить e-mail  

Посчитать сумму всех чисел, которые встречаются в строке.

MountainDew
а не могли бы вы еще указать особенности модуля re и используемой вами функции???
Легко - http://habrahabr.ru/post/115825/



————————–
Истина где-то рядом

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version