python - 如何将方法的返回语句存储在变量中?(Python)
问题描述
我对 OOP(以及 python)很陌生,所以我正在构建类似于 Enigma 机器的东西。我的问题是:我不知道如何访问 randomizer 方法的 return 语句。我需要它才能获得随机的字符列表。
class generators():
global static_alphabet,backup_alphabet,encripting_dict,decripting_dict, mutable_alphabet
static_alphabet=['a','á', 'b', 'c', 'd', 'e','é', 'f', 'g', 'h', 'i','í', 'j', 'k', 'l', 'm', 'n', 'o','ó','ö','ő', 'p', 'q', 'r', 's', 't', 'u','ú','ü','ű','v', 'w', 'x', 'y', 'z',"'",'"','@',':','_','.','-',',','!']
backup_alphabet=['a','á', 'b', 'c', 'd', 'e','é', 'f', 'g', 'h', 'i','í', 'j', 'k', 'l', 'm', 'n', 'o','ó','ö','ő', 'p', 'q', 'r', 's', 't', 'u','ú','ü','ű', 'v', 'w', 'x', 'y', 'z',"'",'"','@',':','_','.','-',',','!']
mutable_alphabet=[]
def randomizer(self):
mutable_alphabet=[]
import random
for element in static_alphabet:
randletter=backup_alphabet[random.randint(0,len(backup_alphabet)-1)]
while randletter==element:
randletter=backup_alphabet[random.randint(0,len(backup_alphabet)-1)]
if randletter!=element:
break
mutable_alphabet.append(randletter)
backup_alphabet.remove(randletter)
return mutable_alphabet
解决方案
基本上,您正在尝试访问 a 内的函数 ( def
) 内的 return 语句class
。虽然您的代码目前似乎没有被构造为利用 OOP,但您可以在同一文件中运行该函数:
class generators():
...your code...
gen = generators()
outputArray = gen.randomizer()
# confirm output by printing it out
print( outputArray )
正如我在上面试图说明的那样,这需要放在课堂之外。
推荐阅读
- vb.net - 检查多个 TexBox 中的某些文本
- kubernetes - acme 登台环境显示无效证书
- python - 在没有 XPath 的情况下使用 Selenium 查找元素
- python - 关于 keras 中的 batch_size 和 epochs 的问题
- c# - 如何使用 NUGET 删除 dbContext 命令?
- xaml - 让搜索栏结果显示在其他内容之上
- discord - DM 中的命令用法 | 不和谐.js
- firebase - Flutter Web 和 Firebase 身份验证 TypeError:无法读取未定义的属性“应用程序”
- python - 更有效地调用类的方法
- r - R:stm()包流行回归未能在迭代限制内收敛