- 博客(132)
- 资源 (2)
- 收藏
- 关注
原创 公网IP和内网IP比较
公网IP和内网IP是互联网中的两种不同IP地址,它们在多个方面存在显著差异。在进行网络设计和配置时,了解这些差异有助于更好地规划和管理网络资源,以适应不同的应用场景需求。策略以及实现内外网的通信至关重要。在实际应用中,合理配置和使用这两种类型的IP地址是确保网络安全、了解公网和内网IP之间的这些差异后,对于规划网络布局、
2024-09-27 10:01:55
696
2
原创 Python3——错误和异常
import sys;def exception_operation(): while True: try: x = int(input("input enter a number:")) break except ValueError: print("Oops! That was no valid number. Try again ") try: f.
2021-08-17 10:11:49
370
原创 Python——定制类(__str__、__getattr__)
class Student: def __init__(self, name): self.name = name def __str__(self): # 类似java中对象的toString() return 'Student object (name: %s)' % self.name # 直接显示变量调用的不是__str__(),而是__repr__(),两者的区别是__str__()返回用户看到的字符串,而__repr__()返回程序.
2021-08-15 19:07:36
373
原创 python slots用法
from types import MethodTypeclass Student: passclass Teacher: __slots__ = ('name', 'age') # 用tuple定义允许绑定的属性名称 passdef set_age(self, age): self.age = agedef set_score(self, score): self.score = scoreif __name__ == '__mai.
2021-08-15 18:32:41
624
原创 Python——函数式编程
def f(x): return x * xdef function_operation(): # map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回 r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9]) l1 = list(r) # 由于结果r是一个Iterator,Iterator是惰性序列,因此通过list()函数让它把整个序列都计算出来并返.
2021-08-15 17:24:08
164
原创 Python高级特性——generator
通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。在Python中,这种一边循环一边计算的机制,称为生成器:generator。要创建一个generator,有很多种方法。第一种方法很
2021-08-13 09:59:34
201
原创 Python高级特性——列表生成式
列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。def list_comprehensions_operation(): L1 = [] for x in range(1, 11): L1.append(x * x) L2 = [x * x for x in range(1, 11)] # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] # for循
2021-08-12 10:06:53
147
原创 python高级特性——切片
取一个list或tuple的部分元素是非常常见的操作。def slice_operation(): L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] l1 = L[0:3] # ['Michael', 'Sarah', 'Tracy'] l2 = L[:3] # ['Michael', 'Sarah', 'Tracy'] # Python支持L[-1]取倒数第一个元素,那么它同样支持倒数切片 l3 = .
2021-08-11 20:59:52
148
原创 python高级特性——迭代
取一个list或tuple的部分元素是非常常见的操作。def slice_operation(): L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] l1 = L[0:3] # ['Michael', 'Sarah', 'Tracy'] l2 = L[:3] # ['Michael', 'Sarah', 'Tracy'] # Python支持L[-1]取倒数第一个元素,那么它同样支持倒数切片 l3 = L
2021-08-10 22:42:32
137
原创 anaconda创建虚拟环境
最近在做项目时需要提交pyspark任务到公司的Spark集群上,由于没有集群节点的相关权限,打算采用anaconda创建pyspark的虚拟环境来进行。整个过程分为以下5步:(1)安装Anaconda;(2)创建python虚拟环境(3)安装python相关依赖;(4)打包python虚拟环境;(5)提交任务执行1. 安装Anacondawget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda2-2...
2021-01-23 17:17:19
728
原创 Centos上安装XGBOOST
Anaconda是个非常方便同时功能强大的python环境管理工具,本文主讲如何利用anaconda安装一些pip安装麻烦的包,比如XGBoost。一、安装Anaconda(1)下载Anaconda 直接在官网下载挺慢的,建议使用清华镜像(可以把pip的源也换成国内的,pip install也会快很多):Tsinghua Open Source Mirror 在最近的日期中,选择一个对应自己系统版本的Anaconda3安装包,x86_64表示兼容32位和64位系...
2021-01-09 12:34:49
637
原创 skilearn-xgboost
调用skilearn中的xgboost模型实现二分类完成demo如下,包含模型保存和导出。import numpy as npimport pandas as pdimport xgboost as xgbfrom sklearn import datasetsfrom sklearn.metrics import accuracy_scorefrom sklearn import metricsimport time#记录程序运行时间start_time = time.time(.
2021-01-09 12:12:32
515
4
原创 String.split()用法
Java中可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组。 stringObj.split([separator,[limit]]) separator: 可选项。字符串或正则表达式对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽略该选项,返回包含整个字符串的单一元素数组。 limit: 参数控制separator应用的次数,因此影响所得数组的长度。 if(n>0):则模式将被最多应用n-1次,数组的长度将不会大于n,而且数组的最后..
2021-01-09 11:39:31
60865
翻译 Hive UDTF开发
原文链接:http://beekeeperdata.com/posts/hadoop/2015/07/26/Hive-UDTF-Tutorial.htm在这篇文章中,我们将深入了解用户定义表函数(UDTF),该函数的实现是通过继承org.apache.Hadoop.hive.ql.udf.generic.GenericUDTF这个抽象通用类,UDTF相对UDF更为复杂,但是通过它,我们读入一个数据域,输出多行多列,而UDF只能输出单行单列。实例数据首先先创建一张包含示例数据的表:people,该
2020-09-05 21:04:47
277
原创 Hive表NULL、空字符串判断和处理
一、空值判断 hive中空值基本分为NULL和空字符串''两种。(1)NULL 与 \N hive表中如何保存和标识NULL,可由alter table name SET SERDEPROPERTIES('serialization.null.format' = '\N')控制。(1) alter table name SET SERDEPROPERTIES('serialization.null.format' = '\N'); 则底层数据保存的是...
2020-09-05 20:12:22
12676
1
原创 抽象类使用Jackson序列化
当java对象中含List<Object>时,如果Object一个抽象类或接口,这里就会出现java多态的现象,比如,List<Animal>, 如果Animal是个抽象类,并且有多个子类时,由于List中保存的Animal没有明确指向具体的子类或实现类,json反序列化java对象时就会抛出提示:Exception in thread "main" com.fasterxml.jackson.databind.JsonMappingException:Can ...
2020-08-30 23:20:42
3231
原创 Python格式化输出
格式说明由%和格式字符组成,如%f,它的作用是将数据按照指定的格式输出。格式说明是由“%”字符开始的。1.整型输出%dprint 'my age is %d'% (26)2.输出字符串%sprint 'my name is %s' % ('xiaoming')3.输出浮点数print 'His height is %f m' % (1.890)4.保留2位小数print 'His height is %.2f m' % (1.890)5.指定占位符宽度print 'n
2020-06-16 10:54:41
806
原创 ROC曲线面积AUC详解
一、roc曲线1.roc曲线:接收者操作特征(receiver operating characteristic), roc曲线上每个点反映着对同一信号刺激的感受性。横轴:负正类率(false postive rate FPR)特异度,划分实例中所有负例占所有负例的比例;(1-Specificity)纵轴:真正类率(true postive rate TPR)灵敏度,Sensitivity(正类覆盖率)2. 针对一个二分类问题,将实例分成正类(postive)或者负类(negative)。但
2020-06-09 11:00:11
12306
1
原创 CURL模拟Http请求上传文件和JSON数据
1. SpringRestful接口@RequestMapping(method = RequestMethod.PUT, consumes = {"multipart/form-data"}) @ResponseBody public Result updateAlgorithm( @RequestPart(value = "...
2020-04-09 11:04:08
2900
原创 CURL模拟Http请求
格式: curl [-H 'k1:v1' -H 'k2:v2' -H 'k3:v3' ... -H 'kn:vn']http://xxx.xxx.com[ ] 里面的内容是可选项,-H表示http请求中header内容。curl -H 'AccessKey:a338c92c-be3d-4650-8c2d-ccc0be95bea8' -H 'Timestamp:1577265662...
2019-12-28 22:16:11
417
原创 Crontab实现定时任务
一、cron介绍 经常使用的是crontab命令是cron table的简写,它是cron的配置文件,也可以叫它作业列表,可以在以下文件夹内找到相关配置文件。/var/spool/cron/ 目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名 /etc/crontab 这个文件负责调度各种管理和维护任务。 /etc/cron.d/ 这个目录用...
2019-12-28 22:02:58
431
原创 Guava Cache用法详解
Guava Cache与ConcurrentMap很相似,但也不完全一样。最基本的区别是ConcurrentMap会一直保存所有添加的元素,直到显式地移除。相对地,Guava Cache为了限制内存占用,通常都设定为自动回收元素。在某些场景下,尽管LoadingCache 不回收元素,它也是很有用的,因为它会自动加载缓存。 Guava Cache是在内存中缓存数据...
2019-12-21 17:24:56
1097
原创 Spring Boot自定义Interceptor
1.定义Interceptorimport org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest;import javax.servlet....
2019-12-01 16:46:22
410
转载 curl命令用法
1. CURL命令简介CURL(CommandLine Uniform Resource Locator),是一个利用 URL 语法,在命令行终端下使用的网络请求工具,支持 HTTP、HTTPS、FTP 等协议。CURL 也有用于程序开发使用的版本 libcurl。Linux、MAC 一般系统默认已安装好 curl,直接在终端使用命令即可,如果需要手动安装,可以到 curl.haxx.se...
2019-10-29 23:09:40
71277
1
转载 Java Thrift数据类型
1.基本类型(括号内为对应的Java类型)bool(boolean): 布尔类型(TRUE or FALSE)byte(byte): 8位带符号整数i16(short): 16位带符号整数i32(int): 32位带符号整数i64(long): 64位带符号整数double(double): 64位浮点数string(String): 采用UTF-8编码的字符串2.特殊类型(...
2019-08-31 21:46:09
1795
1
原创 Spring RestTemplate——文件上传
一.上传单个文件//通过指定header和body来创建HttpEntityHttpHeaders headers = new HttpHeaders();headers.setContentType(MediaType.MULTIPART_FORM_DATA);MultiValueMap<String, Object> body = new LinkedMultiVa...
2019-07-28 21:20:24
2306
1
原创 Spring MVC同时上传表单数据和文件
在Spring 4.0.2版本提供的restful服务中,可以通过注解@RequestPart来同时上传格式化的XML/JSON数据和文件。 后端Controller包含Multipart和JSON的请求写法如下:@RequestMapping(value = "/executesampleservice", method = RequestMethod.POST, ...
2019-06-23 08:39:11
4308
原创 JDK8——Map操作
本文涵盖的JDK8中引进的Map方法有:getOrDefault(Object,V),putIfAbsent(K,V),remove(Object,Object),replace(K,V),和 replace(K,V,V)。import java.util.HashMap; ...
2019-06-08 10:19:13
2982
原创 Git用法详解
默认,git项目只有一个分支master,当然可以在本地创建多个分支,并推送到远程git仓库上,或者将远程git仓库上的其他分支拉取到本地。一、查看本地已有的分支进入到项目根目录,打开命令行/终端,输入指令git branch,将会显示该项目的本地的全部分支,其中、当前分支的前面有*号。二、本地检出一个新的分支并推送到远程仓库1.创建本地分支git che...
2019-05-12 10:31:05
2069
原创 React—Promise用法
Promise是什么?从用途上来说:(1)promise主要用于异步计算。(2)可以将异步操作队列化,按照期望的顺序执行,返回符合预期的结果。(3)可以在对象之间传递和操作promise,帮助我们处理队列。从语法上说:(1)Promise 是一个对象,从它可以获取异步操作的消息。(2)Promise 提供统一的 API,各种异步操作都可以用同样的方法进行处理Promis...
2019-05-01 12:51:13
22475
原创 React 获取 url 参数 —— this.props.match
在浏览器的地址栏中输入:localhost:3000/app/knowledgeManagement/modify/STY20171011124209535/3/1507701970070/0/?s=1&f=7该地址对应的router如下:localhost:3000/app/knowledgeManagement/modify/:id/:stepId/:randomNum/...
2019-05-01 10:45:38
6588
原创 MySQL——FIND_IN_SET用法详解
在MySQL中,考虑一种应用场景,就是当做数据库查询时,需要得到某字段中包含某个值的记录,但是它不能用like来进行模糊匹配,要求精确匹配,这时候内置函数FIND_IN_SET函数就派上用场了,下面来具体了解一下。FIND_IN_SET(str,strlist)函数str :待查询的字符串strlist :待查找的字段名,字段的值以”,”分隔,如 (1,2,6,8)查询字段(str...
2019-04-20 23:02:02
16310
转载 Mock.mock()生成模拟数据
在做前端项目时,如果没有测试数据,可以通过mock来生成模拟数据。Mock.mock( rurl?, rtype?, template|function( options ) )根据数据模板生成模拟数据。Mock.mock( template )根据数据模板生成模拟数据。JSFiddleMock.mock( rurl, template )记录数据模板。当拦截到匹配r...
2019-03-21 16:12:48
5752
转载 Mock.js语法规范
参考链接:https://github.com/nuysoft/Mock/wiki/Syntax-SpecificationMock.js 的语法规范包括两部分:数据模板定义规范(Data Template Definition,DTD) 数据占位符定义规范(Data Placeholder Definition,DPD)数据模板定义规范 DTD数据模板中的每个属性由 3 部分构成...
2019-03-21 16:05:11
1343
原创 Java 8——Lamada表达式
利用java8 的lamada表达式,可以用简洁高效的代码来实现一些数据处理。 (1)List操作 (2)Map操作 (3)List和Map互换
2019-03-02 12:04:37
1179
转载 java动态代理
Java动态代理的实现方式包括:(1)通过反射类Proxy以及InvocationHandler回调接口实现;(2)使用CGLib实现一、使用反射类Proxy以及InvocationHandler回调接口实现 在使用该种方式时,有两个重要的类或接口,一个是 InvocationHandler(Interface)、另一个则是 Proxy(Class),这一个类和接口是实现我们动...
2019-02-23 23:25:09
129
原创 Java读取properties文件——中文乱码问题
初用properties,读取java properties文件的时候如果value是中文,会出现读取乱码的问题。给定country.properties文件如下:China=中国USA=美国Japan=日本Properties properties = new Properties(); InputStream inputStream = this.getClass().ge...
2019-01-03 20:43:33
9982
原创 Maven—指定字符编码格式
今天提交项目代码到公司的git仓库上时报错:"Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent!"。经网上搜寻,找到原因:Maven作为build工具时经常出现此问题,原因是未指定具体编码方式,通过在pom.xml指定编码方式可解决此问题...
2019-01-03 20:28:30
4012
1
原创 Java正则表达式——group方法详解
捕获组是把多个字符当一个单独单元进行处理的方法,它通过对括号内的字符分组来创建。例如,正则表达式 (dog) 创建了单一分组,组里包含"d","o",和"g"。捕获组是通过从左至右计算其开括号来编号。例如,在表达式((A)(B(C))),有四个这样的组:((A)(B(C))) (A) (B(C)) (C)可以通过调用 matcher 对象的 groupCount 方法来查看表达...
2018-12-31 17:32:19
16740
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人