Python 如何添加在for循环下的数字?

Python 如何添加在for循环下的数字?,python,Python,我现在需要把这些数字加在一起,我试过求和(c),但它不起作用 尝试使用额外的变量 charkey = input('\nWhat is the eight character key that was used in encryption?\n') for i in charkey: c = (ord(i)) print('Asc2num',c) Output: What is the eight character key th

我现在需要把这些数字加在一起,我试过求和(c),但它不起作用

尝试使用额外的变量

     charkey = input('\nWhat is the eight character key that was used in encryption?\n')
    for i in charkey:
      c = (ord(i))
      print('Asc2num',c) 

    Output: 
     What is the eight character key that was used in encryption?
    (*&^%$
    Asc2num 40
    Asc2num 42
    Asc2num 38
    Asc2num 94
    Asc2num 37
    Asc2num 36 
也有较短的版本:

charkey = input('\nWhat is the eight character key that was used in encryption?\n')
res = 0
for i in charkey:
  c = (ord(i))
  res += c

print(res)
sum()将list或任何iterable对象作为参数

演示:

In [106]: sum([1,2,3,4,5])
Out[106]: 15
例外情况:

print(sum((ord(x) for x in charkey)))

创建用于添加的变量:

演示:

In [106]: sum([1,2,3,4,5])
Out[106]: 15

我试过你的问题。这里有一个解决方案


就目前而言,你不能!循环之后,
c
是最后输入的数字。为什么不把它们放在一个列表中,或者一直把它们添加到其他变量中呢?
In [108]: add = 0

In [109]: for i in range(5):
   .....:     add = add + i
   .....:     

In [110]: add
Out[110]: 10
 c=[]

 for i in charkey:
      c.append(ord(i))
 sum(c)


>>> charkey = raw_input('\nWhat is the eight character key that was used in encryption?\n')

What is the eight character key that was used in encryption?
!@#$%^&*
>>> c
[33, 64, 35, 36, 37, 94, 38, 42]
>>> sum(c)
379