python的学习笔记-python的生态工具(第一天)

python的学习笔记

第一天(2017-12-24)

python的生态工具

声明:本人是每天学习赖明星《python linux系统管理与自动化运维》一书后,整理成自己的笔记,如有需要,请购买作者正版书,谢谢。

1、1秒钟启动一个下载服务器:
Python2:python -m SimpleHTTPServer
python3:python -m http.server

2、字符串转换为json
[root@localhost ~]# echo '{"job":"developer","name":"Imx","sex":"male"}' |python -m json.tool
{
    "job": "developer",  
    "name": "Imx",  
    "sex": "male"
}
[root@localhost ~]# echo '{"address":{"province":"zhejiang","city":"hangzhou"},"name":"Imx","sex":"male"}' |python -m json.tool
{
    "address": {
        "city": "hangzhou",  
        "province": "zhejiang"
    },  
    "name": "Imx",  
    "sex": "male"
}

3、检查第三方库是否正确安装
1)交互式
[root@localhost ~]# python
Python 2.6.6 (r266:84292, Aug 18 2016, 15:13:37)  
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import paramiko
2)-c参数
[root@localhost ~]# python -c "import paramiko"

4、pip用法
pip是easy_install的替代品.
pip在epel源里面,所以需要下载epel源。
yum -y install epel-release
yum install python-pip
pip install -U pip 升级pip版本

1)、搜索安装包
pip search flask
2)、安装特定的安装包版本
pip install flask==0.8
3)、删除安装包
pip uninstall Werkzeug
4)、查看安装包的信息
pip show flask
5)检查安装包的依赖是否完整(pip 9.0.1提供的最新子命令)
pip check flask
6)、查看已安装的安装包列表
pip list
7)、导出系统已安装的安装包列表到requirements文件
pip freeze > requirements.txt
8)、从requirements文件安装
pip install -r requirements.txt  
9)、使用pip命令补全
pip completion  --bash >> ~/.profile
soure ~/.profile  
使用命令补全后,通过键入pip i,将会自动输入pip install

5、加速pip安装的技巧
1)、使用使用豆瓣或阿里云的源加速软件的安装
pip install -i https://pypi.douban.com/simple/ flask
每次都要指定镜像源地址比较麻烦,可以如下解决:
vim ~/.pip/pip.conf
[global]

2)、将软件下载到本地部署
#下载到本地
pip install --download='pwd' -r requirements.txt
或者
pip install --download='pwd' flask
ls就后可以看到下载到了当前目录,pip会自动处理依赖问题,即把依赖包也下载过来。
#本地安装
pip install --no-index -f   file://'pwd' -r requirements.txt
pip install --download='pwd' flask

6、代码补全插件
终于发现了一个插件,对于Vim下代码块的自动补全支持的很好。给大家推荐snipMate。 snipMate可以帮助您在vim上实现类似Textmate的功能,自动代码块的能力非常强大,而且代码块是可定制的。我们只需编辑~/.vim/snippets/目录下的*.snippets文件就可以根据自己的要求自动产生代码。
使用
下载snipMate,解压到你的Vim目录:~/.vim/
下载地址:http://www.vim.org/scripts/script.php?script_id=2540
建立测试文件:
[root@t-mysql01 .vim]# vim a.py
#!/bin/python
输入for后,再按tab键,会自动补全代码。

7、编辑提示插件jedi-vim
与snipmate不同的是,该插件更加智能,jedi-vim更亲切的称呼是编程提示,而不是代码补全插件。
安装方法:
环境: 
python 2.6以上 
vim >= 7.3
安装一个python插件的管理工具,vim-pathogen 或者 vundle,这里安装pathogen
mkdir -p ~/.vim/autoload ~/.vim/bundle && \
curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim
编辑 ~/.vimrc 文件,添加
execute pathogen#infect()
这里需要注意的是,如果vimrc文件中有包含
syntax on
filetype plugin indent on
等语句,那么就要把上面的语句放在这些之前,比如下面这样:
execute pathogen#infect()
syntax on
filetype plugin indent on

安装jedi
pip install jedi
获取jedi-vim
cd ~/.vim/bundle/ && git clone --recursive https://github.com/davidhalter/jedi-vim.git
9k=



8、语法检查和高亮插件
Syntastic 是 Vim 用来检验语法的插件,通过外部语法校验器校验文件并将错误呈现给用户。该过程可以在需要时进行,或者在文件保存的时候自动进行。”该插件 官方文档 如是说。“如果检测到语法错误就会提示用户,因为不用编译代码或者执行脚本就可以知道语法错误,用户也就乐享与此了。”
安装过程和第一部分提到的方法类似,你只需要运行下列命令即可:
cd ~/.vim/bundle/
git clone https://github.com/scrooloose/syntastic.git
一旦你成功安装这个插件(即上述命令执行成功),你就不需要进行任何配置了——当 Vim 启动时会自动加载这个插件。
现在,打开一个源码文件并用 :w Vim 命令保存即可使用这个插件了。等待片刻之后,如果在源码中有语法错误的好,就会高亮显示出来。


