python输出添加

时间:2017-02-11 04:58:24

标签: python input output addition

我是python(版本2.7)的新手,我想知道如何在一行上输入两个数字并计算两个数字的总和。我正在寻找输出如下:

11 + 11 = 22

输入看起来像这样:

11 11

2 个答案:

答案 0 :(得分:0)

你可以这样做:

a = raw_input("Enter numbers separated by space: ").split() # input() for Python3 
print ' + '.join(a) + ' = ' + str(sum(map(int, a)))         # print() for Python3

输出:

Enter numbers separated by space: 2 34 234
2 + 34 + 234 = 270

或者这是不同的东西:

def add():
    ans = None
    while ans not in ['q', 'quit', '']:
        ans = input('> ')
        print(sum(map(int, ans.strip().split(' ')))

add()

以下是解释:

def add():
    ans = None
    while ans not in ['q', 'quit', '']: # stops if you type 'q', 'quit', or nothing
        ans = input('> ') # for python 3
        ans = raw_input('> ') # for python 2
        # it asks the user for a string
        ans.strip() # remove the spaces at the end and at the beginning of the string
        ans.split(' ') # splits the string each time it sees a space (so, you get a list)
        map(int, ans.strip().split(' ') # because we splited a string, we have a list of string.
        # Here, we transform them to integer, so we can add them. map() calls a function (here
        # int) on every element of the array we passed as the second argument
        sum(...) # sum is a function that takes a list and adds every number that it contains
        print(...) # you know what that does ;)
        # not that one python 2, you don't need the parentheses 

add() # call our function

答案 1 :(得分:-2)

因为你是这门语言的新手,我认为最简单的答案是最好的。所以我会采用的方式是

nums = input("Enter two integers: ")
nums.split(' ')
print nums[0]
print nums[1]
print '11 ','+ ','11 ','=', 11+11

# OR

nums = input("Enter two integers: ")
numList = nums.split(',')
nums = [int(x) for x in numList]
print '11',' + ','11',' = ', nums[0]+nums[1]
相关问题