![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python
文章平均质量分 66
yidangui
这个作者很懒,什么都没留下…
展开
-
Python字符串的encode与decode研究心得乱码问题解决方法
为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”?本文就来研究一下这个问题。字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符转载 2013-01-28 14:20:08 · 507 阅读 · 0 评论 -
Python函数式编程指南(一):概述
这大概算是Python最难啃的一块骨头吧。在我Python生涯的这一年里,我遇到了一些Pythoner,他们毫无例外地完全不会使用函数式编程(有些人喜欢称为Pythonic),比如,从来不会传递函数,不知道lambda是什么意思,知道列表展开但从来不知道用在哪里,对Python不提供经典for循环感到无所适从,言谈之中表现出对函数式风格的一种抗拒甚至厌恶。我尝试剖析这个问题,最终总结了这么转载 2013-02-18 11:33:45 · 301 阅读 · 0 评论 -
Python函数式编程指南(二):函数
这是此系列的第二篇,试图说明在Python中如何更好地使用函数并引导诸位使用函数式的思维进行思考。掌握并应用这些内容,就已经是至少形似的函数式风格的代码了,至于思维么,这个真靠自己。作者水平有限,如有错漏之处还请指出;转载请注明原作者和原地址:)2. 从函数开始 2.1. 定义一个函数 如下定义了一个求和函数:?12def转载 2013-02-18 11:34:34 · 350 阅读 · 0 评论 -
Python多线程基础
http://www.17jo.com/program/python/app/ThreadUse.html1. Python多线程基础 Python多线程编程,当程序需要同时并发处理多个任务时,就需要要使用多线程编程。继承线程类threading.thread,再重载成员函数run,程序处理的代码写在函数run中,最后再调用start()方法来运转载 2013-02-28 17:57:52 · 397 阅读 · 0 评论 -
Python解析XML简单介绍
1. 自己保存为free.xml[html] view plaincopyxml version='1.0' encoding='utf-8'?> feed xmlns='http://www.w3.org/2005/Atom' xml:lang='en'> title>dive into marktitle> su转载 2013-02-28 18:21:14 · 388 阅读 · 0 评论 -
Python多线程编程方式2 threading库的介绍
http://www.cnblogs.com/huxi/archive/2010/06/26/1765808.htmlPython多线程编程方式2 threading库的介绍1. threading# 返回当前的线程变量。threading.currentThread()# 返回一个包含正在运行的线程的list。# 正在运行指转载 2013-02-28 18:20:08 · 659 阅读 · 0 评论 -
Python Eric4安装配置
如果在eric里遇到中文问题 加上这个“ # -*- coding: UTF-8 -*- ”我是在Windows下安装的,安装过程并没有网上别人说的那样麻烦,而是一部到位的。1. 安装pyqt4因为在Windows下,我直接选择了二进制安装版本,省事那。。 地址:http://www.riverbankcomputing.co.uk/softw原创 2013-03-01 16:16:52 · 618 阅读 · 0 评论 -
python+PyQT+Eric安装配置补充
一、大纲内容:1、预备PC环境:2、预备安装程序:2、1、下载Python3.22、2、下载PyQt42、3、下载Eric53、安装配置步骤:3、1、安装Pyhon3.23、2、安装PyQt43、3、安装Eric54、制作一个Demo: 4、1、用Eric创建Demo项目 4、2、在Demo项目原创 2013-03-01 16:55:09 · 601 阅读 · 0 评论 -
Python:使用threading模块实现多线程编程二[两种方式起线程]
在Python中我们主要是通过thread和threading这两个模块来实现的,其中Python的threading模块是对thread做了一些包装的,可以更加方便的被使用,所以我们使用threading模块实现多线程编程。一般来说,使用线程有两种模式,一种是创建线程要执行的函数,把这个函数传递进Thread对象里,让它来执行;另一种是直接从Thread继承,创建一个新的class,把线程执行的转载 2013-03-22 16:56:53 · 922 阅读 · 0 评论 -
Python:使用threading模块实现多线程编程七[使用Condition实现复杂同步]
目前我们已经会使用Lock去对公共资源进行互斥访问了,也探讨了同一线程可以使用RLock去重入锁,但是尽管如此我们只不过才处理了一些程序中简单的同步现象,我们甚至还不能很合理的去解决使用Lock锁带来的死锁问题。所以我们得学会使用更深层的解决同步问题。 Python提供的Condition对象提供了对复杂线程同步问题的支持。Condition被称为条件变量,除了提供与Lock转载 2013-03-22 17:00:04 · 759 阅读 · 0 评论 -
Python线程指南
本文介绍了Python对于线程的支持,包括“学会”多线程编程需要掌握的基础以及Python两个线程标准库的完整介绍及使用示例。 注意:本文基于Python2.4完成,;如果看到不明白的词汇请记得百度谷歌或维基,whatever。 尊重作者的劳动,转载请注明作者及原文地址 >.1. 线程基础1.1. 线程状态线程有5种状态,状态转换的过程如下图所示:1.2. 线程转载 2013-02-18 11:20:49 · 274 阅读 · 0 评论 -
Python函数式编程指南(三):迭代器
这一篇我们将讨论迭代器。迭代器并不是函数式编程特有的东西,但它仍然是函数式编程的一个重要的组成部分,或者说是一个重要的工具。转载请注明原作者和原文地址:) 3. 迭代器 3.1. 迭代器(Iterator)概述 迭代器是访问集合内元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素都被访问一遍后结束。 迭代器不能回退,只能往前进行迭代。这并不是什么很大的缺点转载 2013-02-18 11:35:10 · 296 阅读 · 0 评论 -
Python装饰器实例:调用参数合法性验证
之前有说过有空的话我会整理一个用于检查参数类型的装饰器的源代码放上来,那么。。过了好一阵子才完成,因为公司里的代码不方便不出来,所以这个模块完全是现敲的,尽管有一些简单的测试,但我无法保证100%没有问题。放上来的目的更多的是分享一下应用装饰器的思路:)python是不带静态检查的动态语言,有时候需要在调用函数时保证参数合法。检查参数合法性是一个显著的切面场景,各个函数都可能有这个需求。但转载 2013-02-18 11:31:37 · 411 阅读 · 0 评论 -
python 获取文件列表(或是目录例表)
import os os.os.listdir(path) 然后再一个一个的分析文件和目录 通过和dos命令dir的巧妙结合,可以很轻松的做到这点,看示例 获取目录下所有文件方法 cmd = "dir /A-D /B" list_file = os.popen(cmd).readlines() cmd命令解释为 /A-D 选取所有的非目录文件列表 /B 只使用空格分隔开转载 2013-01-28 14:21:15 · 365 阅读 · 0 评论 -
python启动办公软件进程
#-*- coding:utf-8 -*- from win32com.client import Dispatch import time def start_office_application(app_name): # 在这里获取到app后,其它的操作和通过VBA操作办公软件类似 app = Dispatch(app_name) app.Visible = True转载 2013-01-28 14:22:10 · 464 阅读 · 0 评论 -
python 如何获取文件夹下所有的目录。
import osdef test( path ): for root, dirs, files in os.walk( path ): for fn in files: print root+'\\'+fntest(r'D:\tools') 打印的结果。>>>D:\tools\Serv-U10.3\Serv-U 10.3.exe转载 2013-01-16 10:17:54 · 366 阅读 · 0 评论 -
python执行多线程的实例
#-*- encoding: gb2312 -*-import threadingimport timefrom socket import *class MyThread(threading.Thread): def __init__(self,host,port,msg,BF): threading.Thread.__init__(self)转载 2013-01-16 10:19:32 · 352 阅读 · 0 评论 -
Python字符编码详解
本文简单介绍了各种常用的字符编码的特点,并介绍了在python2.x中如何与编码问题作战 :) 请注意本文关于Python的内容仅适用于2.x,3.x中str和unicode有翻天覆地的变化,请查阅其他相关文档。 尊重作者的劳动,转载请注明作者及原文地址 >.1. 字符编码简介1.1. ASCIIASCII(American Standard Code for Inform转载 2013-02-18 11:27:08 · 258 阅读 · 0 评论 -
Python装饰器与面向切面编程
新年好~ 那么,很久没有更新了,其实想想也没多少可以写的,因为Python的文档似乎很全面的说……能做的差不多只有翻译和整理了,英文过关的朋友不妨直接去doc.python.org这里查看相关资料 :)转载请注明原作者和原文地址,多谢!今天来讨论一下装饰器。装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志、性能测试、事务处理等。装饰器是解决这类问题的转载 2013-02-18 11:30:29 · 336 阅读 · 0 评论 -
Python函数式编程指南(四):生成器
生成器是迭代器,同时也并不仅仅是迭代器,不过迭代器之外的用途实在是不多,所以我们可以大声地说:生成器提供了非常方便的自定义迭代器的途径。这是函数式编程指南的最后一篇,似乎拖了一个星期才写好,嗯……转载请注明原作者和原文地址:)4. 生成器(generator)4.1. 生成器简介首先请确信,生成器就是一种迭代器。生成器拥有next方法并且行为与迭代器完全相同,这意味着生成器转载 2013-02-18 11:36:00 · 414 阅读 · 0 评论 -
Python自省(反射)指南
在笔者,也就是我的概念里,自省和反射是一回事,当然其实我并不十分确定一定以及肯定,所以如果这确实是两个不同的概念的话,还请多多指教 :) 转载请注明作者、出处并附上原文链接,多谢!update 2011-3-10: 更正函数的func_globals属性含义。 首先通过一个例子来看一下本文中可能用到的对象和相关概念。?123456转载 2013-02-18 11:29:41 · 230 阅读 · 0 评论 -
Python正则表达式指南
本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例。本文的内容不包括如何编写高效的正则表达式、如何优化正则表达式,这些主题请查看其他教程。注意:本文基于Python2.4完成;如果看到不明白的词汇请记得百度谷歌或维基,whatever。 尊重作者的劳动,转载请注明作者及原文地址 >.html1. 正则表达式基础转载 2013-02-18 11:24:56 · 229 阅读 · 0 评论 -
Python:使用threading模块实现多线程编程八[使用Event实现线程间通信]
使用threading.Event可以实现线程间相互通信,之前的Python:使用threading模块实现多线程编程七[使用Condition实现复杂同步]我们已经初步实现了线程间通信的基本功能,但是更为通用的一种做法是使用threading.Event对象。 使用threading.Event可以使一个线程等待其他线程的通知,我们把这个Event传递到线程对象中,Event默转载 2013-03-22 17:00:38 · 936 阅读 · 0 评论 -
Python进制互相转换(二进制、十进制和十六进制)
这是从网上搜索的一篇也的还可以的Python进制转换,收拾起来作为Python工具类留着。源地址:http://www.cnblogs.com/zhangpengshou/archive/2012/03/12/2392068.htmlPython代码#!/usr/bin/env python # -*- coding: utf-8 -*- # 2/10/16 bas转载 2013-03-22 17:02:11 · 2220 阅读 · 0 评论 -
os.walk()与os.path.walk()
os.walk()函数声明:walk(top,topdown=True,onerror=None)1>参数top表示需要遍历的目录树的路径2>参数topdown的默认值是"True",表示首先返回目录树下的文件,然后在遍历目录树的子目录.Topdown的值为"False"时,则表示先遍历目录树的子目录,返回子目录下的文件,最后返回根目录下的文件3>参数onerror的默认值是"转载 2013-09-18 18:25:37 · 729 阅读 · 0 评论 -
linux上安装MySQLdb
一,下载MySQLdb方法1,https://sourceforge.net/projects/mysql-python/方法2,wget http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz/download二,解压tar -z原创 2014-02-14 16:19:07 · 612 阅读 · 0 评论 -
使用setuptools在linux上安装python模块
1,安装setuptoolssudo yum install python-setuptools2,安装模块easy_install 模块名原创 2014-02-14 18:26:02 · 659 阅读 · 0 评论 -
Python 解析XML文件
Python文件: 复制代码代码如下:#parsexml.py #本例子参考自python联机文档,做了适当改动和添加 import xml.parsers.expat #控制打印缩进 level = 0 #获取某节点名称及属性值集合 def start_element(name, attrs): global level print转载 2014-07-16 17:30:40 · 691 阅读 · 0 评论 -
比较详细Python正则表达式操作指南(re使用)
就其本质而言,正则表达式(或 RE)是一种小型的、高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现。使用这个小型语言,你可以为想要匹配的相应字符串集指定规则;该字符串集可能包含英文语句、e-mail地址、TeX命令或任何你想搞定的东西。然後你可以问诸如“这个字符串匹配该模式吗?”或“在这个字符串中是否有部分匹配该模式呢?”。你也可以使用 RE 以各种方式转载 2014-07-16 17:28:53 · 514 阅读 · 0 评论 -
用notepad运行python
Notepad++ 是一个开源的文本编辑器,功能强大而且使用方便,一般情况下,Notepad++作为代码查看器,很方便,但是每次要运行的时候,总是需要用右键打开其他的IDE来编译和运行,总有些不方便。特别是像lua这种语言,在Eclipse中无法集成,因此运行的时候,总是不方便。我搜到了一个使用Notepad++作为编译器的方法,现在share给大家,:),还是很方便的。。。我先说下配置,转载 2014-08-20 18:19:11 · 1040 阅读 · 0 评论 -
如何安装.EGG文件
准备好蛋准备好工具安装工具:http://pypi.python.org/pypi/setuptools安装完成后在D:\Python27\Scripts文件夹中找到easy_install.exe, 在cmd中运行这个exe文件,将egg文件作为运行参数C:\Documents and Settings\10170660>C:\Python27转载 2014-09-01 18:45:47 · 3830 阅读 · 0 评论 -
http_load的安装使用
安装:wget http://www.acme.com/software/http_load/http_load-14aug2014.tar.gz原创 2014-09-17 16:52:12 · 2114 阅读 · 0 评论 -
Flask 教程连载
http://www.oschina.net/translate/the-flask-mega-tutorial-part-i-hello-world原创 2014-12-11 22:41:16 · 807 阅读 · 0 评论 -
python模块之smtplib: 用python发送SSL/TLS安全邮件
转载请注明原文出自 http://blog.csdn.net/zhaoweikid/ python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。smtp协议的基本命令包括: HELO 向服务器标识用户身份 MAIL 初始化邮件传输 mail from: RCPT 标识单个的邮件接收人;常在MAIL命令后面,可有多个转载 2013-08-27 12:53:04 · 736 阅读 · 0 评论 -
总结一下在Windows上安装MySQLdb
在使用Python操作MySQL数据库时,在window平台上安装MySQLdb模块时,你不得不面对各种“诡异”的问题,让你摸不着头脑,甚至一整天都被MySQLdb气着,以至于抛弃使用Python,这种错误,在自己刚开始接触Python出现过,当时真的很冒火!PS:其实现在的MySQL模块安装已经很简单,也不会出现过多的问题了,一般都是安装完MySQL-python-1.2.3.win32-p转载 2013-08-26 01:40:44 · 658 阅读 · 0 评论 -
Python version 2.7 required, which was not found in the registry
安装setuptools的时候,不能再注册表中识别出来python2.7在网上找了方法,仅作笔记,供下次使用 方法: 新建一个register.py 文件,把一下代码贴进去,保存(G盘) ## script to register Python 2.0 or later for use with win32all# and other转载 2013-08-23 14:37:03 · 491 阅读 · 0 评论 -
Python:使用threading模块实现多线程编程五[死锁的形成]
前一篇文章Python:使用threading模块实现多线程编程四[使用Lock互斥锁]我们已经开始涉及到如何使用互斥锁来保护我们的公共资源了,现在考虑下面的情况-- 如果有多个公共资源,在线程间共享多个资源的时候,如果两个线程分别占有一部分资源并且同时等待对方的资源,这会引起什么问题?死锁概念 所谓死锁: 是指两个或两个以上的进程在执行过程中,转载 2013-03-22 16:58:57 · 769 阅读 · 0 评论 -
Python:Dom生成XML文件(写XML)
在python中解析XML文件也有Dom和Sax两种方式,这里先介绍如何是使用Dom解析XML,这一篇文章是Dom生成XML文件,下一篇文章再继续介绍Dom解析XML文件。 在生成XML文件中,我们主要使用下面的方法来完成。主要方法 1、生成XML节点(node)Python代码createElement("node_na转载 2013-03-22 17:05:12 · 1038 阅读 · 0 评论 -
Python:使用threading模块实现多线程编程一[综述]
Python这门解释性语言也有专门的线程模型,Python虚拟机使用GIL(Global Interpreter Lock,全局解释器锁)来互斥线程对共享资源的访问,但暂时无法利用多处理器的优势。 在Python中我们主要是通过thread和 threading这两个模块来实现的,其中Python的threading模块是对thread做了一些包装的,可以更加方便的被使用,所转载 2013-03-22 16:56:04 · 638 阅读 · 0 评论 -
Python:使用threading模块实现多线程编程三[threading.Thread类的重要函数]
这篇文章主要介绍threading模块中的主类Thread的一些主要方法,实例代码如下:Python代码''''' Created on 2012-9-7 @author: walfred @module: thread.ThreadTest3 @description: ''' import threading class MyT转载 2013-03-22 16:57:36 · 847 阅读 · 0 评论