Python 函数未在 __init__ 中调用
Python function does not call in __init__
我是 Python 新手,所以对于这个可能很愚蠢的问题,我提前表示歉意。
我编写了一个函数,将字母表中的每个字母映射到其对应的素数。该功能工作正常。
我遇到的问题是我想创建一个字典,然后将 'dictionary' 变量设置为 'populateprimelist' 函数的结果,其中 returns 一个字典。我正在尝试在“init”函数中执行此操作,据我所知,该函数等同于 Java 构造函数。但是,当我在 main 方法中打印出 'dictionary' 变量时,它是空的。
dictionary = dict()
def __init__(self):
dictionary = self.populateprimelist()
def populateprimelist():
primelist = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101]
alphabet = "abcdefghijklmnopqrstuvwxyz"
tempdict = dict()
for index in range(len(alphabet)):
tempdict[(alphabet[index])] = (primelist[index])
return tempdict
if __name__ == '__main__':
print(dictionary)
__init__
用于 class
--- and you haven't defined a class here. Check out this answer.
据推测,您要么想将 __init__
和 populateprimelist
函数放入 class
中。或者,您实际上不需要在此处定义 class,您只需使用普通函数调用创建 'prime-list' 字典即可:
if __name__ == '__main__':
dictionary = populateprimelist()
print(dictionary)
您不需要 self
,因为没有使用自定义 class。
您也不需要第一个字典初始化 dictionary = dict()
我是 Python 新手,所以对于这个可能很愚蠢的问题,我提前表示歉意。 我编写了一个函数,将字母表中的每个字母映射到其对应的素数。该功能工作正常。
我遇到的问题是我想创建一个字典,然后将 'dictionary' 变量设置为 'populateprimelist' 函数的结果,其中 returns 一个字典。我正在尝试在“init”函数中执行此操作,据我所知,该函数等同于 Java 构造函数。但是,当我在 main 方法中打印出 'dictionary' 变量时,它是空的。
dictionary = dict()
def __init__(self):
dictionary = self.populateprimelist()
def populateprimelist():
primelist = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101]
alphabet = "abcdefghijklmnopqrstuvwxyz"
tempdict = dict()
for index in range(len(alphabet)):
tempdict[(alphabet[index])] = (primelist[index])
return tempdict
if __name__ == '__main__':
print(dictionary)
__init__
用于 class
--- and you haven't defined a class here. Check out this answer.
据推测,您要么想将 __init__
和 populateprimelist
函数放入 class
中。或者,您实际上不需要在此处定义 class,您只需使用普通函数调用创建 'prime-list' 字典即可:
if __name__ == '__main__':
dictionary = populateprimelist()
print(dictionary)
您不需要 self
,因为没有使用自定义 class。
您也不需要第一个字典初始化 dictionary = dict()