1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
1

Сумма цифр в строке

09.12.2019, 15:54. Показов 4762. Ответов 26

Author24 — интернет-сервис помощи студентам
Добрый день, как сделать так, чтобы цифры в строках суммировались когда вводишь строку html с разными числами?
строка вот : <html><body><table><tr><td>Item1<td>10</tr><tr><td>Item2<td>20</tr><body></html>



Python
1
2
3
4
5
6
7
8
9
10
11
12
13
html=input()
parser = MyHTMLParser()
parser.links=[]
parser.feed = [html]
numbers = html.split (' ')
sum = 0
for num in parser.payload [1::2]:
    try:
        sum   =  int(num)
        summa +=sum
    except:
        pass
    print (summa)
выдает пустоту
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.12.2019, 15:54
Ответы с готовыми решениями:

Сумма цифр в строке
Мучаюсь уже несколько часов с этим заданием и никак не могу найти его решения,помогите!!! Дана...

Сумма всех цифр в строке
Ввод: 882 or 1918 Вывод: 2800

Сумма первой и последней цифр равна разности второй и третьей цифр
задание такое: Напишите программу, которая проверяет, что для заданного четырехзначного числа...

Найдите ближайшее большее число m такое, что сумма его цифр была строго больше суммы цифр числа n
Решите задачу одним циклом for, допускается применение условных операторов. Задано пятизначное...

26
SkyJump
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,070
Записей в блоге: 4
09.12.2019, 16:13 2
Не понимаю, что Вам надо.
0
1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
09.12.2019, 16:14  [ТС] 3
Hyppoprogramm, <html><body><table><tr><td>Item1<td>10</tr><tr><td>Item2<td>20</tr><body></html>

там есть цифры 20 и 10, они как в таблице и вот чтоб в output выходило 30, а уменя пока пусто
0
SkyJump
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,070
Записей в блоге: 4
09.12.2019, 16:15 4
Вот например:
Python
1
2
3
4
5
6
7
import re
string = input()
nums = re.findall('[0-9]+',string)
num = 0
for n in nums:
    num += n
print(num)
Вводишь "ф1о37л", получаешь 38.

Добавлено через 44 секунды
Подходит?
0
Просто Лис
Эксперт Python
5965 / 3728 / 1097
Регистрация: 17.05.2012
Сообщений: 10,786
Записей в блоге: 9
09.12.2019, 16:22 5
Hyppoprogramm, не очень. Надо суммировать вторую колонку таблицы: HTML data analyzer
0
1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
09.12.2019, 16:33  [ТС] 6
Hyppoprogramm, так же выдает ошибку на += syntax invalid
0
SkyJump
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,070
Записей в блоге: 4
09.12.2019, 16:37 7
Цитата Сообщение от julija2019 Посмотреть сообщение
Hyppoprogramm, так же выдает ошибку на += syntax invalid
Во-первых: не syntax invalid, а invalid syntax.
Во-вторых: не InvalidSyntax, а TypeError.

Добавлено через 26 секунд
Попробуй так:
Python
1
2
3
4
5
6
7
import re
string = input()
nums = re.findall('[0-9]+',string)
num = 0
for n in nums:
    num += int(n)
print(num)
0
1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
09.12.2019, 16:40  [ТС] 8
Hyppoprogramm,


File "analizer.py", line 9, in <module>
nums = re.findall('[0-9]+',html)
NameError: name 're' is not defined
0
SkyJump
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,070
Записей в блоге: 4
09.12.2019, 16:42 9
julija2019, код до конца копируй!
0
1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
09.12.2019, 16:44  [ТС] 10
Hyppoprogramm, до конца копировала
0
SkyJump
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,070
Записей в блоге: 4
09.12.2019, 16:47 11
julija2019, отправь то, что скопировала.
0
1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
09.12.2019, 16:50  [ТС] 12
Hyppoprogramm,


Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
from html.parser import HTMLParser
class MyHTMLParser(HTMLParser):
    payload = ()
    def handle_data (self, data):
        self.payload.append(data)
html=input()
parser = MyHTMLParser()
parser.feed = [html]
numbers = html.split (' ')
sum = 0
for num in parser.payload [1::2]:
        sum  + =  int(num)
 
