- 博客(13)
- 资源 (15)
- 收藏
- 关注
原创 python写一个群聊的程序
需求分析:聊天工具是CS程序,C是每一个客户端,S是服务端服务应具有的功能:启动服务,包括绑定地址和端口,监听建立连接,能和多个客户端建立连接接收不同用户的信息分发,将接收的某个用户的信息转发到已连接的所有客户端停止服务记录连接的客户端import loggingimport socketimport threadingFORMAT = '%(asctime)s %(threadName)s %(message)s'logging.basicConfig(format=F
2020-12-26 12:09:14 228
原创 K折交叉验证python实现
用KNN算法训练iris数据,并使用K折交叉验证方法找出最优的K值import numpy as npfrom sklearn import datasetsfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn.model_selection import KFold # 主要用于K折交叉验证# 导入iris数据集...
2020-12-26 09:25:59 3755
原创 线性回归算法 - python实现
本文用python实现线性回归算法# -*- coding: utf-8 -*-"""Created on Fri Oct 11 19:25:11 2019@author: river"""from sklearn import datasets, linear_model # 引用 sklearn库,主要为了使用其中的线性回归模块# 创建数据集,把数据写入到numpy数组i...
2020-12-26 09:25:16 726
原创 KNN算法 - python实现
本文用python实现KNN算法# -*- coding: utf-8 -*-"""Created on Mon Oct 14 22:54:05 2019@author: river"""from sklearn import datasetsfrom collections import Counter # 为了做投票from sklearn.model_selection...
2020-12-26 09:24:54 414
原创 装饰器:判断函数参数类型是否符合定义
装饰器的应用:判断函数参数类型是否符合定义import inspectdef check(fn): def wrapper(*args,**kwargs): print(args,kwargs) sig = inspect.signature(fn) params = sig.parameters #有序字典 print('params :',sig.parameters) print(
2020-12-26 09:22:49 252
原创 装饰器:实现一个cache装饰器,可实现过期自动清除功能
实现cache装饰器from functools import wrapsimport timeimport inspectimport datetimedef func_cache(fn): local_cache = {} #根据函数名定义不同的cache @wraps(fn) def wrapper(*args,**kwargs): #接收各种参数 print("传入参数: ",args,kwargs) # 参数处理
2020-12-26 09:21:52 263
原创 Python SMTP发送邮件
SMTP:(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。Python发送 SMTP 简单示例如下:import smtplibfrom email.mime.text import MIMETextfrom email.header import Headerimport datetimei
2020-12-25 23:22:23 618 2
原创 python中logging模块
logging模块:python logging提供了一组便利的函数,用来做简单的日志。它们是 debug()、 info()、 warning()、 error() 和 critical()。logging函数根据它们用来跟踪的事件的级别或严重程度来命名。标准级别及其适用性描述如下(以严重程度递增排序):级别数值何时使用DEBUG10详细信息,一般只在调试问题时使用。INFO20证明事情按预期工作。WARNING30某些没有预料到的事件的提示,或者在将来
2020-12-18 14:55:26 206
原创 python通过UDP/TCP方式发送数据
UDP简介:UDP — 用户数据报协议(User Datagram Protocol),是一个无连接的简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。UDP发送数据:示例:往192.168.149.128(linux)上的UDP 8888上发送数据,在128服务器上,利用nc监听8888端口,接收测试数据import s
2020-12-17 12:55:35 1581
原创 http响应头中,修改nginx真实的server信息
项目中,有时候为了隐藏中间件的信息,需要隐藏http响应头中server的信息,如下图:需求一:将nginx版本号隐藏掉隐藏nginx版本比较简单,只需要修改下nginx.conf配置文件,在配置文件中http类别下面增加如下配置即可:server_tokens off;如下图:配置后,重启nginx,效果如下:需求二:将server中nginx替换为 ******需要更改Nginx的源码,然后重新编译安装,需要改动的源代码信息如下模块。编辑 src/http/ngx_http_he
2020-12-14 15:15:52 5778 1
原创 利用nc向IPv6地址指定端口发送数据
系统环境:Centos7nc的作用:(1)实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口(2)端口的扫描,nc可以作为client发起TCP或UDP连接(3)传输文件(4)网络测速(5)克隆硬盘或分区(6)反弹服务器shellnc的常用的几个参数如下所列:参数含义-4强制nc只能使用IPv4地址-6强制nc只能使用IPv6地址-l用于指定nc将处于侦听模式。指定该参数,则意味着nc被当作server,侦听
2020-12-10 22:04:36 7775
原创 splunk监听IPv6端口
问题:我们在用splunk接收syslog日志时,在数据输入中配置udp接收端口,默认监听的是IPv4地址的端口,如果想监听IPv6的端口需要怎么配置呢?配置方法如下:如:在search应用下面,配置数据输入:udp 8888,如下图:此配置只会监听IPv4的8888端口,如果想监听IPv6的,需要在后台配置文件中添加"listenOnIPv6 = yes",如下图:vim splunk/etc/apps/search/local/inputs.conf: [udp://8888]conn
2020-12-10 18:41:44 229
转载 mysql8窗口函数
一、mysql窗口函数简介MySQL从8.0开始支持窗口函数,这个功能在大多商业数据库和部分开源数据库中早已支持,有的也叫分析函数。窗口函数:在满足某些条件的记录集合上执行的特殊函数,对于每条记录都要在此窗口内执行函数。有的函数随着记录的不同,窗口大小都是固定的,称为静态窗口;有的函数则相反,不同的记录对应着不同的窗口,称为滑动窗口。1.窗口函数和普通聚合函数的区别:①聚合函数是将多条记录聚合为一条;窗口函数是每条记录都会执行,有几条记录执行完还是几条。②聚合函数也可以用于窗口函数。2.窗口函数
2020-12-09 16:33:44 710
利用KNN算法实现手写体数字的识别.zip
2021-08-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人