9、vim 设置 python 自动缩进
在Vim中设置python的自动缩进:
a)、编辑vimrc文件: 输入命令
vim /etc/vim/vimrc/
b)、贴入如下代码 保存即可(测试基本上可以 if好像有点问题)
set filetype=python
au BufNewFile,BufRead *.py,*.pyw setf python
set autoindent " same level indent
set smartindent " next level indent
set expandtab
set tabstop=4
set shiftwidth=4
set softtabstop=4


10、使用ipython交互式编程
1)、更好的编辑器
yum install ipython
#ipython
In [10]: line = "Mysql slave binlog position: master host '10.173.33.35', filename 'mysql-binlog0002',position '43242343243'"

In [11]: line.split("'")
Out[11]:  
['Mysql slave binlog position: master host ',
'10.173.33.35',
', filename ',
'mysql-binlog0002',
',position ',
'43242343243',
'']

In [12]: host = line.split("'")[1]
In [13]: print host
10.173.33.35

In [18]: filename = line.split("'")[3]
In [19]: print filename
mysql-binlog0002

In [21]: position = line.split("'")[5]
In [22]: print position
43242343243

In [25]: print (host,filename,position)
('10.173.33.35', 'mysql-binlog0002', '43242343243')

In [27]: position = int(position)

In [28]: type(position)
Out[28]: int

In [29]: print (host,filename,position)
('10.173.33.35', 'mysql-binlog0002', 43242343243)

2)、更好的获取帮助信息
In [30]: import os
In [32]: ?os.path.is*
os.path.isabs
os.path.isdir
os.path.isfile
os.path.islink
os.path.ismount

In [33]: os.path.isfile?
Type:      function
String Form:
File:      /usr/lib64/python2.6/genericpath.py
Definition: os.path.isfile(path)
Docstring:  Test whether a path is a regular file

In [35]: import json
In [36]: json.dump?
In [36]: json.dump??  //使用两个问号,获取的帮助信息更加全面,甚至包含函数的实现源码
In [39]: d = dict(a=1,b=2, c=3)
In [40]: json.dump?
In [42]: json.dumps(d)  //将字典转换成json字符串
Out[42]: '{"a": 1, "c": 3, "b": 2}'

除了使用问号的方式获取对象的帮助信息外,ipython还提供了另外的获取对象信息,可以分别获取对象的定义、文档和文件等。
In [43]: import json
In [44]: %pdef json
Object is not callable.

In [45]: %pdef json.dump
json.dump(obj, fp, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding='utf-8', default=None, **kw)


In [47]: %pfile json.dump
In [47]: %pdoc json.dump
In [49]: %pinfo json.dump

3)、magic函数
所有ipython提供的函数都以%开头,这些函数成为magic函数。

In [50]: %lsmagic 或者%来获取所有的magic函数。
In [51]: %save?  //查看magic函数的帮助信息

4)、与操作系统交互
可以使用%ls %pwd等执行linux下的命令,或者!ls !cd这样也可以执行linux下的命令。

也可以通过赋值的方式捕获命令测输出:
In [7]: data = !df -h
In [9]: data
Out[9]:  
['Filesystem      Size  Used Avail Use% Mounted on',
'/dev/sda3        96G  3.9G  88G  5% /',
'tmpfs          1000M  68K 1000M  1% /dev/shm',
'/dev/sda1      477M  41M  411M  9% /boot']

11、jupyter notebook的使用
[root@localhost ~]# pip install jupyter
如果报 Python.h: No such file or directory,可以 yum install python-devel来解决。
 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28916011/viewspace-2149250/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28916011/viewspace-2149250/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python学习笔记》是由皮大庆编写的一本关于Python语言学习的教材。在这本书中,作者详细介绍了Python语言的基础知识、语法规则以及常用的编程技巧。 首先,作者简要介绍了Python语言的特点和优势。他提到,Python是一种易于学习和使用的编程语言,受到了广大程序员的喜爱。Python具有简洁、清晰的语法结构,使得代码可读性极高,同时也提供了丰富的库和模块,能够快速实现各种功能。 接着,作者详细讲解了Python的基本语法。他从变量、数据类型、运算符等基础知识开始,逐步介绍了条件语句、循环控制、函数、模块等高级概念。同时,作者通过大量的示例代码和实践案例,帮助读者加深对Python编程的理解和应用。 在书中,作者还特别强调了编写规范和良好的编程习惯。他从命名规范、注释风格、代码缩进等方面指导读者如何写出清晰、可读性强的Python代码。作者认为,良好的编程习惯对于提高代码质量和提高工作效率非常重要。 此外,作者还介绍了Python的常用库和模块。他提到了一些常用的库,如Numpy、Pandas、Matplotlib等。这些库在数据处理、科学计算、可视化等领域有广泛的应用,帮助读者更好地解决实际问题。 总的来说,《Python学习笔记》是一本非常实用和全面的Python学习教材。通过学习这本书,读者可以系统地学习和掌握Python编程的基础知识和高级应用技巧,为以后的编程学习和工作打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值