Python
文章平均质量分 62
Walter-Chen
每一个不曾起舞的日子,都是对生命的辜负。
展开
-
使用 Python 获取 Linux 系统信息
在本文中,我们将会探索使用Python编程语言工具来检索Linux系统各种信息。走你。 哪个Python版本? 当我提及Python,所指的就是CPython 2(准确的是2.7).我会显式提醒那些相同的代码在CPython 3 (3.3)上是不工作的,以及提供一份解释不同之处的备选代码。请确保你已经安装了CPython,在终端上输入python或者python3回车,然转载 2015-01-18 15:17:17 · 436 阅读 · 0 评论 -
像老大一样优化Python
“我们应该忘掉一些小的效率问题,在 97% 的情况下是这么说的:过早优化是万恶之源。” —— Donald Knuth 如果不首先想想这句Knuth的名言,就开始进行优化工作是不明智的。可是,你很快写出来加入一些特性的代码,可能会很丑陋,你需要注意了。这篇文章就是为这时候准备的。 那么接下来就是一些很有用的工具和模式来快速优化Python。它的主要目的很简单:尽快转载 2015-01-18 14:51:36 · 357 阅读 · 0 评论 -
一张图片入门Python
这个图太棒了,有编程基础的人一下子就了解 Python 的用法了。真正的 30 分钟上手。中文版,点击看大图英文版,点击看大图转载 2015-01-18 15:30:37 · 593 阅读 · 0 评论 -
Python 常用模块
在程序设计中,为完成某一功能所需的一段程序或子程序;或指能由编译程序、装配程序等处理的独立程序单位;或指大型软件系统的一部分。本文为你介绍了Python中的两种常用模块。os:这个模块包含普遍的操作系统功能。利用这个模块可以写出与平台无关的程序,比如就是使用os.sep可以取代操作系统特定的路径分割符。列举一些os模块中常用的方法:os.name:获取当前系统平台,转载 2015-01-18 15:31:36 · 388 阅读 · 0 评论 -
部署Python+Selenium2自动化测试环境
安装python扩展包是一个比较麻烦的事情,首先你需要找到合适版本的扩展包,比如要选择32位还是64位,要选择最新版本还是最适合的版本,更难的是,你根本不知道去哪里下载。setuptools工具,可以帮助你快速、简便的安装扩展库(扩展包)。 搭建Python+Selenium测试环境的过程,具体如下: 基础环境:windows 7 64bit 1、构建pytho原创 2015-04-26 14:01:56 · 567 阅读 · 0 评论 -
创业公司都在使用的3款Python库
Instavest上发表了一篇博文,文章分享了深受创业公司喜爱的3款Python库,该文章在Hacker News上引发了开发者的激烈探讨,如果你也对此感兴趣,不妨移步去看下。笔者将该文简译过来以分享给更多的开发者朋友。译文如下:1. Whitenoise只需简单地修改Config文件,用户就可以按自己的意图来以静态文件方式部署Web应用,而不必依赖于Nginx、亚马逊S3等转载 2015-07-07 17:20:49 · 394 阅读 · 0 评论 -
同一台机器安装多个python版本
python的各个版本是独立共存的,不相互冲突的。下面说下如何操作:windows版本下独自安装好python2.7.6 和 python3.3.3修改注册表: 打开->regedit HKEY_CLASSES_ROOT\Python.File\shell\open\command的默认值 修改为”C:\Python27\python.exe” “%1” %*(C:\Python27是我的P原创 2015-07-09 17:54:30 · 3416 阅读 · 0 评论 -
python 多行注释
python注释单行注释 单行注释用#,当然这是大家都知道的,那么多行注释怎么办呢,往下看多行注释 一般可以借助ide工具对每行进行注释,当然,我们也可以像其他语言一样,进行多行注释,那就是使用三对双引号或单引号,注意要单占一行,示例如下:'''print("hello") '''or"""print("hello")"""原创 2015-07-18 10:51:43 · 481 阅读 · 0 评论 -
Windows下安装Ulipad编辑器
UliPad 是一款很不错的国产 Python IDE,开发者是limodou。这个IDE本身就是用 Python+wxPython编写的,小巧,功能全,特别适合Python初学者。Ulipad 下载地址:http://code.google.com/p/ulipad/downloads/list作者主页:http://hi.baidu.com/limodou/homeUl转载 2015-01-18 15:36:32 · 416 阅读 · 0 评论 -
Python高效编程技巧
我已经使用Python编程有多年了,即使今天我仍然惊奇于这种语言所能让代码表现出的整洁和对DRY编程原则的适用。这些年来的经历让我学到了很多的小技巧和知识,大多数是通过阅读很流行的开源软件,如Django, Flask, Requests中获得的。 下面我挑选出的这几个技巧常常会被人们忽略,但它们在日常编程中能真正的给我们带来不少帮助。 1. 字典推导(Dictiona转载 2015-01-18 15:28:35 · 398 阅读 · 0 评论 -
设置 Sublime Text 的 Python 开发环境
最近,当我主要使用Python开发环境编辑的时候,我开始越来越多地用到Sublinme Text 2.这篇文章主要说明了能让Python的编程者使用更方便的一些设置和调整。 为何选择Sublime Text? 我以前一直是TextMate的忠实用户。这是一个轻量级的、开源的软件,作为OS X的本地应用,具有很好的Mac风格。不过,虽然TextMate是一个很棒的编辑器,有转载 2015-01-18 15:22:11 · 548 阅读 · 0 评论 -
Python状况:为什么PyPy是Python的未来?
Python 现在已经不仅仅是胶水脚本语言了. 不信?看看下面使用Python的成功案例:YouTube - 主要由 Python编写NASAIndustrial Light & Magic Runs - 电影公司OpenStackSage - 科学软件及其他 (SciPy, PythonXY)WEB框架 Django, Pyramid, bottle...修订控制系统其他不错的软件转载 2015-01-18 15:22:55 · 605 阅读 · 0 评论 -
使用Python开发windows桌面程序
一、开发前期准备 1. boa-constructor-0.6.1.bin.setup.exe #一个wxWidges的集成开发环境,简单如Delphi,可以直接拖拽控件,并且和其他集成环境不一样, #它不与集成开发环境的MainLoop冲突,用pythonwin,pyScripter都会冲突,典型报错就是运行第二次 #程序的时候,转载 2015-01-18 15:37:18 · 2242 阅读 · 0 评论 -
高级正则表达式技术(Python版)
正则表达式是从信息中搜索特定的模式的一把瑞士军刀。它们是一个巨大的工具库,其中的一些功能经常被忽视或未被充分利用。今天我将向你们展示一些正则表达式的高级用法。 举个例子,这是一个我们可能用来检测电话美国电话号码的正则表达式:1r'^(1[-\s.])?(\()?\d{3}(?(2)\))[-\s.]?\d{3}[-\s.]?\d转载 2015-01-18 14:19:19 · 260 阅读 · 0 评论 -
开始使用 Python 开发 Web 应用
Python是一个通用编程语言,并很快成为每个自重程序员宝库中的一个必需品。 Python中有数不清的Web框架,从基本的微小架构到完整的架构,它们自有各自的优点。那么你准备使用它来做一些web开发,但在探讨细节之前,让我们从头开始。 学习Python的基础 截至目前,Python有两个版本,2.7.5和3.3是目前Python的稳定版本。你选择哪个学习并不重转载 2015-01-18 15:01:39 · 489 阅读 · 0 评论 -
飞跃式发展的后现代Python世界
如果现代Python有一个标志性特性,那么简单说来便是Python对自身定义的越来越模糊。在过去的几年的许多项目都极大拓展了Python,并重建了“Python”本身的意义。 与此同时新技术的涌现侵占了Python的份额,并带来了新的优势:Go - ( Goroutines, Types, Interfaces )Rust - ( Traits, Speed, Types转载 2015-01-18 15:14:08 · 567 阅读 · 0 评论 -
你应该使用 Nginx + UWSGI
经过大量的实验(在 disqus.com和 getsentry.com上),我可以确切的说:uwsgi应该成为Python世界的标准。 把它和nginx结合,在基于 Python的Web应用程序上你能获得在线程(或非线程)之上更好的性能体验。 更新:忽略古老的说法“你给任何度量是慢”,我在这里说的请求是指后端节点,他们处理输入事件(从20KB到1MB大小的请求),在网络跳过数跳经过各转载 2015-01-18 15:20:18 · 426 阅读 · 0 评论 -
Python语言编程学习资料(电子书+视频教程)下载汇总
Python语言编程学习资料(电子书+视频教程)下载汇总:开发工具:Python语言集成开发环境 Wingware WingIDE Professional v3.2.12Python语言集成开发环境 Wingware WingIDE Professional v3.2.9.1高效Python/Django开发工具:JetBrains PyCharm v1.转载 2015-09-04 22:12:47 · 2673 阅读 · 0 评论 -
Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
去空格及特殊符号s.strip().lstrip().rstrip(',')复制字符串#strcpy(sStr1,sStr2)sStr1 = 'strcpy'sStr2 = sStr1sStr1 = 'strcpy2'print sStr2连接字符串#strcat(sStr1,sStr2)sStr1 = 'strcat'sStr2 = '转载 2015-09-04 22:06:02 · 748 阅读 · 0 评论 -
Python ImportError: cannot import name *
[root@company ~]# python /root/workspace/python/test/urllib.pyTraceback (most recent call last): File "/root/workspace/python/test/urllib.py", line 5, in from urllib2 import urlopen File原创 2015-09-13 23:23:59 · 9781 阅读 · 1 评论 -
Python Mock是什么
Mock这个词在英语中有模拟的这个意思,因此我们可以猜测出这个库的主要功能是模拟一些东西。准确的说,Mock是Python中一个用于支持单元测试的库,它的主要功能是使用mock对象替代掉指定的Python对象,以达到模拟对象的行为。简单的说,mock库用于如下的场景:假设你开发的项目叫a,里面包含了一个模块b,模块b中的一个函数c(也就是a.b.c)在工作的时候需要调用发送请求给特定的服务转载 2016-06-14 11:33:55 · 585 阅读 · 0 评论 -
Python 中如何创建 mock?
原文地址以下为译文今天我们来谈论下 mock 的使用。当然,请不要误会,这里的 mock 可不是嘲弄的意思。mock是一门技术,通过伪造部分实际代码,从而让我们能够验证剩余代码的正确性。现在我们将通过几个简单的示例演示 mock 在P ython测试代码中的使用,以及这项极其有用的技术是如何帮助我们改善测试代码的。为什么我们需要mock?当我们进行单元测试的时候,我转载 2016-06-14 11:40:38 · 917 阅读 · 0 评论 -
tornado异步的mock以及装饰器
mock非常适合写单元测试, 用它patch掉网络请求的返回值即可async_func.py#!/usr/bin/env python# -*- coding:utf-8 -*-import signalimport errnoimport tornado.genimport tornado.ioloopimport tornado.webimport tornado.h转载 2016-06-14 11:46:33 · 1415 阅读 · 0 评论 -
Python3 - 时间处理与定时任务
无论哪种编程语言,时间肯定都是非常重要的部分,今天来看一下python如何来处理时间和python定时任务,注意咯:本篇所讲是python3版本的实...无论哪种编程语言,时间肯定都是非常重要的部分,今天来看一下python如何来处理时间和python定时任务,注意咯:本篇所讲是python3版本的实现,在python2版本中的实现略有不同,有时间会再写一篇以便大家区分。1.计算明转载 2016-06-30 11:46:30 · 5266 阅读 · 0 评论 -
Python单元测试经验总结
python写单元大多数都会用到unittest和mock,测试代码覆盖率都会用到coverage,最后再用nose把所有的东西都串起来,这样每次出版本,都能把整个项目的单元测试都运行一遍。Unittestunittest就不详细介绍了,注意几点:测试类继承unittest.TestCase测试类、测试方法名字最好以test开头,很多工具能根据名字来自动运行,很方便转载 2016-06-17 11:05:17 · 595 阅读 · 0 评论 -
Python模块学习——logging
logging模块是在2.3新引进的功能,下面是一些常用的类和模块级函数模块级函数logging.getLogger([name]):返回一个logger对象,如果没有指定名字将返回root loggerlogging.debug()、logging.info()、logging.warning()、logging.error()、logging.cri转载 2016-06-20 16:49:37 · 366 阅读 · 0 评论 -
Python模块学习——os
os.sep 可以取代操作系统特定的路径分割符。 os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。 os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。 os.getenv()和os.putenv()函数分别用来读取和设置环境变量。转载 2016-06-20 16:51:11 · 366 阅读 · 0 评论 -
Python模块学习——re
Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。Python 1.5之前版本则是通过 regex 模块提供 Emecs 风格的模式。Emacs 风格模式可读性稍差些,而且功能也不强,因此编写新代码时尽量不要再使用 regex 模块,当然偶尔你还是可能在老代码里发现其踪影。 就其本质而言,正则表达式(或 RE)是一种小型的、高度专业化的编程语转载 2016-06-20 16:52:10 · 434 阅读 · 0 评论 -
Python yield 使用浅析
初学 Python 的开发者经常会发现很多 Python 函数中用到了 yield 关键字,然而,带有 yield 的函数执行流程却和普通函数不一样,yield 到底用来做什么,为什么要设计 yield ?本文将由浅入深地讲解 yield 的概念和用法,帮助读者体会 Python 里 yield 简单而强大的功能。您可能听说过,带有 yield 的函数在 Python 中被称之为转载 2016-06-27 14:07:29 · 295 阅读 · 0 评论 -
Python 方法调用机制
1.介绍这份指南是几个月内最有价值的Blog投稿精华。它的主题是向大家讲述Python中的神奇方法。何为神奇方法呢?它们是面向Python中的一切,是一些特殊的方法允许在自己的定义类中定义增加“神奇”的功能。它们总是使用双下划线(比如__init__或__lt__),但它们的文档没有很好地把它们表现出来。所有这些神奇方法都出现在Python的官方文档中,但内容相对分散,组织结构也显得松散。转载 2016-06-02 19:06:05 · 1020 阅读 · 0 评论 -
python requests的安装与简单运用
强烈推荐!requests官方文档已有了中文版,请见http://cn.python-requests.org/en/latest/ 。requests是python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢?官方文档中是这样说明的:python的标准库urllib2提供了大部分需要的HTTP功能,但是AP转载 2015-09-08 16:06:49 · 366 阅读 · 0 评论 -
windows下面安装Python和pip终极教程
个人很喜欢Python的语言风格,但是这门语言对于windows并不算很友好,因为如果是初学者在windows环境下安装,简直是折磨人,会遇到各种蛋疼的情况。本文希望提供傻瓜式的教程,能够令读者成功安装Python和pip。第一步,我们先来安装Python,博主选择的版本是最新的3.4.2版本。windows下面的Python安装一般是通过软件安装包安装而不是命令行,所以我们首先要在Pyt转载 2015-09-13 20:21:21 · 488 阅读 · 0 评论 -
Python爬虫入门之Beautiful Soup的用法
1. Beautiful Soup的简介简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据。官方解释如下:Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。Beauti转载 2015-09-12 15:05:20 · 1208 阅读 · 0 评论 -
解决UnicodeEncodeError: 'ascii' codec can't encode characters in position问题
把一个列表转换成字符串输出的时候出现了UnicodeEncodeError: 'ascii' codec can't encode characters in position 32-34: ordinal not in range(128)问题解决方法1:在开头加上import sysreload(sys)sys.setdefaultencoding( "utf-8" )转载 2015-10-09 20:50:30 · 815 阅读 · 0 评论 -
Python中用json.loads解码字符串出错:ValueError: No JSON object could be decoded
原文链接:http://www.crifan.com/python_json_loads_valueerror_no_json_object_could_be_decoded/【问题】折腾:【未解决】Python中使用json.loads解码字符串时出错:ValueError: Expecting property name: line 1 column 1 (char转载 2015-10-09 20:54:16 · 27732 阅读 · 1 评论 -
Mac 安装HTMLTestRunner模块
1、下载HTMLTestRunner.py文件下载地址http://tungwaiyip.info/software/HTMLTestRunner.html2、python在mac下第三方非标准库模块存放位置为:/Library/Python/2.7/site-packages查看方式:$ pythonPython 2.7.10 (default, Oct 23 2015, 1原创 2016-01-21 14:49:52 · 4379 阅读 · 1 评论 -
MAC安装chromedriver提示“Message: 'chromedriver' executable needs to be in PATH.Please see ...”
很明显此问题是路径错误,解决方法如下:下载chromedriver安装包:https://sites.google.com/a/chromium.org/chromedriver/downloads然后解压移动到目录/usr/local/bin命令如下:$unzip chromedriver_map32.zip $mv chromedriver /usr/local/bin原创 2016-01-05 19:14:50 · 13258 阅读 · 0 评论 -
查找列表中某个值的位置(python)
p=list.index(value)list为列表的名字value为查找的值p为value在list的位置 以下内容引自:http://www.linuxidc.com/Linux/2012-01/51638.htmPython3.2.2列表操作总结list操作:快速创建list、新增item、删除item、重新赋值item、颠倒item顺转载 2016-05-17 15:51:56 · 3257 阅读 · 0 评论 -
Python模块学习——optparse
Python 有两个内建的模块用于处理命令行参数:一个是 getopt,《Deep in python》一书中也有提到,只能简单处理 命令行参数;另一个是 optparse,它功能强大,而且易于使用,可以方便地生成标准的、符合Unix/Posix 规范的命令行说明。示例下面是一个使用 optparse 的简单示例:from optparse impo转载 2016-06-20 16:42:01 · 427 阅读 · 0 评论 -
Python 代码性能优化技巧
选择了脚本语言就要忍受其速度,这句话在某种程度上说明了 python 作为脚本的一个不足之处,那就是执行效率和性能不够理想,特别是在 performance 较差的机器上,因此有必要进行一定的代码优化来提高程序的执行效率。如何进行 Python 性能优化,是本文探讨的主要问题。本文会涉及常见的代码优化方法,性能优化工具的使用以及如何诊断代码的性能瓶颈等内容,希望可以给 Python 开发人员一定的转载 2015-01-18 13:52:14 · 359 阅读 · 0 评论