python using for loop in def function(Python在def函数中使用for循环)
本文介绍了Python在def函数中使用for循环的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试在数据库集合中获取过去7天创建的文档。
fmt = "%Y-%m-%d"
today = datetime.now(timezone('Asia/Seoul'))
for i in range(0, 7):
target = today - timedelta(days = i)
week = target.strftime(fmt)
hot_posts = list(db.collection.find({'date': week}, {'_id': False}).sort('like', -1))
print(hot_posts)
这将为我提供从数据库中查找的正确文档集。
但当我将其插入def函数时,它不起作用。
fmt = "%Y-%m-%d"
today = datetime.now(timezone('Asia/Seoul'))
@app.route('/api/list/hot', methods=['GET'])
def show_hot():
for i in range(0, 7):
target = today - timedelta(days=i)
week = target.strftime(fmt)
hot_posts = list(db.collection.find({'date': week}, {'_id': False}).sort('like', -1))
return jsonify({'hot_posts': hot_posts})
我认为我没有完全理解如何在正确的结构中使用def。 在这种情况下,在python中使用def的正确格式是什么? 我是否需要在for循环之前放置一些变量,并将其设置为Variable=[],以获得for循环的结果,并将其放入def函数可以使用的变量中? 我是否需要将一些for循环变量放入def函数的()中?
是这样的吗?
fmt = "%Y-%m-%d"
today = datetime.now(timezone('Asia/Seoul'))
@app.route('/api/list/hot', methods=['GET'])
def show_hot(range, list):
hot_posts = []
for i in range(0, 7):
target = today - timedelta(days=i)
week = target.strftime(fmt)
hot_posts = list(db.collection.find({'date': week}, {'_id': False}).sort('like', -1))
return jsonify({'hot_posts': hot_posts})
推荐答案
您可以创建一个空字典,并在迭代时更新它的键和值,然后返回结果字典。我尚未测试This代码,但我认为它应该可以正常工作。
fmt = "%Y-%m-%d"
today = datetime.now(timezone('Asia/Seoul'))
@app.route('/api/list/hot', methods=['GET'])
def show_hot():
all_hot_posts = {}
for i in range(0, 7):
target = today - timedelta(days=i)
week = target.strftime(fmt)
hot_posts = list(db.collection.find({'date': week}, {'_id': False}).sort('like', -1))
all_hot_posts.update({'hot_posts'+str(i+1): hot_posts})
return jsonify(all_hot_posts)
在python函数中,我们不将关键字定义为参数。它们的解释方式与正常脚本一样。
这篇关于Python在def函数中使用for循环的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:Python在def函数中使用for循环
基础教程推荐
猜你喜欢
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
