简体   繁体   English

我在获取列表而不是绑定方法时遇到问题

[英]I am having troubles getting the list instead of an bound method

import random
from random import randint as rand
upperCase = chr(rand(65,66))
lowerCase = chr(rand(97,122))
class PasswordLetters:
    
    def __init__(self):
        pass
    
    
    def generateCapitalCaseLetter(self):
        
        uppCase = chr(rand(65,91))
        return uppCase
    
    def generateLowerCaseLetter(self):
        lowCase = chr(rand(97,122))
        return lowCase
    
    def generateSpecialLetter(self):
        specLet = random.choice(specialCharacters)
        return specLet
    
    def generateNumber(self):
        num = rand(1,99)
class PasswordGenerator:
    
    def __init__(self,uppCase,lowCase,specLet,num):
        self.uppCaseList = []
        lowCaseList = []
        specLet = []
        numList = []
        self.passLetter = PasswordLetters()
        for i in range(0,uppCase):
            self.uppCaseList.append(self.passLetter.generateCapitalCaseLetter)


password = PasswordGenerator(1,1,1,1)
password.uppCaseList

So The Problem I am facing is when I try to get uppCaseList back from my password object it comes back to me as an method in a list instead of a letter in a list.所以我面临的问题是,当我尝试从密码对象中取回 uppCaseList 时,它会作为列表中的方法而不是列表中的字母返回给我。 I think the problem is in my PasswordLetters class but I can't figure it out.我认为问题出在我的 PasswordLetters 类中,但我无法弄清楚。 The only thing I want is for password.uppCaseList to return a list with letters我唯一想要的是 password.uppCaseList 返回一个带有字母的列表

Since it's a function you are calling, it would need to include the ( open and close ) parentheses.由于它是您正在调用的函数,因此它需要包含( open 和 close )括号。 You may refer here for explanation.您可以参考这里进行解释。

for i in range(0,uppCase):
    self.uppCaseList.append(self.passLetter.generateCapitalCaseLetter())

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM