一、Python生态工具

  一、Python内置小工具

  1、秒级启动一个下载服务器

  Python 内置了一个下载服务器就能够显著提升效率了 。 例如, 你的同事要让你传的文件位于某一个目录下,那么,你可以进入这个目 录 , 然后执行下面的命令启动一个下载服务器

Python2实现:

    python -m SimpleHTTPServer


Python3实现:

  在 Python 3 中,由于对系统库进行了重新整理,因此,使用方式会有不同:
    python -m http.server

   执行上面的命令就会在当前目录下启动一个文件下载服务器, 默认打开 8000 端口 。 完成以后,只需要将 IP 和端口告诉同事,让同事自己去操作即可,非常方便高效 。

  效果如下:

  Python生态工具、文本处理和系统管理(虚拟)

  注意:如果当前目录下存在一个名为 index .html 的文件,则 默认显示该文件的内容 。 如果当前目录下不存在这样一个文件,则默认显示当前目录下的文件列表。

   2、字符串转换为JSON

  需求:在工作过程中,我们的系统会调用底层服务的 API。底层服务的 API一般都以 JSON 的格式返回,为了便于问题追踪,我们会将 API 返回的 JSON 转换为字符串记录到日志文件中。 当需要分析问题时,就需要将日志文件中的 JSON 字符串拿出来进行分析 。这个时候,需要将一个 JSON 字符串转换为 JSON 对象,以提高日志的可读性 。

  解决:这个需求十分常见,以至于使用搜索引擎搜索 叮SON”,处于搜索结果的第一项便是“在线 JSON 格式化工具” 。 除了打开浏览器,使用在线 JSON 格式化工具以外,我们也可以使用命令行终端的 Python 解释器来解析 JSON 串,如下所示:

# echo '{" job":" developer"," name":" lmx"," s ex":"male " }' |python -m json.tool
{
    " job": " developer",
    " name": " lmx",
    " s ex": "male "
}

  使用命令行解释器解析JSON 串非常方便,而且,为了便于阅读,该工具还会自动将转换的结果进行对齐和格式化。 如下所示:

# echo '{"signing": { "default": { "expiry": "8760h" }, "profiles": { "kubernetes-Soulmate": { "usages": [ "signing", "key encipherment", "server auth", "client auth" ], "expiry": "8760h" } } } }'|python  -m  json.tool
{
    "signing": {
        "default": {
            "expiry": "8760h"
        },
        "profiles": {
            "kubernetes-Soulmate": {
                "expiry": "8760h",
                "usages": [
                    "signing",
                    "key encipherment",
                    "server auth",
                    "client auth"
                ]
            }
        }
    }
}

   二、pip的高级用法

  1、pip常用子命令

    1、pip的子命令对照表

  Python生态工具、文本处理和系统管理(虚拟)

    2、系统安装pip

  进入https://pypi.python.org/pypi/pip,下载第二项。

    Python生态工具、文本处理和系统管理(虚拟)

  解压下载的文件(windows下只用解压工具解压如RAR,Linux下终端输入tar -xf pip-10.0.1.tar.gz,即tar -xf 文件名),进入解压后的文件夹中,调出命令行窗口或者终端

wget https://files.pythonhosted.org/packages/ae/e8/2340d46ecadb1692a1e455f13f75e596d4eab3d11a57446f08259dee8f02/pip-10.0.1.tar.gz
tar xf pip-10.0.1.tar.gz
cd pip-10.0.1/
##Linux下操作用户是普通用户需要sudo授权操作
python setup.py install
##查看版本信息
pip -v

  若安装报下面的错误

# python setup.py install
Traceback (most recent call last):
  File "setup.py", line 6, in <module>
    from setuptools import setup, find_packages

  解决办法如下(完美解决问题)

wget http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg
sh setuptools-0.6c11-py2.7.egg
    3、查找安装包
pip search flask
    4、安装特定的安装包版本
pip install flask==0.8
    5、删除/卸载安装包
pip uninstall Werkzeug
    6、查看安装包的信息(-f显示安装包所在的目录)
pip show flask
    7、查看安装包的依赖是否完整
pip check flask
    8、列出已安装的包(有两种方法)

    pip list (-o 查询可升级的包)

  Python生态工具、文本处理和系统管理(虚拟)

     pip freeze

  Python生态工具、文本处理和系统管理(虚拟)

     9、导出系统已安装的安装包列表到 requirements 文件
pip freeze > requirements.txt
    10、从requirements文件安装需要的包
pip install -r requirements.txt 
    11、使用pip命令补全
pip completion --bash >~/.profile
$ source ~/.profile
    12、下载包不安装
pip install <包名> -d <目录> 或 pip install -d <目录> -r requirements.txt
    13、打包
pip wheel <包名>
    14、升级指定的包(有两种方式)
pip install -U <包名>
或:pip install <包名> --upgrade
    15、升级pip
pip install -U pip

  2、加速pip安装的技巧

  使用Python时间比较长的话,会发现 Python 安装的一个问题,即 pypi.python.org 不是特别稳定,有时候会很慢,甚至处于完全不可用的状态。

    1、使用豆瓣或者阿里云的源加速软件安装

  我们国内目前有多个pypi镜像,推荐使用豆瓣的镜像源或阿里的镜像源。

国内的镜像源地址:
阿里:https://mirrors.aliyun.com/pypi/simple
豆瓣:http://pypi.douban.com/simple
中国科学技术大学:http://pypi.mirrors.ustc.edu.cn/simple/

  单次使用安装源:如果要使用第三方的源,只需要在安装时,通过 pip 命令的-i 选项指定镜像源即可。如下所示:(包名放置前后均可)

pip install -i http://pypi.douban.com/simple flask

  指定全局安装源

  在unix和macos,配置文件为:$HOME/.pip/pip.conf
  在windows上,配置文件为:%HOME%\pip\pip.ini

[global]
timeout = 6000
  index-url = http://pypi.douban.com/simple
文件内容

相关文章:

  • 2022-02-10
  • 2021-08-24
  • 2021-06-14
  • 2022-12-23
  • 2021-11-01
猜你喜欢
  • 2021-08-30
  • 2021-12-05
  • 2022-02-10
  • 2021-10-11
  • 2022-02-10
  • 2022-01-21
相关资源
相似解决方案