
Python
文章平均质量分 71
ajaxuser
这个作者很懒,什么都没留下…
展开
-
使用getopt模块处理命令行选项
#!/usr/bin/env python #-*- coding:utf8 -*- import sys import getopt #函数getopt(args, shortopts, longopts=[]) """ 参数args一般是sys.argv[1:] shortopts 短格式 (-) longopts 长格式(--) 命令行中输入: python test.py -i 12原创 2012-11-29 16:29:41 · 728 阅读 · 0 评论 -
Python类的私有成员
#!/usr/bin/env python #-*- coding:utf8 -*- """ Python中类的成员函数、成员变量默认都是公开的(public), 而且Python中没有类似public、private等关键词来修饰成员函数,成员变量。 在python中定义私有成员只需要在变量名或函数名前加上"__"(两个下划线),那么这个函数或变量就变成私有的了。 在内部,pytho原创 2012-07-25 20:21:23 · 4422 阅读 · 0 评论 -
Python中的可变参数*args和**kwargs
#!/usr/bin/env python #-*- coding:utf8 -*- """ *args和**kwargs这两个参数是Python中的可变参数。 *args是一个tuple,表示任意多个无名参数(non-keyword arg); **kwargs是一个dict,表示任意多个关键字参数(keyword arg)。 同时使用*args和**kwargs时,必须*args参原创 2012-07-25 21:22:35 · 851 阅读 · 0 评论 -
Python对象的深复制与浅复制
简单点说 1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。 2. copy.deepcopy 深拷贝 拷贝对象及其子对象 用一个简单的例子说明如下: >>>import copy >>>a = [1, 2, 3, 4, ['a', 'b', 'c']] >>> b = a >>> c = copy.copy(a) >>> d = copy.deepcop转载 2012-07-23 13:51:47 · 1632 阅读 · 0 评论 -
python常见编码问题解决方法
1.文件编码 py文件默认是ASCII编码,是不支持中文的,即使注释是中文也不行,为了解决这个问题,就需要把文件编码类型改为UTF-8的类型。 可在文件开头加上如下代码: # -*- coding:utf-8 -*- 2.字符串编码 字符串在python内部的表示是unicode编码。 因此,在做编码转换时,通常需要将unicode作为中间编码。 先将其他编码的字符串解码(decod原创 2012-03-20 13:03:51 · 922 阅读 · 0 评论 -
python线程基础
线程状态 线程有5种状态,状态转换的过程如下图所示: 线程同步(锁) 多线程的优势在于可以同时运行多个任务(至少感觉起来是这样)。但是当线程需要共享数据时,可能存在数据不同步的问题。考虑这样一种情况:一个列表里所有元素都是0,线程"set"从后向前把所有元素改成1,而线程"print"负责从前往后读取列表并打印。那么,可能线程"set"开始改的时候,线程"print"便来打印列表转载 2012-03-16 23:19:19 · 650 阅读 · 0 评论 -
Django环境搭建
环境支持: Python Django MySQL MySQLdb Apache libapache2-mod-wsgi 创建Django项目 django-admin.py startproject mysite 创建并编写wsgi程序 vim mysite/apache/django.wsgi import os import sys sys.pat原创 2011-12-14 16:05:16 · 658 阅读 · 0 评论 -
python re module
正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎。 compile(pattern, flags=0) 编译一个正则表达式字符串,返回一个正则表达式对象. 第二个参数flag是匹配模式,取值可以使用按位或运算符'|'表示同时生效,比如re.I | re.M。 I(IGNORECASE): 忽略大小写(括号内是完整写法)。原创 2012-03-10 17:36:07 · 1053 阅读 · 0 评论 -
filter,map,reduce
首先看一下匿名函数lambda lambda的使用方法如下:lambda [arg1[,arg2,arg3,...,argn]] : expression >>> add = lambda x,y : x + y >>> add(1,2) 31、filter(bool_func,seq):此函数的功能相当于过滤器。调用一个布尔函数bool_func来迭代遍历每个seq中的元素;返回一个使boo转载 2012-03-07 00:06:30 · 578 阅读 · 0 评论 -
python socket编程
python 编写server的步骤: 1.第一步是创建socket对象。调用socket构造函数。如: socket = socket.socket( family, type ) family参数代表地址家族,可为AF_INET或AF_UNIX。AF_INET家族包括Internet地址,AF_UNIX家族用于同一台机器上的进程间通信。type参数代表套接字类型,可为SOCK_STREA转载 2012-01-10 14:10:29 · 690 阅读 · 0 评论 -
python多线程模块thread,threading,Queue
python通过两个标准库(thread, threading)提供了对多线程的支持 thread模块 import time import thread def runner(arg): for i in range(6): print str(i)+':'+arg time.sleep(1) #结束当前线程 thread.ex原创 2012-03-18 00:05:19 · 8644 阅读 · 0 评论