我在Python文件中创建了这个函数:
def abc (xyz):
return xyz
我将文件保存在/var/www/
中,文件名为a.py
。
现在我想在Ubuntu控制台中运行此函数并将参数传递给此函数。我怎样才能做到这一点?我试过这个:
jaskaran@jaskaran-Vostro-1550:/var/www$ python3 a.py
这并没有向我显示任何错误。如何调用该函数并能够在控制台中查看输出?
答案 0 :(得分:2)
脚本正在运行,它只是定义了函数,它不执行它。您需要从Python脚本中调用该函数。通常这样做是这样的:
def abc(xyz):
print(xyz)
if __name__ == "__main__":
abc(123)
您可以将命令行参数传递给abc()
,如下所示:
import sys
def abc(xyz):
print(xyz)
if __name__ == "__main__":
abc(sys.argv[1])
然后您可以从shell命令行运行它:
$ python script.py 123546
123456
如您所见,命令行参数“123456”已从sys.argv列表传递给abc()
,该列表表示传递给脚本的参数(sys.argv [0]是脚本名称)。
答案 1 :(得分:1)
首先,如果你想运行方法abc
你需要知道许多事情main()
程序的执行从python中的main()开始
def abc(xyz):
return xyz
if __name__ == "__main__":
abc("sundar")
传递如下所示的参数,您需要使用sys.argv
$python a.py "sundar"
import sys
def abc(xyz):
return xyz
if __name__ == "__main__":
print abc(sys.argv[1])
#output sundar
Python sys模块通过sys.argv
提供对任何命令行参数的访问。 sys.argv
是命令行参数列表,这里sys.argv[0]
是程序ie。脚本名称。
答案 2 :(得分:0)
尝试使用以下内容:
def abc(xyz):
print(xyz)
if __name__ == "__main__":
abc(input("Enter something: "))
这将在控制台中输入您输入的内容! ;)
我希望这有帮助
答案 3 :(得分:0)
$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from a import abc
>>> abc(123)
123
>>>