一、快速启动一个web下载服务器

官方文档:https://docs.python.org/2/library/simplehttpserver.html

1)web服务器:使用SimpleHTTPServer,快速帮我们共享指定目录下内容。

  • 各种Linux发行版通常都内置了Python,故使用此方法非常方便。在其它OS(比如Windows)此方法也有效,但是要麻烦一些,必须先搭建Python环境。
  • SimpleHTTPServer是Python 2自带的一个模块,是Python的Web服务器。它在Python 3已经合并到http.server模块中。

SimpleHTTPServer有一个特性:

  • 如果待共享的目录下有index.html,那么index.html文件会被视为默认主页;
  • 如果不存在index.html文件,那么就会显示整个目录列表。

2)SimpleHTTPServer使用方法:

  1)进入待分享的目录
  2)执行命令python -m SimpleHTTPServer 端口号
   注意:不填端口号则默认使用8000端口。
  3)浏览器访问该主机的地址:http://IP:端口号/

示例:执行命令

在python2.x中:
[root@host130 ~]# python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port ...
192.168.31.86 - - [/Sep/ ::] "GET / HTTP/1.1" -

也可以指定某个端口;
[root@yanglt tmp]# python -m SimpleHTTPServer 80
Serving HTTP on 0.0.0.0 port 80 ...
118.199.86.147 - - [18/Sep/2018 21:43:25] "GET / HTTP/1.1" 200 -

在Python3.x中:
[root@host130 ~]# python -m http.server
Serving HTTP on 0.0.0.0 port (http://0.0.0.0:8000/) ...
192.168.31.86 - - [/Sep/ ::] "GET / HTTP/1.1" - 该下载服务器,默认端口号是8000
打开网页输入:http://192.168.31.77:8000

二、python 的包管理工具pip

官网指导:https://pip.pypa.io/en/latest/user_guide/
1、pip简介:

为了方便用户安装和管理第三方库和软件(ruby的gem,nodejs的npm),python也有自己的包管理工具pip。
默认情况下,Python 2.7.9+和Python 3.4以上的版本则内置了pip,无需安装直接可以使用。
如果没有安装,操作如下:

[root@host130 ~]# yum -y install python-pip
新版本升级:
[root@host130 ~]# pip install -U pip

2、pip的优点有:
pip的优点:
1)提供丰富的功能,其中竞争对手easy_install 则只支持安装,没有提供卸载和显示已安装列表的功能;
2)能够很好的支持虚拟化环境;
3)可以通过requirements.txt集中管理依赖
4)能够处理二进制格式(.whl)
5)是先下载够安装,安装失败会清理干净,不会留下中间状态

3.pip常用命令:

)查找安装包
[root@host130 tmp]# pip search flask
Flask-OrientDB (0.1) - A Flask extension for using )安装特定的安装包版本
[root@host130 ~]# pip install flask==0.8
Collecting flask==0.8 )删除安装包
[root@host130 ~]# pip uninstall Werkzeug
Uninstalling Werkzeug-0.14.: )查看安装包信息
[root@host130 ~]# pip show flask
Name: Flask
Version: 0.8
Summary: A microframework based on Werkzeug, Jinja2 and good intentions
Home-page: http://github.com/mitsuhiko/flask/
Author: Armin Ronacher
Author-email: armin.ronacher@active-.com
License: BSD
Location: /usr/lib/python2./site-packages
Requires: Werkzeug, Jinja2
Required-by:
[root@host130 ~]# )检查安装包的依赖是否完整
[root@host130 ~]# pip check flask
flask 0.8 requires werkzeug, which is not installed.
[root@host130 ~]#
)查看已安装的安装包列表
[root@host130 ~]# pip list )导出已安装的安装包列表到requirements文件
[root@host130 ~]# pip freeze > requirements.txt )从requirement文件安装
[root@host130 ~]# pip install -r requirements.txt )使用pip补全
[root@host130 ~]# pip completion --bash >> ~/.profile
[root@host130 ~]# source ~/.profile

