shell 将Bash函数调用转换为Python

vmpqdwk3  于 2023-01-05  发布在  Shell
关注(0)|答案(1)|浏览(220)

我试着把这个从Bash翻译成Python:
第一个月
func_nameconfigFile已在脚本前面定义。func_name是函数,configFile是指向XML文件的工作目录。
但我不知道在这种情况下如何处理func_namepassword和数组在这里吗?
知道了Bash中的数组在Python中称为列表,我尝试过这样做,但我不确定:
password = [configFile, "<password", "2"]
是这样吗?

uurv41yg

uurv41yg1#

大致翻译如下:

password = func_name(configFile, "<password", "2")

但这未必行得通,Python和bash的思维方式根本不同,你不能在它们之间来回“转换”;你必须用两种语言来思考不同的问题。
例如,bash函数实际上没有返回值,它们可以在运行时打印输出(输出是一个字节序列),并返回一个状态代码(基本上,函数是否成功),您所拥有的bash代码捕获输出(函数打印的内容),将其视为字符串,并将其存储在password变量中。
Python函数返回 objects。bash没有对象的概念。Python对象 * 可以是字符串......或者任何内置对象类型,或者任何从库中导入或自己定义的类型。这里我的Python代码接受函数返回的任何对象,并将其存储在password变量中。顺便说一句,Python函数没有返回状态。相反,它们可以抛出错误(这是bash没有的概念)。
类似地,传递给bash函数的参数都是字符串,但在Python中它们是对象(可以是字符串,但也可以是完全不同类型的东西)。
我强烈建议你学习你正在尝试使用的语言,你不能在语法层面上翻译它们,你需要在概念层面上翻译,而要做到这一点,你需要在这个层面上理解两种语言。

相关问题