广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python实用小工具介绍
  • 538
分享到

python实用小工具介绍

小工具python 2023-01-31 06:01:20 538人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

一、秒级启动一个Http下载服务器在实际工作中,时不时会有这样的一个需求:将文件传给其他同事。将文件传给同事本身并不是一个很繁琐的工作,现在的聊天工具一般都支持文件传输。但是,如果需要传送的文件较多,那么,操作起来就会比较麻烦。此外,如果文

一、秒级启动一个Http下载服务器
在实际工作中,时不时会有这样的一个需求:将文件传给其他同事。将文件传给同事本身并不是一个很繁琐的工作,现在的聊天工具一般都支持文件传输。但是,如果需要传送的文件较多,那么,操作起来就会比较麻烦。此外,如果文件在远程的服务器上,你要将文件传给同事,则需要先将远程服务器的文件下载到本地,然后再通过聊天工具传给同事。再或者,你并不是特别清楚要传哪几个文件给同事,所以,你们需要进行来回的交流。交流的时间成本是比较高的,会降低办事效率。此时,你们需要更加高效的方法。这个时候,如果你知道python内置了一个下载服务器就能够显著提升效率了。例如,你的同事要让你传的文件位于某一个目录下,那么,你可以进入这个目录,然后执行下面的命令启动一个下载服务器:
本地有个一文件夹,想共享给局域网同事下载一些里面的文件,可以使用Python的如下命令。
• python2的用法如下:
python -m Simplehttpserver
python3的用法如下:
python3 -m http.server --cgi
以上两种方法默认端口8000,可以制定端口,例如指定端口45678:
python -m SimpleHTTPServer 45678
python3 -m http.server --cgi 45678
python实用小工具介绍
如果本机ip地址是10.10.40.112,同网段他人在浏览器输入10.10.40.112:45678访问共享文件夹内容
python实用小工具介绍
注:从工作原理角度来说,执行上面的命令,只是启动了一个Python内置的WEB服务器。如果当前目录下存在一个名为index.html的文件,则默认会显示该文件的内容;如果当前目录下不存在这样一个文件,则默认显示当前目录下的文件列表,也就是大家看到的下载服务器。
通过Python版FTP服务器方法
看到这里,默认你已经安装了Python,此处测试为python2.7版本
Python没有内置一个直接可以用的FTP服务器,所以需要第三方组件的支持,我找到的这个组件叫pyftpdlib,首先安装:
pip install pyftpdlib
安装完后,和HTTP服器类似,执行以下命令就可以启动一个FTP服务器了:
python -m pyftpdlib -p 21
python实用小工具介绍
后面的21端口依然是可选的,不填会随机一个,被占用的端口将跳过。在浏览器敲入本机地址:
ftp://主机ip:21
python实用小工具介绍
二、字符串转换为JSON
jsON是一种轻量级的数据交换格式,易于人类阅读和编写,同时也易于机器解析和生成。由于JSON的诸多优点,已经广泛使用在各个系统中,因此,我们经常会有将JSON字符串转换为JSON对象的需求。
例如,在笔者的工作过程中,我们的系统会调用底层服务的api,底层服务的API一般都是以JSON的格式返回,为了便于问题追踪,我们会将API返回的JSON转换为字符串记录到日志文件中。当需要分析问题时,就有可能需要将日志文件中的JSON字符串扣出来进行分析,这个时候,需要将一个JSON字符串转换为JSON对象以便于阅读。
这个需求是如此的常见,以至于使用搜索引擎搜索"JSON",处于搜索结果的第一项便是"在线JSON格式化工具"。除了打开浏览器,使用在线JSON格式化工具以外,我们也可以使用命令行终端的Python解释器来解析JSON串,如下所示:
$ echo '{"job": "developer", "name": "lmx", "sex": "male"}' | python -m json.tool {
"job": "developer", "name": "lmx", "sex": "male"
}
使用命令行解释器解析JSON串非常的方便,而且,为了便于阅读,该工具还会自动将转换的结果进行对齐和格式化,如下所示:
$ echo '{"address": {"province": "zhejiang", "city": "hangzhou"}, "name": "lmx", "sex": "male"}' | python -m json.tool {
"address": {
"city": "hangzhou", "province": "zhejiang"
}, "name": "lmx", "sex": "male"
}
三、检查第三方库是否正确安装
Yum install python-pip –y #安装python的pip包
Pip install paramiko #通过pip安装其他python包(此处pip相当于linux中的yum)
安装完Python的第三方库以后,如何确认这个库已经正确安装了呢?这个问题的答案很简单,只需要尝试进行import导入,如果导入没有任何错误,则认为安装成功了。
lmx@host1:~/temp$ python
Python 2.7.13 (default, Feb 10 2017, 20:22:22)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more infORMation.