4、pip的镜像源

国内源:
新版ubuntu要求使用https源,要注意。

清华:https://pypi.tuna.tsinghua.edu.cn/simple

阿里云:https://mirrors.aliyun.com/pypi/simple/

中国科技大学: https://pypi.mirrors.ustc.edu.cn/simple/

华中理工大学:https://pypi.hustunique.com/

山东理工大学:https://pypi.sdutlinux.org/

豆瓣:https://pypi.douban.com/simple/

)使用第三方源,如豆瓣和阿里云的源加速软件安装
[root@host130 ~]# pip install -i http://pypi.douban.com/simple/ flask
Looking in indexes: http://pypi.douban.com/simple/ )每次用i指定加速源比较麻烦。
Linux下,修改Linux下,修改 ~/.pip/pip.conf(没有就创建一个文件夹及文件。文件夹要加“.”,表示是隐藏文件夹)
内容如下:
[root@host130 ~]# mkdir -p ~/.pip/
[root@host130 ~]# vim ~/.pip/pip.conf
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com windows下:直接在user目录中创建一个pip目录,如:C:\Users\xx\pip,新建文件pip.ini。内容同上。 )下载到本地安装

三、python编辑器ipython

需要解决python2.7和python3.x兼容问题
[root@host130 ~]# yum -y install ipython #当然也可以通过[root@host130 ~]# pip install ipython
[root@host130 ~]# which ipython
/usr/bin/ipython
[root@host130 ~]#
[root@host130 ~]# ipython
Python 2.7. (default, Nov , ::)
Type "copyright", "credits" or "license" for more information. IPython 3.2. -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details. In []:

我们看到默认进入的是Python2.x

解决方法:

[root@host130 ~]# which ipython   #找到ipython的命令位置
/usr/bin/ipython
[root@host130 ~]cd /usr/bin/
[root@host130 bin]# cp ipython ipython3
[root@host130 bin]# vim ipython3
[root@host130 bin]# cat ipython3
#!/usr/bin/python3 #将原来的python2改为现在的python3
# This script was automatically generated by setup.py
if __name__ == '__main__':
from IPython import start_ipython
start_ipython()
[root@host130 bin]#
[root@host130 ~]# ipython3 #再次启动成功
Python 3.7.0rc1 (default, Sep , ::)
Type 'copyright', 'credits' or 'license' for more information
IPython 6.5. -- An enhanced Interactive Python. Type '?' for help. In []: 此时python2和python3同时存在:
[root@host130 ~]# ipython
Python 2.7. (default, Nov , ::)
Type "copyright", "credits" or "license" for more information. IPython 3.2. -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details. In []:

【Python 开发】第三篇:python 实用小工具的更多相关文章

  1. Python开发第三篇

    函数 一.函数参数传值 形参:函数在定义的时候给定的参数 实参:函数在运行时赋给的参数: def func(i):#i为定义时的参数,为形参 pass func(name)#name为运行时的参数,为 ...

  2. Python趣味实用小工具

    代码地址如下:http://www.demodashi.com/demo/12918.html python 趣味实用小工具 概述 用python实现的三个趣味实用小工具: 图片转Execl工具 , ...

  3. 批量下载网站图片的Python实用小工具(下)

    引子 在 批量下载网站图片的Python实用小工具 一文中,讲解了开发一个Python小工具来实现网站图片的并发批量拉取.不过那个工具仅限于特定网站的特定规则,本文将基于其代码实现,开发一个更加通用的 ...

  4. Python开发【第二篇】:初识Python

    Python开发[第二篇]:初识Python   Python简介 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏 ...

  5. Python开发【第一篇】:目录

    本系列博文包含 Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习编程的童鞋提供一点帮助!!! Python开发[第一篇]:目录 Python开发[第二篇]:初识Python ...

  6. 【0728 | 预习】第三篇 Python基础

    第三篇 Python基础预习 Part 1 变量 一.什么是变量? 二.为什么要有变量? 三.定义变量 四.变量的组成 五.变量名的命名规范 六.变量名的两种风格 Part 2 常量 Part 3 P ...

  7. Python开发【第一篇】:目录

    本系列博文包含Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习Python编程的朋友们提供一点帮助! .Python开发[第一篇]:目录 .Python开发[第二篇]:初始P ...

  8. python开发最受欢迎的十款工具

    python开发最受欢迎的十款工具 dreamyla3个月前 今天小编给正在学习python开发的朋友介绍十款最受欢迎的开发工具,因为在学习python开发过程中少不了IDE或者代码编辑器,想要提高开 ...

  9. 【神经网络与深度学习】【python开发】caffe-windows使能python接口使用draw_net.py绘制网络结构图过程

    [神经网络与深度学习][python开发]caffe-windows使能python接口使用draw_net.py绘制网络结构图过程 标签:[神经网络与深度学习] [python开发] 主要是想用py ...

  10. ANDROID开发实用小工具

    分享一些 Android开发中的实用小工具,你有发现好工具吗? 来这里分享一下呗 一.find bugs 静态检查工具 http://findbugs.sourceforge.net/ FindBug ...

随机推荐

  1. EF Core中Key属性相同的实体只能被跟踪(track)一次

    在EF Core的DbContext中,我们可以通过DbContext或DbSet的Attach方法,来让DbContext上下文来跟踪(track)一个实体对象,假设现在我们有User实体对象,其U ...

  2. EF Core 2.1 中的 Eager loading、Explicit loading和LazyLoading (转自MSDN)

    Entity Framework Core allows you to use the navigation properties in your model to load related enti ...

  3. 安装sqlserver2016出现的错误

    今天安装sharepoint 2016,projectserver 2016,在安装sqlserver2016的时候突然报错了,提示需要安装oracle java se, Rule “Oracle J ...

  4. 浮动产生的高度坍塌解决方法以及使用siblings()方法获取同级元素

    高度坍塌:如果一个没有设置高度div里的元素都是浮动元素,这个时候就可能产生高度坍塌,因为div的高度都是普通元素撑起来的,div里的元素浮动之后,元素就会脱离文档流,所以父级的div高度就可能为零, ...

  5. 大数据框架-Mapreduce过程

    1.Shuffle [从mapTask到reduceTask: Mapper -> Partitioner ->Combiner -> Sort ->Reducer] mapp ...

  6. hdu_5698_瞬间移动

    有一个无限大的矩形,初始时你在左上角(即第一行第一列),每次你都可以选择一个右下方格子,并瞬移过去(如从下图中的红色格子能直接瞬移到蓝色格子),求到第nn行第mm列的格子有几种方案,答案对100000 ...

  7. 怎么将oracle的sql文件转换成mysql的sql文件

    怎么将sql文件导入PowerDesigner中的方法(将oracle的sql文件转换成mysql的sql文件)呢? 怎么将xx.sql文件的数据库结构导入powerdesigner 的方法呢? 现讲 ...

  8. vue使用axios调用豆瓣API跨域问题

    最近做了一个vue小demo,使用了豆瓣开源的API,通过ajax请求时需要跨域才能使用.   封面.jpg 一.以下是豆瓣常用的开源接口: 正在热映 :https://api.douban.com/ ...

  9. linux服务器项目部署【完整版】

    之前总玩v8虚拟机,最近看到腾讯云学生套餐很实惠就租了个linux服务器搭一个项目,做下这个项目部署全记录,即为了方便以后查看,同时也分享下自己的经验,不足之处还请多多指教,废话不多说,直接开始!!! ...

  10. Java学习笔记十五:Java中的成员变量和局部变量

    Java中的成员变量和局部变量 一:成员变量: 成员变量在类中定义,用来描述对象将要有什么 成员变量可以被本类的方法使用,也可以被其他类的方法使用,成员变量的作用域在整个类内部都是可见的 二:局部变量 ...