print (summa)

Задание:
Your task:
Program takes in input a one-line html website code containing nothing but 2-column table

Program calculates the sum of number in whole 2nd row

Example:
input: <html><body><table><tr><td>Item1<td>10</tr><tr><td>Item2<td>20</tr><body></html>
output: 30
0
SkyJump
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,070
Записей в блоге: 4
09.12.2019, 16:53 13
Пропустили import re!

Добавлено через 26 секунд
И вместо summa sum!
0
1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
09.12.2019, 17:16  [ТС] 14
Hyppoprogramm,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from html.parser import HTMLParser
class MyHTMLParser(HTMLParser):
    payload = ()
    def handle_data (self, data):
        self.payload.append(data)
import re
html=input()
parser = MyHTMLParser()
parser.feed = [html]
numbers = html.split (' ')
sum = 0
for num in parser.payload [1::2]:
        sum  + =  int(num)
 
print (sum)



--- Input ---
<html><body><table><tr><td>Item1<td>10</tr><tr><td>Item2<td>20</tr><tr><td>Item3<td>100</tr></table></body></html>

--- Program output ---
File "analizer.py", line 13
sum + = int(num)
^
SyntaxError: invalid syntax

--- Expected output (numbers)---
130

Добавлено через 20 минут
Hyppoprogramm,
что ему не нравится? можно как-то подругому решить?
0
SkyJump
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,070
Записей в блоге: 4
09.12.2019, 17:37 15
julija2019, не
Python
1
2
for num in parser.payload [1::2]:
        sum  + =  int(num)
, а
Python
1
2
for num in parser.payload[1::2]:
    sum  +=  int(num)
0
1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
09.12.2019, 17:49  [ТС] 16
Hyppoprogramm,

-- Input ---
<html><body><table><tr><td>Item1<td>10</tr><tr><td>Item2<td>20</tr></table></body></html>

--- Program output ---
0

--- Expected output (numbers)---
30

теперь так выдаёт
0
SkyJump
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,070
Записей в блоге: 4
09.12.2019, 17:51 17
Так всё верно!

Добавлено через 21 секунду
10+20=30
0
1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
09.12.2019, 17:53  [ТС] 18
Hyppoprogramm,

--- Program output ---
0 - что моя программа выдаёт

--- Expected output (numbers)---
30 - что должно быть
0
SkyJump
132 / 118 / 29
Регистрация: 09.07.2019
Сообщений: 1,070
Записей в блоге: 4
09.12.2019, 18:01 19
Надо вот так:
Python
1
2
3
4
5
6
import re
html='<html><body><table><tr><td>Item1<td>10</tr><tr><td>Item2<td>20</tr><body></html>'
sum = 0
for num in re.findall('[0-9]+',html):
    sum += int(num)
print(sum)
0
1 / 1 / 0
Регистрация: 07.12.2019
Сообщений: 45
09.12.2019, 19:17  [ТС] 20
Hyppoprogramm, schitajet vse cifri, a nado toljko 10 i 20
0
09.12.2019, 19:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.12.2019, 19:17
Помогаю со студенческими работами здесь

Если введенное число имеет такую же сумму цифр, как и сумма цифр кода, то доступ разрешен
Напишите функцию permission(code) для проверки кода доступа. В функцию передается число –...

Ввести две строки, состоящие только из цифр. Определить в какой строке сумма цифр большая
Здравствуйте! Задание следующее: Ввести две строки S1 и S2, состоящие только из цифр. Определить в...

Проверьте, равняется ли сумма первых трех цифр в строке сумме вторых трех цифр
Напишите скрипт, в котором в диалоговое окно вводится строка из 6 цифр. Проверьте, если сумма...

Сумма цифр в строке
апишите программу которая во введенной с клавиатуры строкесчитает сумму всех цифр

Сумма цифр в строке
Почему при расчёте суммы выходит 5 ? Хотя должно быть 11. int main() { int i = 0; int sum...

Сумма цифр в строке
подсчитывает сумму всех содержащихся в ней цифр =-O using System; using...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru