小编Pau*_*ven的帖子

从单独的文件 Flask SQLAlchemy python3 访问数据库

我正在编写一个烧瓶应用程序。我有两个文件。main.py 和databases.py。我想从database.py 文件创建一个数据库。main.py 应访问databases.py 文件并创建名为“Users”的数据库和表。但它显示导入错误。帮我解决这个问题

主要.py

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from databases import User

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////tmp/data_log.db'
db = SQLAlchemy(app)

if __name__ == '__main__':
    db.create_all()
    app.run(host='0.0.0.0', port=5001)  
Run Code Online (Sandbox Code Playgroud)

数据库.py

from main import db
from passlib.apps import custom_app_context as pwd_context

class User(db.Model) :
    __tablename__ = 'users'
    user_id     =   db.Column(db.Integer, primary_key = True)
    username    =   db.Column(db.String(32), index = True)
    password    =   db.Column(db.String(128))
    def hash_password(self, password) :
        self.password =pwd_context.hash(password)
    def verify_password(self, password) :
        return pwd_context.verify(password, self.password)
Run Code Online (Sandbox Code Playgroud)

追溯: …

python sqlite flask python-3.x flask-sqlalchemy

1
推荐指数
1
解决办法
3200
查看次数

从while循环返回而不退出python

我知道这是不可能的。返回将退出它。有没有办法使之成为可能。我有while循环,它计算值。我想从while循环返回该值,并将其用于进一步处理,然后再次返回while循环,并在停止的地方继续。我知道返回会退出循环。如何使其成为可能。

这是示例代码:

import datetime
import time
def fun2(a):
    print("count:", a)
def fun():
    count = 0
    while 1:
        count = count+1
        time.sleep(1)
        print(count)
        if count == 5:
            return count
a = fun()
fun2(a)
Run Code Online (Sandbox Code Playgroud)

我的输出:

1
2
3
4
5
count: 5
Run Code Online (Sandbox Code Playgroud)

要求的输出:

1
2
3
4
5
count: 5
6
7
8
9
and goes on....
Run Code Online (Sandbox Code Playgroud)

python for-loop while-loop python-3.x

1
推荐指数
1
解决办法
129
查看次数