test

guava教程——Joiner、Splitter

拈花ヽ惹草 提交于 2020-04-08 11:39:51
guava是goog1e开源的一套针对java api的扩展工具包,里面包含很多非常实用的方法,在工作中可以提高我们的编码效率; 1.Joiner 将集合按指定字符拼接成字符串; private final List<String> stringList = Arrays.asList( "tom","jack","bob"); private final List<String> stringListWithNullValue = Arrays.asList( "tom","jack","bob",null,"rose"); @Test public void testJoin(){ String join = Joiner.on("#").join(stringList); assertThat(join,equalTo("tom#jack#bob")); } // 跳过list中的null @Test public void testJoinOnJoinSkipNull(){ String join = Joiner.on("#").skipNulls().join(stringListWithNullValue); assertThat(join,equalTo("tom#jack#bob#rose")); } // 替换null为指定字符 @Test public

Java ------ 构造方法

我与影子孤独终老i 提交于 2020-04-08 11:31:38
一、什么是构造方法 构造方法也称构造器/constructtion -------- 它也是一种方法,不过它比普通方法特殊; 构造方法格式: 【修饰符】 构造方法名 (形式参数){    构造方法体; }   普通方法格式:   【修饰符】返回值类型 方法名 (形式参数){    普通方法体;   }    从上面的构造方法与普通方法的语法格式上 可以很直观的看出 :构造方法没有返回值类型 ,还有一个不同点是 构造方法要以类名为构造方法名 ,所以看一个方法是不是构造方法,看其方法名就能判断。 二、构造方法的作用是什么 构造方法的作用: 1、是通过 new 运算符来创建对象: public class Construction{ public static void main(String[] args){ new Construction (); // 该代码就是使用构造方法创建对象 } }     2、传递参数和对类中属性初始化 1 public class Test18 { 2 3 public static void main(String[] args) { 4 5 Test e = new Test(); 6 // output result: 参数传递 7 // 从结果上可以看到 构造方法的一个作用是 参数传递,当然被调用者中的成员变量也能传递参数: 8 9 Test

内核栈回溯原理学习应用

独自空忆成欢 提交于 2020-04-08 08:45:36
  这篇主要是杭州操作系统大会前辈的文档进行学习,因为文档公开了故而总结学习一下,如若其中有侵权的地方,请及时联系我,谢谢 ........................................................................................................................................................................................................................... 问题:     一台客户现场机器,运行一周左右偶然发生一次应用段错误或者double free问题,cpu可能是arm、mips、x86等架构,有什么好的方法捕捉异常日志? 困难点:   1. 研发环境常使用gdb+coredump技术解决此类问题,客户现场等非研发环境的偶现应用异常问题,不方便使用,操作起来有一定难度   2. 不同架构(arm32、arm64、mips、x86),不同版本C库和gdb,栈回溯效果差异很大。PC ubuntu系统测试,glibc 2.15,发生应用double free,直接打印栈回溯信息,其他架构的CPU上测试没有这个功能。arm64架构的某款CPU上测试

Keras使用总结,构建图像分类模型(针对小数据集)

江枫思渺然 提交于 2020-04-08 08:32:14
感谢作者分享- http://bjbsair.com/2020-04-07/tech-info/30654.html Keras基本的使用都已经清楚了,那么这篇主要学习如何使用Keras进行训练模型,训练训练,主要就是“练”,所以多做几个案例就知道怎么做了。   在本文中,我们将提供一些面向小数据集(几百张到几千张图片)构造高效,实用的图像分类器的方法。 1,热身练习——CIFAR10 小图片分类示例(Sequential式)   示例中CIFAR10采用的是Sequential式来编译网络结构。代码如下: 要训练模型,首先得知道数据长啥样 from future import print_function import keras from keras.datasets import cifar10 from keras.preprocessing.image import ImageDataGenerator from keras.models import Sequential from keras.layers import Dense, Dropout, Activation, Flatten from keras.layers import Conv2D, MaxPooling2D batch_size = 32 num_classes = 10 epochs =

Python-try except else finally有return时执行顺序探究

十年热恋 提交于 2020-04-08 06:59:41
学习python或者其他有异常控制的 编程 语 言, 大家很有可能说try except finally(try catch finally)的执行很简单,无非就是有异常的话执行except, finally无论是否有异常都会执行, 大致上原则是这样, 但是如果涉及到更加详细的复杂的路径,加上return 语句,就没有那么简单了。 1. 没有return 语句的情况 print 'this is a test of code path in try...except...else...finally' print '************************************************************' def exceptTest(): try: print 'doing some work, and maybe exception will be raised' raise IndexError('index error') #print 'after exception raise' #return 0 except KeyError, e: print 'in KeyError except' print e #return 1 except IndexError, e: print 'in IndexError except' print

python(字符串魔法)【三】

妖精的绣舞 提交于 2020-04-08 04:51:53
num='00011'v=int(num,base=16)print(v)age=5v1=age.bit_length()print(v1)以0填充【右边】test='alex'v2=test.zfill(20)print(v2)test='alexalex'v3=test.count('ae')print(v3)断句(20字位符)test = "username\temail\tpassword\nlaiying\tying@q.com\t123\nlaiying\tying@q.com\t123\nlaiying\tying@q.com\t123"v = test.expandtabs(20)print(v)从开始往后找,找到第一个之后,获取其位置(find)test='alexalex'v4=test.find('al')print(v4)输出:0 test='alexalex'v4=test.find('al',2,3) #或者从第几个开始或者指定一个区间print(v4)# 输出:-1表示再此区间内不存在 判断字符串中是否只含有数字和字母,单纯数字或者字母也可test='123'v5=test.isalnum()print(v5)test='asd火狐'v5=test.isalpha()print(v5)test ='二' # 2, ②v1 = test

python(字符串魔法【一】)

牧云@^-^@ 提交于 2020-04-08 04:51:17
Python之字符串魔法【一】 test="alex" v1=test.capitalize() #头字母大写 print(v1) test="aLex" v2=test.casefold() #大写变小写 print(v2) test='ALEX' v3=test.lower() print(v3) # 设置宽度,并将内容居中 # 10 代指总长度 # * 空白未知填充,一个字符,可有可无 test='alexalex' v1=test.center(10,'*') print(v1) 共10个字符alexalex居中并以*代表空格位置 #设置宽度,将内容剧中,并在空闲处用特殊字符表示(一个字符)如果设置的宽度小于test字符那么输出的就是test# 去字符串中寻找,寻找子序列的出现次数 test='alexalex'v1=test.count('ex',5,6) print(v1) # 以什么什么结尾 # 以什么什么开始 test='adkacsv' v1=test.endswith('v') v2=test.startswith('d') print(v1) print(v2) test = "12345678\t9" v = test.expandtabs(6) print(v,len(v)) # 从开始往后找,找到第一个之后,获取其位置 test="alexalex"

python字符串魔法

安稳与你 提交于 2020-04-08 04:50:59
test = 'alEx' print(test.capitalize()) # 首字母大写 其他都变小写 print(test.casefold()) # 变小写 更牛逼 print(test.lower()) # 全部变小写 print(test.center(20, '*')) # 设置宽度,一共20个位置,将test放中间,其他用*拼接 print(test.count('E', 1, 2)) # test中存在E的数量,从哪开始到哪结束,不填表示从头到尾,左开右闭 print(test.endswith('x')) # 判断是否以x结尾 print(test.endswith('E', 2, 4)) print(test.startswith('a')) # 以a开始 test = 'alExalEx' print(test.find('E')) # 从前往后找寻找E出现在哪个位置(首次),可以加位置,返回-1代表没找到 print(test.index('E')) # 未找到就报错 test = 'I am {name}' print(test.format(name='alex')) # format格式化 print(test.format_map({'name': 'alex'})) test = 'afds324353dcz3fads5sd中' print('*

Python - 魔法字符串

我只是一个虾纸丫 提交于 2020-04-08 04:50:27
''' #capitalize() ---首字母转换为大写--- s="sslssd" v=s.capitalize(); print(v) ''' ''' #center(20,"*") ---左右各是个字符居中显示--- ljust(10,"&") ---左边显示字符填充--- s="中" v=s.center(20,"*"); v1=s.ljust(10,"&"); v2=s.rjust(10,"%"); print(v,v1,v2) ''' ''' #count('ex') ---去字符串中寻找,寻找子序列的出现次数--- s = "aLexalexr" v = s.count('ex') print(v) test = "aLexalexr" v1 = test.count('ex',5,6) #5开始,6结束 print(v1) ''' ''' #endswith('ex') ---以什么什么结尾--- startswith('ex') ---以什么什么开始--- s = "alex" v = s.endswith('ex') v1 = s.startswith('ex') print(v,v1) ''' ''' #find('ex') ---从开始往后找,找到第一个之后,获取其位置--- # > 或 >= s = "alexalex" # 未找到 -1 v = s

使用动态SQL语句实现简单的行列转置(动态产生列)

我的梦境 提交于 2020-04-08 03:49:56
原始数据如下图所示:(商品的销售明细) date=业务日期;Item=商品名称;saleqty=销售数量; -- 建立测试数据(表) create table test (Date varchar(10), item char(10),saleqty int) insert test values('2010-01-01','AAA',8) insert test values('2010-01-02','AAA',4) insert test values('2010-01-03','AAA',5) insert test values('2010-01-01','BBB',1) insert test values('2010-01-02','CCC',2) insert test values('2010-01-03','DDD',6) 需要实现的报表样式:每一行既每一天,显示所有商品(列)该天的销售数量; 实现的方法和思路如下: -- 实现结果的静态SQL语句写法 -- 整理报表需要的格式 select date, case item when 'AAA' then saleqty when null then 0 end as AAA, case item when 'BBB' then saleqty when null then 0 end as BBB, case