闭包是自包含的功能块,可以在代码中传递和使用。Swift闭包与c和oc中的block类似,其他语言用lambdas。 闭包可以获取和存储指向在闭包内部定义的任何常量和变量,这就是所谓的封闭常量和变量,swift为你处理所有的捕捉的内存管理。 注意:如果你对捕捉的概念不熟悉,不用担心,在Capture ...
分类:
编程语言 时间:
2017-11-26 14:55:27
阅读次数:
196
13.1可迭代对象 我们已经知道,可以直接作用于for循环的数据类型有以下几种: 一类是集合数据类型,如list、tuple、dict、set、str等; 一类是generator,包括生成器和带yield的generator function。 这些可以直接作用于for循环的对象统称为可迭代对象: ...
分类:
编程语言 时间:
2017-11-26 14:55:42
阅读次数:
152
1、打开/关闭文件操作 打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。 2、文件的打开模式 3、常用方法 4、读取一个文件每一行的实现方式: ...
分类:
编程语言 时间:
2017-11-26 14:57:01
阅读次数:
153
15.1层次清晰的目录结构 1.可读性高: 不熟悉这个项目的代码的人,一眼就能看懂目录结构,知道程序启动脚本是哪个,测试目录在哪儿,配置文件在哪儿等等。从而非常快速的了解这个项目。 2.可维护性高: 定义好组织规则后,维护者就能很明确地知道,新增的哪个文件和代码应该放在什么目录之下。这个好处是,随着 ...
分类:
编程语言 时间:
2017-11-26 14:57:09
阅读次数:
139
14.1序列化 示例1: #!Author:lanhan#把字典的内存数据类型通过字符串存到硬盘上(json.dumps),仅处理字符串、列表、字典等import jsoninfo = { 'name':'lanhan', 'age':22}f = open("test.txt","w")print ...
分类:
编程语言 时间:
2017-11-26 14:57:15
阅读次数:
207
数据结构栈的c++源代码实现
分类:
编程语言 时间:
2017-11-26 14:57:33
阅读次数:
151
10.1函数定义及语法 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性:1.减少重复代码 2.使程序变的可扩展 3.使程序变得易维护 语法定义: def sayhi(): #函数名 print("Hello, I'm nobody!") ...
分类:
编程语言 时间:
2017-11-26 14:58:17
阅读次数:
296
1、while循环实现输出2 - 3 + 4 - 5 + 6 ... + 100 的和 # 使用while循环实现输出2 - 3 + 4 - 5 + 6 ... + 100 的和 s = 0 i = 2 while i <= 100: if i % 2 == 0: s += i else: s -= ...
分类:
编程语言 时间:
2017-11-26 14:58:24
阅读次数:
296
11.1装饰器的基本概念 装饰器定义:本质是函数,功能是装饰其它函数(就是为其他函数添加附加功能) 原则:1.不能修改被装饰的函数的源代码 总结:装饰器对被装饰的函数是完全透明的(被装饰的函数不知道装饰器的存在,而装饰器可装饰函数来实现所需功能) 实现装饰器知识储备: 高阶函数+嵌套函数》装饰器 函 ...
分类:
编程语言 时间:
2017-11-26 14:58:37
阅读次数:
199
1.new project,不勾选create from archetype,直接选择 2.next下一步 在Maven依赖管理中,唯一标识一个依赖项是由该依赖项的三个属性构成的,分别是groupId、artifactId以及version。这三个属性可以唯一确定一个组件(Jar包或者War包)。g ...
分类:
编程语言 时间:
2017-11-26 14:59:34
阅读次数:
157
16.1模块定义 定义:用一砣代码实现了某个功能的代码集合(n个 .py 文件组成的代码集合就称为模块) 模块分为三种: 自定义模块 内置标准模块(又称标准库) 开源模块 16.2导入方法 单个模块导入:import module_name 一个模块多个函数:from module_lanhan i ...
分类:
编程语言 时间:
2017-11-26 14:59:43
阅读次数:
153
算法基本思想:每次找到离源点最近的一个顶点,然后以该顶点为中心进行扩展,最终得到源点到其余所有点的最短路径。 1、将所有的顶点分为两个部分:已知最短路程的顶点集合P和未知最短路径的顶点集合Q 2、设置源点s到自己的最短路径为0,若存在有源点能够直接到达的顶点i则吧dis[i]设置为e[s][i]。同 ...
分类:
编程语言 时间:
2017-11-26 15:00:29
阅读次数:
162
#undef 是在后面取消以前定义的宏定义 该指令的形式为 #undef 标识符 其中,标识符是一个宏名称。如果标识符当前没有被定义成一个宏名称,那么就会忽略该指令。 一旦定义预处理器标识符,它将保持已定义状态且在作用域内,直到程序结束或者使用#undef 指令取消定义。 ...
分类:
编程语言 时间:
2017-11-26 15:01:55
阅读次数:
204
所有的锁其实就是个同步手段,从jdk1.7来看,都是依靠AbstractQueuedSynchronizer(AQS)实现的,这个东西之前的文章讲过,在这个类里有两种锁,一种是共享锁(作用是让多个线程可以同时拥有锁,也就是允许多个线程同时访问一个共享资源),一种是独占锁(某一时刻只能一个线程可以拥有锁,也就是只允许一个线程访问共享资源)。AQS留出一个方法让用户实现,对于独占锁是tryAcquir
分类:
编程语言 时间:
2017-11-26 15:02:20
阅读次数:
169
集合是一个无序的,不重复的数据组合,它的主要作用如下: 去重,把一个列表变成集合,就自动去重了 关系测试,测试两组数据之前的交集、差集、并集等关系 8.1集合操作 8.1.1常用操作 #!Author:lanhanlist_1 = [1,4,5,7,3,6,7,9]list_1 = set(list ...
分类:
编程语言 时间:
2017-11-26 15:02:54
阅读次数:
152
9.1文件操作流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件 9.2 文件读写及关闭操作 #!Author:lanhan#data = open("yesterday",encoding="utf-8").read()#f = open("yesterda ...
分类:
编程语言 时间:
2017-11-26 15:03:35
阅读次数:
173
12.1列表生成式 示例1:普通做法:a = [0,1,2,3,4,5,6,7,8,9]for index,i in enumerate(a): a[index] *=2print(a) 列表生成式: b = [i*2 for i in range(10)]print(b) 12.2 生成器 通过列 ...
分类:
编程语言 时间:
2017-11-26 15:04:37
阅读次数:
150
一、PTA实验作业 题目1: 7 3 倒顺数字串 1. 本题PTA提交列表 2.设计思路 (1) 定义两个整型变量i,n,n为输出的数。 (2)输入n。 (3)若n的值不为1, for i=1 to i1, 输出i和一个空格, end。 输出1。 (4)若n==1,则直接输出1。 3.代码截图 4. ...
分类:
编程语言 时间:
2017-11-26 15:05:00
阅读次数:
213
1、pandas简介 Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据 ...
分类:
编程语言 时间:
2017-11-26 15:05:13
阅读次数:
224
spring中只有两大核心技术: 控制反转(IOC)&依赖注入(DI),AOP(面向切面编程) 依赖注入 指利用配置文件的关系,来决定类之间的引用关系,以及数据的设置操作。 构造方法注入 默认在applicationContext文件中配置的程序都可以自动通过spring容器加载时自动对对象实例化。 ...
分类:
编程语言 时间:
2017-11-26 15:51:14
阅读次数:
203