摘要: from socket import * ip_port=('127.0.0.1',8080) buffer_size=1024 udp_server=socket(AF_INET,SOCK_DGRAM) udp_server.bind(ip_port) while True: data=udp_s 阅读全文
posted @ 2018-06-03 22:50 benchdog 阅读(158) 评论(0) 推荐(0) 编辑
摘要: import socket #from socket import * ip_port=('127.0.0.1',8000) back_log=5 buffer_size=1024 tcp_server=socket.socket(socket.AF_INET,socket.SOCK_STREAM) 阅读全文
posted @ 2018-06-03 17:30 benchdog 阅读(750) 评论(0) 推荐(0) 编辑
摘要: 客户端/服务器架构,即C/S架构: 1.硬件C/S架构(打印机) 2.软件C/S架构(web服务) B/S架构属于C/S架构的一种 socket就是为了C/S架构的开发,socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。他把复杂的TCP/IP协议族隐藏在socket接口后面 阅读全文
posted @ 2018-06-03 16:19 benchdog 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 三大编程范式:即编程方法论 1.面向过程编程 2.函数式编程 3.面向对象编程 阅读全文
posted @ 2018-05-27 23:05 benchdog 阅读(111) 评论(0) 推荐(0) 编辑
摘要: import hashlibobj = hashlib.md5() #或者加严:obj = hashlib.md5('asdf'.encode("utf8"))obj.update('123456'.encode("utf8")) #encode()用于字符串转换字节print(obj.hexdigest()) #生成固定32位长度码(用于密码存储) 阅读全文
posted @ 2018-05-27 16:24 benchdog 阅读(71) 评论(0) 推荐(0) 编辑
摘要: import configparser config = configparser.ConfigParser() #config={}#生成config空字典 config = {} config["DEFAULT"]={'serverliveinternal':45, 'compressionlevel':9, 'conp... 阅读全文
posted @ 2018-05-27 12:21 benchdog 阅读(119) 评论(0) 推荐(0) 编辑
摘要: import re print(re.findall('(abc)+','abcabcabc'))print(re.findall('(?:abc)+','abcabcabc'))print(re.findall('abc+','abcabcabc')) 阅读全文
posted @ 2018-05-26 21:32 benchdog 阅读(153) 评论(0) 推荐(0) 编辑
摘要: import logging logger=logging.getLogger()fh=logging.FileHandler('text.log')ch=logging.StreamHandler()fm=logging.Formatter("%(asctime)s %(message)s")fh.setFormatter(fm)ch.setFormatter(fm)logger.addHan... 阅读全文
posted @ 2018-05-26 21:02 benchdog 阅读(268) 评论(0) 推荐(0) 编辑
摘要: import logginglogging.basicConfig( level=logging.DEBUG, filename='catalina.out', filemode='a', format="%(asctime)s [%(line)d'] %(message)s",) 阅读全文
posted @ 2018-05-26 20:43 benchdog 阅读(87) 评论(0) 推荐(0) 编辑
摘要: #正则元字符:^ $ . * + ? [] {} () \ | #()分组import re print(re.search('(?P[a-z]+)(?P\d+)',"asd123fgh456jkl789").group('name'))re.search() #懒惰模式 只返回第一个匹配的数据,再调用group()方法得到匹配的字符串re.findall() #贪婪模式,但会所有满足匹配条件的... 阅读全文
posted @ 2018-05-26 19:06 benchdog 阅读(155) 评论(0) 推荐(0) 编辑