import paramiko
验证Python的第三方库是否安装成功,本身也是一件很简单的事情,但是,如果我们使用脚本对大批量的服务器进行自动部署,又应该如何验证第三方库安装成功了呢?肯定不能登录每一台服务器进行验证,这个时候,我们可以使用Python解释器的-c参数快速的执行import语句,如下所示:
python -c "import paramiko"
使用这种验证方式,不但比交互式的验证更加高效,更重要的是,能够在脚本中实现对于远程服务器的验证操作。
四、使用Python解压zip压缩包
如果读者是一名具有关工作经验的工程师,一定遇到过要在Linux下解压zip格式压缩包的需求。Linux下一般都是用tar命令创建和读取压缩包,但是,tar命令并不支持zip格式的压缩包。为了读取zip格式的压缩包,需要使用unzip,而大部分操作系统都没有安装unzip,因此,每次需要在Linux下解压zip格式的压缩包都会比较麻烦。
除了安装unzip工具和编写Python脚本解压zip格式的压缩包以外,也可以使用zipfile模块提供了命令行接口。读者以后可以在Linux下,使用Python命令创建和解压zip格式的压缩包。zipfile模块提供的命令行接口包含以下几个选项:
• -l <zipfile> 显示zip格式压缩包中的文件列表
• -c 创建zip格式压缩包
• -e 提取zip格式压缩包
• -t 验证文件是一个有效的zip格式压缩包
下面的命令使用Python的zipfile模块提供的命令行接口,创建、查看和提取zip格式压缩包:
python -m zipfile -c monty.zip spam.txt eggs.txt
python -m zipfile -e monty.zip target-dir/
python -m zipfile -l monty.zip

总结:希望对大家有所帮助、能够提高大家的工作效率。

--结束END--

本文标题: python实用小工具介绍

