80 join方法

import os
import time
from multiprocessing import Process


def task(n, tag):
	print(f'{tag} start running!')
	time.sleep(n)
	print(f'{tag} is done!')


if __name__ == '__main__':
	p1 = Process(target=task, args=(3, '进程1'))
	p2 = Process(target=task, args=(4, '进程2'))
	p3 = Process(target=task, args=(5, '进程3'))

	# t_start = time.time()
	# p1.start()
	# p1.join()
	# p2.start()
	# p2.join()
	# p3.start()
	# p3.join()
	# t = (time.time()-t_start)
	# print(t)  # 12s运行结束

	t_start = time.time()
	p1.start()
	p2.start()
	p3.start()
	p2.join()
	p3.join()
	p1.join()
	time.sleep(10)
	print(time.time() - t_start)  # 5s运行结束

	print(f'主程序{os.getpid()}运行!')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Flask 中使用 SQLAlchemy 进行 JOIN 操作,可以通过在查询中使用 `join()` 方法来实现。下面是一个示例代码: ```python from flask import Flask from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///example.db' db = SQLAlchemy(app) class User(db.Model): id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(80), unique=True, nullable=False) email = db.Column(db.String(120), unique=True, nullable=False) class Post(db.Model): id = db.Column(db.Integer, primary_key=True) title = db.Column(db.String(80), nullable=False) content = db.Column(db.Text, nullable=False) user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False) user = db.relationship('User', backref=db.backref('posts', lazy=True)) @app.route('/') def index(): posts = db.session.query(Post).join(User).filter(User.username == 'john').all() return str(posts) ``` 上面的代码中,我们定义了两个模型类 `User` 和 `Post`,并且在 `Post` 模型中定义了一个外键 `user_id`,它关联到了 `User` 模型的 `id` 字段。我们使用 `db.relationship()` 方法来定义了一个 `user` 属性,这个属性可以让我们通过 `post.user` 来访问到这个 `Post` 对象所属的 `User` 对象。 在视图函数中,我们使用 `db.session.query()` 方法来创建查询对象,然后使用 `join()` 方法来指定要关联的模型,最后使用 `filter()` 方法来添加查询条件。在这个例子中,我们查询所有属于用户名为 "john" 的用户的文章。 注意,在使用 `join()` 方法时,我们需要指定关联的属性名,这个属性名可以通过模型中定义的关系属性 `user` 来获取,即 `Post.user`。如果我们想要指定不同的属性名,可以使用 `join(User, Post.user_id == User.id)` 这样的语法来实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值