python - 从一个函数获取返回值并在另一个函数上使用

标签 python sqlite

我正在尝试用Python做一些看似基本的事情,但我认为我想太多了。

我正在尝试获取 password 的返回值来自create_password()并在 store_password() 中使用它我把<<HERE>>放在哪里

我怎样才能做到这一点?

def create_password(self):
    characters = string.ascii_letters + string.punctuation  + string.digits
    password =  "".join(choice(characters) for x in range(self.pass_char) )
    return (password)

def store_password(self):
    try:
        connection = sqli.connect('pw.db')
    except:
        print("Error occurred!")

    with connection:
        cur = connection.cursor()
        cur.execute('''
                    CREATE TABLE IF NOT EXISTS my_passwords(
                    id INT PRIMARY KEY AUTOINCREMENT,
                    password text
                    '''
        )
        cur.execute('INSERT INTO my_passwords VALUES(?)', <<HERE>>)

谢谢。

最佳答案

这基本上是使用您已经构建的函数 create_password(self)假设它们都属于同一类,您应该可以调用 create_password(self)在第二个函数 store_password(self)

因此,要返回您创建的密码,您只需调用 create_password(self) 即可。代替<<HERE>> .

tabac 所建议的也将起作用,您需要确保方法 create_password(self)必须之前调用,以便 self.password变量已赋值。

你的代码将变成

cur.execute('INSERT INTO my_passwords VALUES(?)', self.create_password(self))

关于python - 从一个函数获取返回值并在另一个函数上使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33809294/

相关文章:

python - 如何删除数据框中的行

python - 使用 peewee ORM 对代码进行单元测试的自定义 sqlite 数据库

multithreading - Peewee Sqlite 在内存数据库中的共享

android - 如何使用删除触发器删除同一个表中的行?

python - 平均值和最大值之间差距较大的列表的 Pyqt 步长

python子进程Popen环境路径?

sqlite - 在SQLite 3中删除行并引用另一个表中的行

c++ - 如何为 SQLite 表中的树建立索引?

python - 获取值错误: unknown url type: ' '

python - 系列的第一个元素在 numpy 中跨越阈值,处理永不跨越的系列