14 个 Python "冷兵器" 合集,让你的终端一秒开挂

Posted Python编程时光

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了14 个 Python "冷兵器" 合集,让你的终端一秒开挂相关的知识,希望对你有一定的参考价值。

今天给大家分享一篇朋友整理的文章,介绍了非常多的 Python 命令行式工具,这些工具绝大部分,我在 《Python黑魔法手册》中都有介绍过,感兴趣的可以去 http://magic.iswbm.com 学习。

1. http 服务

启动一个http静态文件服务

# python -m http.server
Serving HTTP on :: port 8000 (http://[::]:8000/) ...

2. json 格式化

格式化json数据

# echo '{"amount":3.4}' | python -m json.tool
{
    "amount": 3.4
}

3. 可视化编辑器和shell

idlelib模块基于tkinter,可以作为编辑器和shell使用。文件编辑器效果。

python -m idlelib myapp/example.py
gui-ide

shell效果

python -m idlelib

14 个 Python "冷兵器" 合集,让你的终端一秒开挂

gui-shell

4. python 应用程序打包

构建myapp目录如下:

├── myapp
│   ├── example.py
│   └── hello.py

代码分别如下:

# example.py

import hello

def main():
   print('Hello World')
   hello.say_hello("python")
   
if __name__=='__main__':
   main()

# hello.py

def say_hello(name):
 print("hello",name)

将整个myapp打包成应用程序,命令执行后会生成一个名叫 myapp.pyz 应用程序。

python -m zipapp myapp -m "example:main"

使用python直接运行应用程序

# python myapp.pyz
Hello World
hello python

5. ROT13 加密

rot13(rotate by 13 places)是一种简易的替换式密码,是凯撒密码的变种。rot13将原文偏移13位形成密文,因为英文总共26位,所以密文再偏移13位后会回到原文。公式: rot13(rot13(xxx))=xxx

# echo "xxx" | python -m encodings.rot_13
Tvir zr n fgne

作为一个小彩蛋,欢迎大家动手破译一下xxx的值

6. base64 编码

对一个字符串进行base64编码

# echo "haha" | python -m base64
aGFoYQo=
# echo "aGFoYQo=" | python -m base64 -d
haha

base64还支持对文件编码。编写测试代码

# sample.py

def main():
   print('Hello World

以上是关于14 个 Python "冷兵器" 合集,让你的终端一秒开挂的主要内容,如果未能解决你的问题,请参考以下文章

Python 冷兵器合集

python 超好用的迭代兵器库itertools,十八般兵器哪18般?

Bug解决方案:org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 8; 不允许有匹配 "[xX][mM][lL]&quo

python+django +ajax

python兵器谱之re模块与正则表达式

python中输入字符串,统计字符串中大小写英文字母各有多少个?