Python 将参数从控制台传递到导入模块中的函数

Python 将参数从控制台传递到导入模块中的函数,python,function,arguments,Python,Function,Arguments,我有一个简单的脚本 import os os.system('cls') def addition (a , b ): """ Learning Python to make a better world This is my first program """ c = a+b print (c) addition(3,8) 导入函数后,如何从控制台将参数传递给函数addition 我确信这是一个非常基本的问题,但不知何故,我一直在努力解决这个

我有一个简单的脚本

import os
os.system('cls')
def addition (a , b ):
    """
    Learning Python to make a better world
    This is my first program
    """
    c = a+b
    print (c)

addition(3,8)
导入函数后,如何从控制台将参数传递给函数addition


我确信这是一个非常基本的问题,但不知何故,我一直在努力解决这个问题。

如果你使用sys而不是os,你可以做到

import sys
a = int(sys.argv[1])
b = int(sys.argv[2])
addition(a,b)
您可以使用如下命令调用脚本

python addition.py 1 2

其中addition.py是脚本的名称。

将addition函数修改为类结构:

Class Add:    
  def __init__(a,b):
    self.a = a
    self.b = b

  def addition (self):
    """
    Learning Python to make a better world
    This is my first program
    """
    c = self.a+slef.b
    print (c)

 if __name__ == '__main__':
   add1 = Add(sys.argv[1:])
   Add.addition()

你试了什么?您是如何导入它的?@BrenBarn,所以当我按如下方式导入脚本时:>>>>导入myfirst(myfirst是.py脚本)我得到结果11如何从控制台向函数传递参数,我知道我的脚本需要修改,但不确定导入后它是什么,只需执行
myfirst.添加(1,1)
,或者任何你想要的数字。@BrenBarn宾果!正是我想要的,使用相同的脚本,我能够在导入之后立即传递不同的参数。回答得好!我尝试将我的脚本更改为如您所说的,但我得到了这个导入sys a=sys.argv[1]b=sys.argv[2]def添加(a,b):“学习Python以创造更美好的世界这是我的第一个程序”“c=a+b打印(c)Python myfirst.py 2 4文件”“,第1行python myfirst.py 2 4^语法错误:无效语法代码在我的计算机上运行-我在import sys行中没有看到任何会导致语法错误的内容。缩进和空格在python中很重要。每个语句都必须在自己的行上。此外,通常您应该在导入语句之后,在生成任何其他语句或调用任何函数之前定义函数,以便保持组织。脚本都正确缩进,您可以将脚本粘贴到这里,以及如何在控制台上调用它?我的脚本看起来与发布的代码一模一样,但函数定义位于import语句和其他所有语句之间。至于我怎么称呼它,答案中也有。