关于将变量传递给参数

2024-09-27 21:26:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是python2.7.8。你知道吗

我正在学习参数和方法。我要做的是让用户输入两个不同的变量,然后将它们传递给不同方法中的参数sum()和difference()。你知道吗

我下面的代码是这样的:

def computeSum(x, t):
    x = int(raw_input('Please enter an integer: '))
    t = int(raw_input('Please enter a second integer: '))
    x+t
return Sum

def computeDif(y, j):
    y = int(raw_input('Please enter an integer: '))
    j = int(raw_input('Please enter a second integer: '))
    y+j
return Dif

def main():
    raw_input('Would you like to find the sum of two numbers or the difference of two numbers?: ')
    answer = 'sum'
while True:
    computeSum()
else:
    computeDif()

由于某些原因,我的编译器(pyScriptor)没有运行,我看不到任何输出或错误消息,它只是空白。有人能帮我解决语法/逻辑错误吗?你知道吗


Tags: 方法aninput参数rawreturndefinteger
2条回答

你的代码有一些问题

  • 你的缩进太大了

  • computeSumcomputeDif期望这两个数字作为参数,但也从终端请求它们

  • 返回变量SumDif,但从不给它们赋值

  • 您可以调用computeSumcomputeDif,但绝不对返回的值做任何操作

  • 你从不打电话给main。你知道你不需要main函数吗?您只需将代码放在函数定义之后

这可能更接近你的想法

def computeSum(x, t):
    return x + t

def computeDif(y, j):
    return y - j

def main():
    while True:
        answer = raw_input('Would you like to find the "sum" of two numbers or the "dif"ference of two numbers? ')
        a = int(raw_input('Please enter an integer: '))
        b = int(raw_input('Please enter a second integer: '))

        if answer == 'sum':
            print(computeSum(a, b))
        elif answer == 'dif':
            print(computeDif(a, b))
        else:
            print('Please enter "sum" or "dif"')

main()

问题是您不需要main()函数。只要把代码,不插入,本身,它会运行时,你运行程序。你知道吗

相关问题 更多 >

    热门问题