2014-10-19 101 views
0

到目前爲止,我有這個將數字轉換爲數字範圍?

for letter in name: 
    number = ord(letter) - 96 
    if number>=1 and number<=9: 
     output.append(number) 
    else: 
     #change value to corresponding numeric value? 

我應該字母轉換成一個名字在命理相應的數字值 http://m.wikihow.com/Calculate-Your-Name-Number-in-Numerology 現在它輸出的字母數只有拼音首9個字母和遺漏了我過去任何信件的價值。

+0

在數學上,你應該能夠使用模運算符('%')來完成這個。 I.E. '10%9 == 1'。 – aruisdante 2014-10-19 04:01:49

回答

0

每個字母的值可以簡寫爲(ord(letter) - 97)%9 + 1。完整的代碼然後是:

for letter in name: 
    number = (ord(letter) - 97)%9 + 1 
    output.append(number) 
+0

這幫了一大堆忙,我在想這個太過分了。謝謝! – eskoka 2014-10-19 04:08:52

相關問題