摘要:#!/usr/bin/env pythonimport socketimport sys HOST,PORT="192.168.2.110",90sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)sock.connect((HOST,PORT)) def recv_all(obj,msg_length): raw_result = '' while True: if msg_length<=4096: data =obj.recv(msg_length) &n
2017年02月11日
socket-SSH模拟-server
摘要:#!/usr/bin/env pythonimport commandsimport timeimport SocketServerclass MyTCPHandler(SocketServer.BaseRequestHandler): def handle(self): print 'Got anew connection from',self.client_address while True: cmd = self.request.recv(1024).strip() &nb
分类:Python
2017年02月11日
socket-多线程并发-client
摘要:#!/usr/bin/env pythonimport socketimport sys HOST,PORT="192.168.2.110",99sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)sock.connect((HOST,PORT)) while True: data =raw_input('msg to send::').strip() if len(data) ==0:continue sock.sendall(data+"\n") received =sock.recv(1024) print&qu
分类:Python
2017年02月11日
socket-多线程并发-server
摘要:#!/usr/bin/env pythonimport SocketServerclass MyTCPHandler(SocketServer.BaseRequestHandler): def handle(self): print 'Got anew connection from',self.client_address while True: data =self.request.recv(1024).strip() if not data: &nbs
分类:Python
2017年02月11日
socket-阻塞模式-client
摘要:#!/usr/bin/env pythonimport socketHOST='192.168.2.110'PORT=9002c=socket.socket(socket.AF_INET,socket.SOCK_STREAM)c.connect((HOST,PORT)) while True: user_input =raw_input('msg to send::').strip() c.send(user_input) return_data=c.recv(1024) print'Received',return_datac.close()
分类:Python
2017年02月11日
socket-阻塞模式-server
摘要:实现了一对一的通信,如果另一个客户端来连接会阻塞(可以连接,但无法发送和接收数据)单进程串行执行#!/usr/bin/env pythonimport socketHOST='0.0.0.0'PORT= 9002s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.bind((HOST,PORT))s.listen(1) while True: conn,addr=s.accept() #accept()函数只接受一个用户连接,另一个用户连接会阻塞&
分类:Python
2017年02月11日
socket-实例2-client
摘要:#!/usr/bin/env pythonimport socketHOST='192.168.2.110'PORT='50007's=socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.connect((HOST,PORT)) s.sendall('Hello,world') #发送数据到server端data= s.recv(1024) #收server端发过来的数据s.close()print 'Received',repr(data)
分类:Python
2017年02月11日
socket-实例1-server
摘要:#!/usr/bin/env pythonimport socketHOST=''PORT= 50007s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.bind((HOST,PORT))s.listen(1)conn,addr=s.accept() #只接收一个客户端的连接 #conn客户端连接过来的实例 #addr客户端的IP地址 print 'Connectedby',addrwhile 1:
分类:Python
2017年02月11日
文档字符串
摘要:[root@localhostpython]# cat foo.py#!/usr/bin/env python"""foo.py--sample module demonstrating documentation strings"""class Foo(object): """Foo() -empty class ... to bedeveloped"""def bar(x): """bar(x) -function docstring for b
分类:Python
2017年02月11日
__builtin__与__builtins__
摘要:在学习Python时,很多人会问到__builtin__、__builtins__和builtins之间有什么关系。百度或Google一下,有很多答案,但是这些答案要么不准确,要么只说了一点点,并不全面。本文将给大家一个较为全面的答案。以下结果是经过本人试验过的(测试环境:Linux Mint 14, Python2.7.3和Python3.2.3),并参考了Python的邮件列表。在Python中,有一个内建模块,该模块中有一些常用函数;
分类:Python
2017年02月11日
深拷贝deepcopy与浅拷贝copy
摘要:Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块。1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。2. copy.deepcopy 深拷贝 拷贝对象及其子对象一个很好的例子:import copya = [1, 2, 3, 4, ['a', 'b']] #原始对象 b = a #赋值,传对象的引用c = copy.copy(a) #对象拷贝,浅拷贝d = copy.deep
分类:Python
2017年02月11日
strip()
摘要:函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm) 删除s字符串中开头、结尾处,位于 rm删除序列的字符 s.lstrip(rm) 删除s字符串中开头处,位于 rm删除序列的字符 s.rstrip(rm) 删除s字符串中结尾处,位于 rm删除序列的字符
分类:Python
2017年02月11日
python文件处理函数
摘要:python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()返回指定目录下的所有文件和目录名:os.listdir()函数用来删除一个文件:os.remove()删除多个目录:os.removedirs(r“c:\python”)检验给出的路径是否是一个文件:os.path.isfile()检验给出的路径是否是一个目录:os.path.isd
分类:Python
2017年02月11日
文件创建,追加内容,关闭
摘要:创建文件:>>> file('test.txt','w') #如果文件不存在,以w形式打开会创建文件<open file 'test.txt', mode 'w' at 0x7f1111597660> #向文件中写入内容>>> f=file('test.txt','w')>>> f.write('Today is a good day') &nb
分类:Python
2017年02月11日
装饰器-3
摘要:[root@node110 decorator]# cat temp_decorator.py #!/usr/bin/env pythonimport timedef time_counter(func): def wrapper(): start =time.time() func() end =time.time() print 'Thisfunction costs:',end-start return wrapper #sayhi=time_counter(sayhi)#sayhi()@time_
分类:Python
2017年02月11日
装饰器-2
摘要:[root@node110 decorator]# cat temp.py #!/usr/bin/env pythonimport timedef sayhi(): print 'hi yoursister...' time.sleep(0.1) def time_counter(func): def wrapper(): start =time.time() func() end =time.time() print 'Thisfunction costs:',end-start retur
分类:Python
2017年02月11日
装饰器-1
摘要:查看函数的执行时间:[root@node110 decorator]# cat exec_time.py #!/usr/bin/env pythonimport timedef sayhi(): start=time.time() print 'hi yoursister...' time.sleep(0.1) end= time.time() print 'Thisfunction costs:',end-start sayhi()
分类:Python
2017年02月11日
Python 与 Mysql交互
摘要:Python 与Mysql交互#!/usr/bin/envpythonimport MySQLdbtry: conn = MySQLdb.connect(host='192.168.198.110',user='root',passwd='123456',port=3306,db='mysql') cur=conn.cursor() cur.execute('select user,host,password frommysql.user') qur_result=cur.fetchall() for record in qur_result: print record cur.
分类:Python
2017年02月07日
Python-集合类型
摘要: 集合类型 把 set 称做由不同的元素组成的集合,集合(set)的成员通常被称做集合元素(set elements)。Python 把这个概念引入到它的集合类型对象里。集合对象是一组无序排列的可哈希的值 但是因为集合本身是无序的,你不可以为集合创建索引或执行切片(slice)操作,也没有键(keys)可用来获取集合中元素的值。 集合(sets)有两种不同的类型,可变集合(set