Python基础——列表生成式
生成列表在Python中没我们生成一个列表,可以用range这函数,他可以传入三个参数,第一个参数表示起始的整数默认是0,第二个表示结束的数值(但是不包含在内),第三个可以理解为每个数之间递增的数值,默认是1,
123456>>> range(1,5) #代表从1到5(不包含5)[1, 2, 3, 4]>>> range(1,5,2) #代表从1到5,间隔2(不包含5)[1, 3]>>> range(5) #代表从0到5(不包含5)[0, 1, 2, 3, 4]
生成一个复杂一点的列表,那么就可以用到列表生成式,比如我们要生成一个 [1x1, 2x2, 3x3, ..., 10x10]
12>>> [x * x for x in range(1, 11)][1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
过程是这样的,首先我们会先遍历range函数生成的list,然后每一个元素乘以自身,最后在生成一个列表
复杂的生成式使用for循环的迭代不仅可以迭代普通的list,还可以迭代d ...
Python基础————基础数据类型
基本数据类型包括:整型(int),浮点数类型(float),小数类型,布尔型(boolean)
整型整型区别于Java中的整型,在Java中整型是有大小的限制,在Python中他的大小理论上是无限大小,实际上他取决于内存大小,整数型的运算得到的结果也是整数型,如果是有余数,那么结果只会取整数部分,忽略小数部分 。int() 函数,将其他的类型装换为int整数型
123456>>> x = 1>>> x1>>> x = int('12')>>> x12
浮点数之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的。浮点数可以用数学写法,如1.23,3.14,**-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。它存在大小限制,通过sys模块的float_info来查看,在Python**中浮 ...
Python基础——切片
条件判断在Python中普通的条件判断为:
1234>>> if x==0:>>> print(x)>>> else:>>> print('hello,world')
多重的条件判断:
12345678>>> if x==0:>>> print(x)>>> elif x==1:>>> print('hello')>>> elif x==2:>>> print('world')>>> else:>>> print('hello,world')
在Python中以:来表示代码块开始,这点区分与Java中以大括号表示代码块
特别注意: 多重条件判断会从上到下依次判断,如果某个判断为 True,执行完对应的代码块,后面的条件判断就直接忽略,不再执行了。
需 ...
Python基础——迭代
在Python中,如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们成为迭代(Iteration)。通过for ... in来完成的,for循环不仅可以用在list或tuple上,还可以作用在其他任何可迭代对象上。因此,迭代操作就是对于一个集合,无论该集合是有序还是无序,我们用 for 循环总是可以依次取出集合的每一个元素。
注意: 集合是指包含一组元素的数据结构,我们已经介绍的包括:
有序集合:list,tuple,str和unicode;
无序集合:set
无序集合并且具有 key-value 对:dict
索引迭代在迭代的过程中如果既想要得到索引,又想要拿到值。那么可以通过使用 enumerate() 函数:
12345678>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']>>> for index, name in enumerate(L):... print inde ...
Activity总结
启动模式在启动一个应用时系统会默认创建一个任务栈(stack)来管理Activity,它遵循着先进后出,后进先出的原则,由于任务栈的这种特性会在一些时候造成资源浪费,例如:有时候多次启动相同的Activity(比如多数APP中都会有的主页Activity)那么这时就会在任务栈中创建多个不必要的实例。而启动模式就是用来修改这种默认行为。
想要更改启动的模式,必须在注册文件(AndroidManifest文件)中为Activity添加LaunchMode属性:
1234567<activity android:name=".MainActivity" android:launchMode="standard"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category ...
无题
Service本地服务10 things you didn’t know about Android’s Service component
生命周期启动绑定远程服务
Android中人脸检测的基本实现
最近公司的项目需要用到人脸检测的功能,我花了一些时间整理了一下,以此作为记录,这也是我的第一篇博文,有什么不正确的地方,希望大家指正
介绍
引用百度知道人脸识别词条中的介绍人脸识别技术是基于人的脸部特征,对输入的人脸图像或者视频流 . 首先判断其是否存在人脸 , 如果存在人脸,则进一步的给出每个脸的位置、大小和各个主要面部器官的位置信息。并依据这些信息,进一步提取每个人脸中所蕴涵的身份特征,并将其与已知的人脸进行对比,从而识别每个人脸的身份。
人脸识别在Android平台的应用已经不是什么新鲜事了,从最初的4.0系统的人脸解锁屏幕,现在各个相机应用动画贴图效果,都是依靠人脸识别来实现的。Android中人脸相关的API,在Level 1的时候就已经存在,但是他能做到的也只是人脸的检测,而非通常上讲的人脸识别。接下来就来实现一个人脸检测的应用。
流程首先用Camera来预览图像,那么就需要用到SurfaceView来进行显示,接下来就有两种方式来进行检测人脸
直接为Camera添加人脸检测的监听器,这种方式是在系统底层实现的,我们只要负责回调就可以了。
我们自己处理图像。拿到预览 ...