添加一系列数字 python 2.7

Adding a range of numbers python 2.7

我正在尝试打印偶数整数,然后添加并打印此数字范围内的奇数整数。我被困了一段时间,似乎无法弄清楚我需要做什么。

first = int(raw_input("Input the lower integer : "))
second = int(raw_input("Input the higher integer : "))

def calc(even,odd):
    for even in range(first, second+1):
        if(even % 2 == 0):
            print even
    for odd in range(first, second+1):
        if(odd % 2 > 0):
            print odd


calc(first,second)

试试这个。这将打印所有偶数,然后打印奇数的总和:

first = int(raw_input("Input the lower integer : "))
second = int(raw_input("Input the higher integer : "))

def calc(first, second):
    sumOdds = 0
    for i in range(first, second+1):
        if i % 2 == 0:
            print 'Even: ', i
        else:
            sumOdds += i

    print(sumOdds)


calc(first,second)

试试这个:

first = int(input("Input the lower integer : "))
second = int(input("Input the higher integer : "))


def calc(first, second):

    for even in range(first, second + 1):
        if not even % 2:
            print('Even: ', even)

    for odd in range(first, second + 1):
        if odd % 2:
            print('Odd: ', odd)

    return sum(range(first, second + 1))

print('Sum: ', calc(first, second))

抱歉,我使用了 python3...

你有了一个好的开始,但请记住,像 oddeven 这样的变量名称只是你分配的名称,并不意味着值是奇数或偶数.

事实上,在你做的两个循环中

for even in range(first, second+1)
for odd in range(first, second+1)

oddeven 都将迭代相同的数字。所以不需要循环两次,你可以只循环一次,因为一个数字总是要么是偶数要么是奇数,所以你可以像这样组合两个循环

for num in range(first, second+1):
    if(num % 2 == 0):
        print 'even', num
    else:
        print 'odd', num

现在你可以做任何你想做的事情,而不是打印,即添加奇数