
Python
onlyongwang
此博客只用来记录学习笔记,不作他用!
展开
-
【Python】 变量
1. 与C++不同,变量前面无须加类型2. 字符串需要用 '' '' 或者 ' ' 括起来; / 表示转行; ''' ''' 可以表示连续换行;Unicode字符串可以表示中文,要在字符串前加u3. 整整之间的运算,结果是整数;浮点数之间的运算,结果是浮点数;整数浮点数混合运算,结果是浮点数。4. 布尔:Python把0、空字符串''和None看成 False,其他数值和非空字符串都...原创 2018-09-06 10:07:45 · 195 阅读 · 0 评论 -
【Python】Python中的高阶函数
map()接受两个参数,一个是函数变量,一个是List,map()会把函数变量作用于List中的每个元素,最后返回一个新的List。reduce()接受两个参数,一个是函数变量,一个是List;与map()的区别在于,reduce中的函数变量必须接受两个参数,而reduce则会把这个函数依次作用于前面的处理结果和下一个元素。例如,编写一个f函数,接收x和y,返回x和y的和:d...原创 2018-09-11 09:25:43 · 200 阅读 · 0 评论 -
【Python】set
set和List类似,都是数组,区别在于,set中的元素不会重复,且存放是无序的。创建set的方法是,调用set,并将一个List传给它。>>> s = set(['A', 'B', 'C'])由于set是不存在重复元素的,如果我们传入一个有重复元素的List,系统会自动删掉重复的元素。...原创 2018-09-07 18:18:52 · 271 阅读 · 0 评论 -
【Python】dict
Python中的dict类似C++中的map,每个元素有key,以及对应的值。d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59}len()可以计算dict中的元素个数。可以通过,key值读取dict中对应的值,也可以通过get()获取key对应值;这两个方法区别在于,如果key不存在,第一种方法会报错,第二种方法会返回None...原创 2018-09-07 17:43:09 · 321 阅读 · 0 评论 -
【Python】函数式编程
函数式编程,更接近计算,而不是机器指令在Python中,可以创建一个变量指向一个函数,比如 f=abs,那么f就是一个函数变量,我们可以调用它:f(-10)。可以接受函数变量作为参数的函数就是高阶函数。而这个函数变量,在高阶函数中往往会处理其他参数,举例:def add(x, y, f): return f(x) + f(y)add(-5, 9, abs) ...原创 2018-09-10 22:53:57 · 163 阅读 · 0 评论 -
【Python】列表生成式
生成列表的方法有:1. 使用range:>>> range(1, 11)[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]range(1, 100, 2) 可以生成list [1, 3, 5, 7, 9,...]2. 使用for,以及append()方法3. 最重要的列表生成式:>>> [x * x for x in ra...原创 2018-09-10 16:13:16 · 520 阅读 · 0 评论 -
【Python】迭代
Python的for循环操作很抽象。迭代与按下标访问数组最大的不同是,后者是一种具体的迭代实现方式,而前者只关心迭代结果,根本不关心迭代内部是如何实现的。1. 迭代List对于有序集合,元素确实是有索引的。如果我们想知道元素的下标,可以使用enumarate()函数。>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']>>...原创 2018-09-10 12:04:16 · 270 阅读 · 0 评论 -
【Python】切片
如果对数组进行分段提取,我们可能会用下标的方式,如果提取的量太大,那么可能会比较麻烦,所以Python提供了切片操作符。例如:>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']>>> L[0:3]['Adam', 'Lisa', 'Bart']第一个参数0表示,从下标0开始;第二个参数3表示,直到3,但不包括3...原创 2018-09-10 11:28:13 · 12326 阅读 · 2 评论 -
【Python】模块和包
把代码放在不同的py文件中,每个py文件就是一个模块。不同模块中,可以存在相同的变量名。在一个模块中调用其他模块时候,用import关键字,比如 import math。当模块很多时候,模块名容易重名,这时候需要把模块放在不同的包中,这样模块重名也可以了。引用完整模块需要:在文件系统中,一个包就是一个文件夹,一个模块就是一个py文件,包可以有多级。包与普通文件夹不同之处在于,包...原创 2018-09-13 00:02:58 · 226 阅读 · 0 评论 -
【Python】decorator
编写decorator:首先编写decorator函数,以@log为例:def log(f): def fn(x): print 'call ' + f.__name__ + '()...' return f(x) return fn在这里,log函数中定义了一个fn函数,fn中打印了log并返回f,log函数返回fn。注意,这...原创 2018-09-12 23:37:49 · 238 阅读 · 0 评论 -
【Python】函数
默认参数:Python中定义函数,可以有默认参数,也就是说,在定义函数时候,给形参赋值;调用的时候,,如果没有传入新的参数,就用默认的参数,如果传入了新的参数就用新的参数。比如下面这个求n次方的函数:def power(x, n=2): s = 1 while n > 0: n = n - 1 s = s * x return...原创 2018-09-10 10:41:35 · 195 阅读 · 0 评论 -
【Python】Python中的匿名函数
由于Python支持高阶函数的存在,而高阶函数支持函数作为输入参数,有时候,我们不定义传入的函数,而直接在传入参数的地方,把这个函数的表达式写出来更方便,这就是Pythong中的匿名函数。>>> map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9])[1, 4, 9, 16, 25, 36, 49, 64, 81]上面就是匿...原创 2018-09-12 10:20:13 · 274 阅读 · 0 评论 -
【Python】 条件语句
if语句1. if语句中,使用四格缩进表示统一代码块,不像c中使用{}。2. Python中也有 if...else, if...elif...elif...else这样的语句 for语句个人觉得for语句比较抽象以及跳跃...有点不合逻辑了L = ['Adam', 'Lisa', 'Bart']for name in L: print name1. for...原创 2018-09-06 15:00:08 · 263 阅读 · 0 评论 -
【Python】 List和tuple
List的建立方法很简单:L = ['Adam', 'Lisa', 'Bart'],也可以通过下标访问append()可以在List末尾添加元素insert()可以在任意位置添加元素pop()可以删除List中任意位置的元素 tuple也是数组的一种,与List区别在于,它一旦创建,就不能被修改,不能添加删除。写法上用()代替了[]。t = (0,1,2,3,4,5,6,7...原创 2018-09-06 10:36:39 · 188 阅读 · 0 评论 -
【Python】Python中返回函数
Python的函数不但可以返回int、str、list、dict等数据类型,还可以返回函数!原创 2018-09-11 10:05:56 · 396 阅读 · 0 评论