Возможно ли, чтобы функция ord() вычислила два слова по отдельности?

def hash(string):
   word = 0
   for i in list(string):
       word += ord(i)
       
   print(word)

hash(input('Введите строку: '))

Вот код. Задача состоит в том, чтобы я вводил несколько строк и ord вычислил код каждого символа строки и суммировал их, но в результате выдал мне сумму каждой строки по отдельности


Ответы (1 шт):

Автор решения: Namerek

Надеюсь я правильно понял что Вы имели ввиду:

def hash(string):
    word = 0
    for i in list(string):
        word += ord(i)
        
    if word:
        print(word)
        return word


while hash(input('Введите строку: ')):
    pass
# Введите строку: dsadas
# 624
# Введите строку: rwetwe
# 670
# Введите строку:

Вот так слегка покороче будет (python3.8+)

def ord_hash(string):
    if word := sum(map(ord, string)):
        print(word)
        return word
    

while ord_hash(input('Введите строку: ')):
    pass

А вот так еще короче (python3.8+)

while string := input('Введите строку: '):
    print(sum(map(ord, string)))
→ Ссылка