开发利器,预设变量到Python控制台

在用 Rails 开发 Web 应用时,经常需要调试某些类的 API,看一下输出是什么。
比如执行 view helper API:https://ruby-china.org/topics/3506

最近用 mongo 存爬取的数据,但是对 mongo 的 CRUD 操作不熟悉,经常需要进入 python 控制台调试API。

每次都要敲入 $ python,然后实例化 mongo 对象,期间还要加载 .env 文件里的环境变量,过程实在麻烦。所以想像 Rails 一样,搭建一个预设变量的控制台,提前创建出 mongo 对象,方便自己调试。

首先新建一个文件 console.py,把下面代码拷贝进去

import code
import os

import pymongo
import dotenv

dotenv.load_dotenv() # 读取环境变量

# 设置常用的变量
client = pymongo.MongoClient(os.getenv('MONGO_URI'))
db = client[os.getenv('MONGO_DATABASE')]
question_stats = db['question_stats']
answers = db['answers']

code.interact(local=locals()) # 进入python控制台,并且传入本地变量

然后在控制台执行,就能访问提前设置好的变量啦

$ python console.py            
Python 3.7.4 (default, Aug 13 2019, 15:17:50) 
[Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> db
Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'zhihu_spider')
>>> 

想起以前开发 Android App 时,也没有控制台。调试一个涉及到页面的几个 API,还得打包,安装 App 到手机上(现在打包速度提升不少了),点一下按钮或者进入主页面来触发代码,这个开发效率,一言难尽,想哭,哈哈

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 姓名 李洋 职位:乐观向上的宣传者 【日精进打卡第95天】 【知~学习】 每周1次 《六项精进》大纲1遍 共...
    ly0607vip阅读 845评论 0 0
  • 你知道吗?这个世界是多元的,存在着许多你没见识过的人和物,一般人看不到他们。他们在二次元中野蛮生长着,经历着我们这...
    黄青海阅读 4,328评论 21 28
  • 我们活着的唯一理由和价值,是培养爱和付出爱! ——法王如意宝
    暗室明灯阅读 858评论 0 0