python -m lib,一句简单的命令加一个模块,除了可以自己写,python自带的现成功能也很强大和实用,本文将不断整理一些常用功能。

1.简单的局域网文件共享

1.在需要共享的文件夹下运行:

$ python -m http.server
Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...
192.168.1.100 - - [27/Nov/2017 11:30:19] "GET / HTTP/1.1" 200 -

2.然后查询自己电脑的ip:

$ ip addr

3.其他设备(windows,android等)可以在浏览器访问:

http://your ip:8000

当然可以指定端口:

python -m http.server 9000

基于http协议,跨多个平台。

2.命令行json格式化

# 文件
[jimo@jimo-pc elasticsearch-6.0.0]$ python -m json.tool p.json
{"name": "jimo","age": "100"
}
# 文本
[jimo@jimo-pc elasticsearch-6.0.0]$ echo '{"name": "jimo", "age": "100"}' | python -m json.tool
{"name": "jimo","age": "100"
}

读者反应中文会被编码:

$ echo '{"name": "寂寞", "age": "100"}' | python -m json.tool
{"age": "100","name": "\u5bc2\u5bde"
}

这个原因是json模块默认使用ascii编码,我们只需要修改一下源码,重新编译下即可:

  1. 找到json.tool模块的位置:

     >>> import json.tool>>> json.tool.__file__'/usr/lib/python2.7/json/tool.pyc'
    

    去到这个目录,发现tool.py源文件:

    jack@jack:/usr/lib/python2.7/json$ ll
    总用量 140
    drwxr-xr-x  2 root root  4096 7月  14 00:05 ./
    drwxr-xr-x 27 root root 24576 7月  14 00:05 ../
    -rw-r--r--  1 root root 13698 11月 28  2018 decoder.py
    -rw-r--r--  1 root root 11936 7月  14 00:05 decoder.pyc
    -rw-r--r--  1 root root 16399 11月 28  2018 encoder.py
    -rw-r--r--  1 root root 13687 7月  14 00:05 encoder.pyc
    -rw-r--r--  1 root root 14721 11月 28  2018 __init__.py
    -rw-r--r--  1 root root 13916 7月  14 00:05 __init__.pyc
    -rw-r--r--  1 root root  2297 11月 28  2018 scanner.py
    -rw-r--r--  1 root root  2223 7月  14 00:05 scanner.pyc
    -rw-r--r--  1 root root   997 11月 28  2018 tool.py
    -rw-r--r--  1 root root  1290 7月  14 00:05 tool.pyc
    
  2. 现在,使用root权限修改tool.py,在json.dump这一行加上ensure_ascii=False 参数:
     with outfile:json.dump(obj, outfile, sort_keys=True,ensure_ascii=False,indent=4, separators=(',', ': '))outfile.write('\n')
    

    然后重新编译:

    $ sudo python -m py_compile tool.py
    
  3. 验证:现在就OK了:
    $ echo '{"name": "寂寞", "age": "100"}' | python -m json.tool
    {"age": "100","name": "寂寞"
    }
    

python -m的那些实用功能相关推荐

  1. (译)一个完整的Django入门指南---第7部分

    1.前言 本篇文章是翻译 A Complete Beginner's Guide to Django 系列的最后一篇文章 A Complete Beginner's Guide to Django - ...

  2. Python IDE:PyCharm中的那些实用功能

    到目前为止,我用Eclipse已经有一些年头了,大部分的时间都是用来写Python(安装Pydev插件)以及C++(安装CDT插件). 最近我从一个好友那听说了PyCharm以及它新的免费社区版log ...

  3. python办公实用功能_【一点资讯】实用办公技巧贴——当Python遇上PDF www.yidianzixun.com...

    Portable Document Format(可移植文档格式),即PDF是一种文件格式,可以用于跨操作系统的呈现和文档交换.尽管PDF最初是由Adobe发明的,但它现在是由国际标准化组织(ISO) ...

  4. Python实用功能之pdf文件转png图片数据

    今天遇上一个问题就是需要将几个pdf合并起来,我百度了一下有哪些方法可以做,可以先看下: 第一种:使用"iLovePDF"(在线端) 这是一个国外的免费在线PDF文件处理工具,它提 ...

  5. 实用功能#用Python给你的微信升升级吧

    一个自动回复机器人 大家好,我是查理 微信自上线以来,一直没有自动回复的功能,想必是有他们的理念.但是有些人群,确实对此功能有一定需求,我举两个栗子: 不愿时刻被消息打扰的人 消息需要批量处理的人们( ...

  6. 量化交易Python实用功能函数(2)

    前面的文章,我们讲到了: "设定股票池 ContextInfo.set_universe()", "设定交易账号 ContextInfo.set_account()&qu ...

  7. 量化交易Python实用功能函数(3)

    量化交易现在的表现都非常不错,我们可以从公募量化基金中看出量化的表现: 不求妙手,但求积胜 85%比例对标中证500指数,全市场机器量化选股 今年以来11.92%,同类排名5/730 近一年25.18 ...

  8. Python Qt GUI设计:QMainWindow、QWidget和QDialog窗口类(基础篇—10)

    目录 1. QMainWindow窗口 2.QWidget窗口 3.QDialog窗口 3.1.QMessageBox窗口 3.2.QInputDialog窗口 3.3.QFontDialog窗口 3 ...

  9. 刻意练习:Python基础 -- Task13. datetime模块详解

    datetime模块 datetime 是 Python 中处理日期的标准模块,它提供了 4 种对日期和时间进行处理的类:datetime.date.time 和 timedelta. datetim ...

最新文章

  1. 【剑指offer】14、剪绳子
  2. pendo android,Pendo
  3. Java中的等待/通知机制(wait/notify)
  4. 对象必须实现 iconvertible_Java I/O 流之数据流_对象流
  5. [BZOJ1503][NOI2004]郁闷的出纳员 无旋Treap
  6. 【博客项目】—密码加密( 六)
  7. python之生成器-generator
  8. url地址中 /等符号的转义处理(转)
  9. Django相关配置(包括数据库、templates、static等)信息—Django2.0
  10. Starting MySQL. ERROR! The server quit without updating PID file
  11. Android-7.0-Nuplayer概述
  12. matlab 状态空间极点,传递函数、零极点增益与状态空间转换的matlab算法实现
  13. 基于MATLAB的DS证据融合代码
  14. android 修改 dpi_努比亚 Z11|魔趣100|安卓10.0|归属地|机型修改|性能调整|稳定流畅...
  15. 区块链开发基础知识学习
  16. CocosCreator 基于Assembler实现的图片切割破碎效果及自定义遮罩
  17. 【干货】PCB线宽与电流关系
  18. [USACO2.1]Healthy Holsteins 健康的荷斯坦奶牛 题解(DFS/BFS详解)
  19. direction: rtl;
  20. 利用计算机引号作用,计算机双引号怎么打出来

热门文章

  1. 微信支付分开通了,来看看你有多少分
  2. oracle用plsql导出dmp文件
  3. 利用爬虫获取免费IP代理
  4. Fiddler+雷电模拟器APP抓包
  5. 关于数据导出成excel表
  6. 计算机中的dump到底是什么意思?
  7. 旧电脑改路由器加文件服务器,如何将旧电脑改成软路由器 以winxp系统为例
  8. Linux下安装Nginx(实战配置)
  9. ArcGIS Pro基本操作教程(一)
  10. 文件存储名片java_java做的名片管理系统