当前位置: 首页 > 后端技术 > Python

懒人必备神器!一个有创意的Python命令行工具

时间:2023-03-25 21:25:12 Python

听到有人说xx库很好用,我们就忍不住想要自己试试看。有一些库很好用,因为它们在更高级别上被关闭了。当你安装这个库时,它还会安装n个依赖库。上一篇介绍的streamlit,依赖包有90个之多?和百度全家桶相比,也是tm的全家桶……就是怕污染我全局的Python环境。当我通常尝试一个新的包时,我会使用venv创建一个虚拟环境,然后安装它,然后在完成后清理它。只是一个虚拟环境。大家有没有发现,整个过程其实挺麻烦的。就在昨晚,在Github上闲逛的时候,发现了一个库,可以解决我一直以来的烦恼。这个库叫做trypackage,一个用于测试库的库。当你使用tryxx命令时它做了什么?安装指定版本的Python解释器创建临时虚拟环境激活虚拟环境在虚拟环境中安装你想试用的Python库直接进入PythonShell模式,自动导入你想试用的库1.如何安装一条命令就可以安装python3-mpipinstalltr??ypackage可以看到trypackage只依赖了一个click命令行库,还是很轻量的。其实try会创建一个基于virtualenv的虚拟环境,所以需要安装virtualenv和virtualenvwrapperpython3-mpipinstallvirtualenvvirtualenvwrapper2.基本使用使用tryrequests,try会创建一个虚拟环境,然后在virtual中安装requests环境。安装完成后会自动进入PythonShell模式,自动导入你要试用的包。最体贴的是尝试完成后,退出PythonShell,虚拟环境会自动清理。3.更多用法指定python版本我的环境没有安装Python3.8,通过-p参数可以指定Python3.8,安装过程太快了,快到不知道这是不是真的要安装Python3.8口译员。也可以直接指定本地Python版本,比如tryrequests-p/usr/bin/python3.7.1指定运行模式try有很多直接运行模式1.不指定时,pythonshell的模式是默认使用#Bothetc.pricetryrequeststryrequests--shellpython2,usingipython,有两种方式指定#两者是等价的tryrequests--ipythontryrequests--shellipython3,usingptpythonorptipython两种模式都有代码提示和自动补全功能4、使用bpython模式Bpython的代码提示和补全比ptpython和ptipython强,其他的区别还没测试。在编辑器中打开tryrequests--editor指定Github仓库包#语法示例try/#在Githubtrykennethreitz/requests上安装master版本trykennethreitz/requests指定现有的虚拟环境tryrequests--virtualenv~/.try/sandbox持久化虚拟环境默认情况下,你退出后,虚拟环境会自动清理。如果有特殊需求,可以指定--keep参数来持久化虚拟环境指定虚拟环境的默认目录接下来,尝试将虚拟环境创建在一个默认目录中。这个目录比较深,不太好记。您可以指定--tmpdir参数来告诉尝试在此处创建虚拟环境。这个参数对于持久化一个人在虚拟环境中是很有用的。tryrequests--tmpdir~/.try4.虽然配置文件try提供了一种通过命令行输入参数来识别用户选项的方法,但是对于一些用户来说,一次性修改try的默认选项反而更可取ofeverytime指定多个参数。这时候可以在你的APP目录下添加一个config.ini文件,内容模板如下[env]virtualenv=~/.try/sandboxpython=3.8shell=ipythonkeep=falsealways_use_editor=falsetmpdir=~/.tryso称为APP目录,在不同的系统中是不同的,可以用下面的代码查看>>>importclick>>>click.get_app_dir("try")'/Users/iswbm/Library/ApplicationSupport/try'>>>Yes进入config.ini后,再次尝试,会发现效果和预期的配置一致。5.综上所述,Try是一个非常实用的命令行工具。它的功能可以说是完全击中了我的痛点。能做出这样的库,真是很有创意。再次证明Python是懒人的第一语言。.以上就是本次分享的全部内容。觉得文章还不错的话,请关注公众号:Python编程学习圈,每日干货分享,发送“J”还能领取大量学习资料。或者去编程学习网了解更多编程技术知识。