【发布时间】:2018-12-13 15:56:02
【问题描述】:
我想编写一个将字符串转换为单个数字的函数。每个字母都有一个数字值,最后,它应该返回字母的总和,但如果它大于 10,它应该取数字的总和,直到找到 0 和 10 之间。例如,如果结果 99 它应该首先取9+9 = 18 那么它应该是 1 + 8 并且最终的答案必须是 9。
def name_numerology(name):
letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
numbers = '1234567891234567891234567812345678912345678912345678'
toq = list(zip(letters, numbers))
sie = []
for i in name:
if i in letters:
sie.append(toq[letters.index(i)])
ruk = []
for i, k in sie:
ruk.append(int(k))
zu = sum(ruk)
da = [i for i in str(zu)]
re = [int(i) for i in da]
return sum(re)
print(name_numerology('rasmuuuuuuuu'))
输出是:
12
我卡在这里
【问题讨论】:
-
欢迎来到 StackOverflow。请按照您创建此帐户时的建议阅读并遵循帮助文档中的发布指南。 On topic、how to ask 和 ... the perfect question 在此处申请。 StackOverflow 不是设计、编码、研究或教程资源。但是,如果您遵循您在网上找到的任何资源,进行诚实的编码尝试并遇到问题,那么您将有一个很好的示例可以发布。
标签: python string algorithm function