本文链接: https://www.lsjlt.com/news/190501.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python实用小工具介绍
    一、秒级启动一个HTTP下载服务器在实际工作中,时不时会有这样的一个需求:将文件传给其他同事。将文件传给同事本身并不是一个很繁琐的工作,现在的聊天工具一般都支持文件传输。但是,如果需要传送的文件较多,那么,操作起来就会比较麻烦。此外,如果文...
    99+
    2023-01-31
    小工具 python
  • Android 实用工具之emulator介绍
    在android-sdk\tools目录下,有一个名为emulator.exe的可执行程序,望名知义,emulator即为仿真器或模拟器,但很多人可能会发现,通过AVD Man...
    99+
    2022-06-06
    工具 Android
  • 微信小程序开发工具介绍
    目录官方文档一、微信开发工具深入介绍下载开发工具1.1 大体介绍开发工具主要分四大块1.2 工具栏1.3编辑器1.4调试器编辑器总结官方文档 https://developers.w...
    99+
    2022-11-13
  • mydumper工具使用介绍
    背景:mysqldump mysqlpump mydumper 三种逻辑备份工具的比较 mysqlpump的介绍(转):http://www.cnblogs.com/zhoujinyi/p/5684903...
    99+
    2022-10-18
  • Python中常用的四种工具介绍
    本篇内容介绍了“Python中常用的四种工具介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Python作为粘合剂互不兼容的系统常常需要被...
    99+
    2023-06-17
  • 简单介绍我的开源小工具:SanicDB
    SanicDB 是为 Python的异步 Web 框架 Sanic 方便操作MySQL而开发的工具,是对 aiomysql.Pool 的轻量级封装。Sanic 是异步IO的Web框架,同时用异步IO读写MySQL才能更大发挥它的效率。虽然...
    99+
    2023-01-30
    开源 小工具 简单
  • 如何对Python工具进行介绍
    本篇文章为大家展示了如何对Python工具进行介绍,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。大多数开发经理几乎很少了解Python工具,在现代IT领域的高压力环境下,项目管理人员缺乏对Pytho...
    99+
    2023-06-17
  • Windows8系统自带的截图小工具介绍
    知识点分析: 1、系统下同时按住键盘上 Windows 和 F 键打开搜索菜单 ,点击应用。参见下图 2、在应用里面点击截图工具启动截图。参见下图 3、由于每次在应用里打开截图工具比较繁琐,可以...
    99+
    2022-06-04
    截图 小工具 系统自带
  • pt(Percona Toolkit)工具介绍
           pt(Percona Toolkit)工具介绍一.介绍1.找出重复的索引和外键    pt-duplicate-key-c...
    99+
    2022-10-18
  • MySQL 5.7 mysqldumpslow工具介绍
    mysqldumpslow工具可以用来归纳总结慢查询日志的信息。 MySQL慢查询日志包含执行时间较长的查询信息。mysqldumpslow工具可以解析MySQL慢查询日志文件并打印出他们内容的汇总信息...
    99+
    2022-10-18
  • Java工具集介绍12_09
    Java工具集介绍12_091)Java 6 for MacOSX版本发布如果你是一个Mac用户,现在就值得高兴了,开源社区刚刚解决了这个问题,把Java 6移植到苹果的系统中。2)UMLGraph新版本:UMLGraph 5.0UMLGr...
    99+
    2023-06-03
  • AndroidNativefdsan检测工具介绍
    目录正文一个fd由生到死的所有者tag组成tag的创建和检验过程正文 本文分析基于Android T(13) fdsan,全名为file descriptor sanitizer,...
    99+
    2023-02-10
    Android Native fdsan检测工具 Android Native
  • 介绍几款 Python 类型检查工具
    近日,微软在 Github 上开源了一个 Python 静态类型检查工具:pyright ,引起了社区内的多方关注。 微软在开源项目上的参与力度是越来越大了,不说收购 Github 这种大的战略野心,只说它家开源的 VS Code 编辑...
    99+
    2023-01-31
    几款 类型 工具
  • Win8应用商店管理小工具具体功能详细介绍
    Win8的 程序和管理 功能为啥不支持对App清理卸载,部分APP还不提供清理 缓存 功能,会导致系统盘越来越肥,有时候卸载不全的应用会无法重装,需要到PowerShell下进行操作,那串长长的Packag...
    99+
    2022-06-04
    详细介绍 小工具 商店
  • Python遗传算法Geatpy工具箱使用介绍
    目录一、 什么是遗传算法?二、 遗传算法库Geatpy2.1 遗传算法工具箱Geatpy参数介绍三、最佳实践3.1 代码示例 | 参数模板3.2 最佳实践一、 什么是遗传算法? 遗传...
    99+
    2022-11-11
  • win7系统右击桌面快捷小工具使用介绍
    在Win7系统中,右击桌面可以访问快捷小工具,这些小工具可以帮助你快速访问一些常用的功能或者进行一些操作。以下是几个常用的快捷小工具...
    99+
    2023-09-02
    Win7
  • oracle管理工具的介绍
    oracle管理工具的介绍(1)===================================================================sql*plus是oracle自带的工具...
    99+
    2022-10-18
  • java的Guava工具包介绍
    集合 普通集合 List<String> list = Lists.newArrayList(); Set<String> set = Sets.newH...
    99+
    2022-11-12
  • BeanUtils工具类的介绍和使用
    BeanUtils是Apache Commons BeanUtils库中的一个工具类,用于简化JavaBean之间的属性复制。它提供...
    99+
    2023-09-21
    BeanUtils
  • PostgreSQL工具pgAdmin的介绍及使用
    目录1. pgAdmin的介绍2. pgAdmin的使用1. pgAdmin的介绍 pgAdmin 4是一款专门针对PostgreSQL数据库的客户端管理软件,该版本在pgAdmin 3的基础上做了较大的架构变化,由之前...
    99+
    2022-07-14
    pgAdmin使用
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作