Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7649
  • 博文数量: 51
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 255
  • 用 户 组: 普通用户
  • 注册时间: 2020-12-30 16:49
文章分类
文章存档

2021年(48)

2020年(3)

我的朋友

分类: Python/Ruby

2021-01-12 13:57:46



最近的"平安经"可谓是引起了不小的风波啊。


作为一个正儿八经的程序员,最害怕的就是自己的代码上线出现各种各样的 BUG。


为此,明哥今天分享一个 Python 的黑魔法,教你如何在你执行任意 Python 代码前,让 Python 解释器自动念上一段平安经,保佑代码不出 BUG 。


做好心理准备了嘛?


>给大家推荐我自己的qun:850973621
把各种 python 的高效的使用技
巧用电子书的形式展示出来。有兴趣
的可以进群看一看视频教学和录播






我要开始作妖了,噢不,是开始念经了。


![image.png](https://upload-images.jianshu.io/upload_images/25205170-f343a2d69b60078a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


感谢佛祖保佑,Everything is ok,No bugs in the code.


你一定很想知道这是如何实现的吧?


如果你对 Linux 比较熟悉,就会知道,当你在使用 SSH 远程登陆 Linux 服务器的时候?会读取 `.bash_profile` 文件加载一些环境变量。


`.bash_profile` 你可以视其为一个 shell 脚本,可以在这里写一些 shell 代码达到你的定制化需求。


而在 Python 中,也有类似 `.bash_profile` 的文件,这个文件一般情况下是不存在的。


我们需要新建一个用户环境目录,这个目录比较长,不需要你死记硬背,使用 site 模块的方法就可以获取,然后使用 `mkdir -p` 命令创建它。


![image.png](https://upload-images.jianshu.io/upload_images/25205170-f7675902999c8f69.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)




在这个目录下,新建一个 `usercustomize.py` 文件,注意名字必须是这个,换成其他的可就识别不到啦。


这个 `usercustomize.py` 的内容如下(明哥注:佛祖只保佑几个 Python 的主要应用方向,毕竟咱是 Python 攻城狮嘛...)


![image.png](https://upload-images.jianshu.io/upload_images/25205170-03739376d09d1c45.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)




这个文件我放在了我的 github 上,你可以点此前往获取。


![image.png](https://upload-images.jianshu.io/upload_images/25205170-e96efef283afb84e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)




一切都完成后,无论你是使用 `python xxx.py` 执行脚本


![image.png](https://upload-images.jianshu.io/upload_images/25205170-348f4aea2da463b3.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)




还是使用 `python` 进入 Python Shell ,都会先念一下平安经保平安。


![image.png](https://upload-images.jianshu.io/upload_images/25205170-6335a464ad764c15.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)




除此之外,可还有其他方法呢?


当然是有,只不过相对来说,会麻烦一点了。


先来看一下效果。


先查看在 `~/Library/Python/3.9/lib/python/site-packages` 目录下并没有 `usercustomize.py` 文件。


但是在执行 python 进入 Python Shell 模式后,还是会打印平安经。


![image.png](https://upload-images.jianshu.io/upload_images/25205170-4df44f150906b3ee.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)




这又是如何做到的?真见鬼了呀。


方法其实也很简单,只要做两件事,就能实现这样的效果:


**第一件事**,在任意你喜欢的目录下,新建 一个Python 脚本,名字也随意,比如我叫 `startup.py`,内容还是和上面一样


![image.png](https://upload-images.jianshu.io/upload_images/25205170-8bfcfc0f95e96981.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


**第二件事**,设置一个环境变量 PYTHONSTARTUP,指向你的脚本路径


```
$ export PYTHONSTARTUP=/Users/MING/startup.py
复制代码
```


这样就可以了。


但是这种方法只适用于 Python Shell ,只不适合 Python 执行脚本的方法。


![image.png](https://upload-images.jianshu.io/upload_images/25205170-4d40c902561c267a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)




如果要在脚本中实现这种效果,我目前想到最粗糙我笨拙的方法了 -- `手动加载执行`


![image.png](https://upload-images.jianshu.io/upload_images/25205170-de972af67df9404f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)




本文分享了两个非常冷门 Python 的黑魔法技巧,可以实现在你执行任意的 Python 代码前,自动召唤佛祖念上一段平安经。




原文链接:https://juejin.cn/post/6856611228581232648


阅读(63) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~