我需要得到“计算机”这个词。将每个字母转换为相应的ASCII值(使用For循环)。然后将各个ASCII值一起添加以获得总和。
我在启动程序时输入“COMPUTER”作为“text”的参数。
所以认为COMPUTER = text
到目前为止:
def addASCIIValues(text):
for char in text:
AsciiArray = ord(char)
print AsciiArray
请使用没有导入功能的简单代码。
我正在使用Jython但是python响应也没关系!
答案 0 :(得分:0)
由于ord函数返回一个int,你可以求和,所以像这样
sum = 0
for letter in word:
sum += ord(letter)
print(sum)
答案 1 :(得分:0)
您的部分疑惑可能是因为您已将int
ord()
返回的AsciiArray
命名为。它不是一个“数组”。
使用列表理解很简单:
word = 'COMPUTER'
print sum([ord(c) for c in word])
但是您要求采取具体步骤:
word = 'COMPUTER'
SUM = 0
for char in word:
value = ord(char)
SUM += value
print SUM
我应该指出,通常大写名称用于常量,因此名称SUM通常不被视为良好做法。