来源 | Python编程时光

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

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

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

本技巧已经收录于最新版的 《Python黑魔法指南》v2.0,可以前往 Github 阅读:https://github.com/iswbm/magic-python)

做好心理准备了嘛?

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

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

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

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

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

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

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

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

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

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

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

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

继续探索

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

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

先来看一下效果。

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

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

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

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

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

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

$ export PYTHONSTARTUP=/Users/MING/startup.py

这样就可以了。

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

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

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

推荐阅读
  • 我在攻克机器学习硕士学位的那些年

  • 谷歌顶级量子科学家详述他为何从谷歌辞职

  • TensorFlow、PyTorch夹缝之下:后浪的进击和野望

  • 紧急通知:招募 2000 名 IT 人学英语,免费培训!

  • AI不止能美颜,美妆迁移这样做 | 赠书

我发现了个Python黑魔法,执行任意代码都会自动念上一段「平安经」相关推荐

  1. 我发现了个 Python 黑魔法,执行任意代码都会自动念上一段「平安经」

    来源 | Python编程时光 最近的"平安经"可谓是引起了不小的风波啊. 作为一个正儿八经的程序员,最害怕的就是自己的代码上线出现各种各样的 BUG. 为此,明哥今天分享一个 P ...

  2. python任意代码都可以缩进去_我发现了个 Python 黑魔法,执行任意代码都会自动念上一段 『平安经』...

    最近的"平安经"可谓是引起了不小的风波啊. 作为一个正儿八经的程序员,最害怕的就是自己的代码上线出现各种各样的 BUG. 为此,明哥今天分享一个 Python 的黑魔法,教你如何在 ...

  3. python执行一段代码_我发现了个 Python 黑魔法,执行任意代码都会自动念上一段 『平安经』...

    最近的"平安经"可谓是引起了不小的风波啊. 作为一个正儿八经的程序员,最害怕的就是自己的代码上线出现各种各样的 BUG. 为此明哥就研究了一下,如何在你执行任意 Python 代码 ...

  4. 我发现了个 Python 黑魔法,执行任意代码都会自动念上一段 『平安经』

    最近的"平安经"可谓是引起了不小的风波啊. 作为一个正儿八经的程序员,最害怕的就是自己的代码上线出现各种各样的 BUG. 为此,明哥今天分享一个 Python 的黑魔法,教你如何在 ...

  5. python 首次登陆outlook 脚本_Python 黑魔法,执行任意代码都会自动念上一段 平安经...

    最近的"平安经"可谓是引起了不小的风波啊. 作为一个正儿八经的程序员,最害怕的就是自己的代码上线出现各种各样的 BUG. 为此,明哥今天分享一个 Python 的黑魔法,教你如何在 ...

  6. Struts2/WebWork高危漏洞(远程执行任意代码)

    exploit-db网站在7月14日爆出了一个Struts2的远程执行任意代码的漏洞.  漏洞名称:Struts2/XWork < 2.2.0 Remote Command Execution ...

  7. 在Python中执行JavaScript代码并进行数据交换

    闲言碎语不多讲,今天介绍一下Python扩展库pyexecjs. 首先进入命令提示符环境,使用pip安装Python扩展库pyexecjs,瞬间完成: 然后就可以在Python中执行JavaScrip ...

  8. 热门开源CI/CD解决方案 GoCD 中曝极严重漏洞,可被用于接管服务器并执行任意代码...

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的安全 ...

  9. Fortinet 修复严重漏洞,可导致未认证黑客以最高权限执行任意代码

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士 Fortinet 更新 FortiManager 和 FortiAnalyzer 网络管理解决方案,修复可导致攻击者以最高权限执行任意代码 ...

最新文章

  1. java 用程序代码解释继承_关于初级java程序员笔试题
  2. 英飞凌单片机TC264实战攻略
  3. Android原生开发modules方式导入Unity问题汇总
  4. ML之ME/LF:机器学习中的模型评估指标/损失函数(连续型/离散型)的简介、损失函数/代价函数/目标函数之间区别、案例应用之详细攻略
  5. linux unbuntu屏幕显示不完整,解决 NetBeans 在 Gnome3 显示不全的问题
  6. java 怎么快速找到实现类_JAVA懒开发:FreeMarker快速实现类的增删改查接口
  7. 元组类型与列表类型的操作函数和方法
  8. jquery插件dataTables(dataTables在显示表格的时候,果然是个好东西,支持排序/搜索/分页/...)
  9. python -屏保
  10. Delphi之TStrings和TStringLists类[转]
  11. 富士通Fujitsu DPK320 打印机驱动
  12. Java工程师进阶,Java全栈知识体系
  13. Synaptics没有“连接外部USB鼠标自动禁用”选项
  14. ANT下载与安装--windows
  15. 【成神之路】Redis相关面试题
  16. Win7复制文件时出现:“您需要权限来执行操作!”(终极解决方法!)
  17. 有备无患——数据中心基础设施备品备件管理
  18. cuda 和 pytorch版本不一致torch.cuda.is_available()返回false——解决办法
  19. 视觉SLAM论文list
  20. 孤胆车神服务器维护,孤胆车神新奥尔良服务器连接不上怎么办_孤胆车神新奥尔良服务器连接不上解决方法_玩游戏网...

热门文章

  1. 0525 项目回顾7.0
  2. linux文本编辑nano
  3. Collection集合List、Set
  4. jQuery EasyUI 表单插件 - Datebox 日期框
  5. Lucene.net: the main concepts
  6. cmd 修改文件属性
  7. Arbitrage--POJ 2240
  8. vue代码转换成小程序
  9. Mysql InnoDB B+树索引和哈希索引的区别? MongoDB 为什么使用B-树?
  10. Using unique option prefix myisam-recover instead of myisam-recover-option