python,,经常接触Python


经常接触Python的同学可能会注意到,当需要安装第三方python包时,可能会用到easy_install命令。easy_install是由PEAK(Python Enterprise Application Kit)开发的setuptools包里带的一个命令,所以使用easy_install实际上是在调用setuptools来完成安装模块的工作。
Perl 用户比较熟悉 CPAN,而 Ruby 用户则比较熟悉 Gems;引导 setuptools 的 ez_setup 工具和随之而生的扩展后的 easy_install 与 “Cheeseshop”(Python Package Index,也称为 “PyPI”)一起工作来实现相同的功能。它可以很方便的让您自动下载,编译,安装和管理Python包。

yaml在python上的具体实现:PyYaml
YAML被很多人认为是可以超越xml和json的文件格式。对比xml,除了拥有xml的众多优点外,它足够简单,易于使用。而对于json,YAML可以写成规范化的配置文件(这我认为是高于json很多的优点,用json写配置文件会让人发疯)。

任何转义失效的地方都可能发生注入。幸运的是,许多框架(至少有Pyramid和Flask)使用了markupsafe库,它能智能地帮助避免这个问题。
markupsafe提供一个单一的类, Markup ,继承自 unicode . Markup(u‘Hello!‘) ,会产生一个行为上相当像字符串的对象。类方法 Markup.escape 工作方式相同,但会转义经过包裹的字符串中的任意HTML字符。

Jinja2是基于python的模板引擎,功能比较类似于于PHP的smarty,J2ee的Freemarker和velocity。 它能完全支持unicode,并具有集成的沙箱执行环境,应用广泛。jinja2使用BSD授权。
果然,还是需要用到模板,不能总是直接在Response中写上长串的html代码。
python中的模板引擎主要有mako, genshi, jinjia等。
mako 主要特点在于模板里面 可以比较方便的嵌入Python代码,而且执行效率一流;
genshi 的特点在于基于 xml, 非常简单易懂的模板语法,对于热爱xhtml的朋友来说是很好的选择,同时也可以嵌入Python 代码,实现一些复杂的展现逻辑;
jinja 和 genshi 一样拥有很简单的模板语法,只是不 依赖于 xml 的格式,同样很适合设计人员直接进行模板的制作,同时也可以嵌入Python 代码实现一些复杂的展现逻辑。

Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,而paramiko模块又依赖于pycrypto模块,因此要在Python中使用SSH,则需要先安装模块顺序是:pycrypto -> ecdsa -> paramiko
看很多博客没有提到这个库,但我执行paramiko时,提示找不到ecdsa模块。

在python中,我理解的simplejson模块就是主要用于将python数据类型转换为json类型。
控制服务器(Master)需要安装Python2.6/7,windows上无法使用ansible。被管理的服务器(Managed Node)需要安装Python2.4以上的版本,如果低于2.5,需要安装python-simplejson。
yum -y install python-simplejson

对于连接多台服务器,进行复杂的连接操作特别有帮助。批量操作机器
安装paramiko有两个先决条件,python和另外一个名为PyCrypto的模块。
通常安装标准的python模块,只需要在模块的根目录下运行:
python setup.py build
python setup.py install

python

相关内容

    暂无相关文章

评论关闭