在导入函数中使用变量作为参数

问题描述 投票:0回答:1

我是python的新手,所以这可能有一个非常明显和简单的解决方案,但它是这样的:我创建了一个自定义模块,并将其导入到另一个脚本[script2]中,并希望使用script2中定义的本地变量作为导入模块中的一个函数的参数。

模块。

def encrypt(inputstr, securitykey = 1, encryptionkey = 1, decryptionkey = 1): #default value of keys is 1

inputstr = str(inputstr)

[converts inputed string into number ids based on encryption key and security key; this is like a 80 line long process, so I won't show it here]

inputstr = int(inputstr)
inputstr = inputstr * decryptionkey * securitykey
inputstr = str(int(inputstr)) #<this is stupid, I know, but for some reason this was the only way it worked

return inputstr

script2:

from ModuleDirectory import encryption

msg = input("Enter your message: \n \n")
seckey = input("Enter security key: \n \n")
enckey = input("Enter enrcyption key: \n \n")
deckey = input("Enter decryption key: \n \n")

encrypted = encryption.encrypt(msg,seckey,enckey,deckey)
print(encrypted)

当我这样做时,我得到了一个 NameError。我如何告诉 Python 我想使用 script2 中定义的变量作为我从模块中导入的函数的参数?正如我所说,我对 Python 很陌生,所以我可能是个白痴。

python function variables parameters module
1个回答
0
投票

def function(String ...) 这里String是个问题! 请给普通的String变量名,而不是String! 你发送的是一个叫做string的字符串! 所以你必须让这个String和另一个String在一起! 但不是大写的字符串! 你不能用它作为一个名字!


0
投票

在python中,你不需要指定String,只需要把它作为var1... 就可以了。


0
投票

不知道你是否是这个意思,但是你必须调用参数里面有变量的函数,才能把实际变量传给函数。所以在最后调用函数的时候要把参数里面的变量一起调用。

例子

encrypt(msg, seckey, enckey, deckey)

但不知道你是不是这个意思。

© www.soinside.com 2019 - 2024. All rights reserved.