一.可变参数 定义函数时,有时候我们不确定调用的时候会传递多少个参数(不传参也可以).此时,可用包裹(packing)位置参数(*args),或者包裹关键字参数(**kwargs),来进行参数传递,会显得非常方便. 1.包裹位置传递 def send_sms(*args): # 可变参数,参数组 print('phones',args) def say(word): print(word) say(word='nihao') send_sms(110,138,119) say('nihao')…
简介 在 Python 中,所有集合都可以迭代.在 Python 语言内部,迭代器用于支持: 1.for 循环2.构建和扩展集合类型3.逐行遍历文本文件4.列表推导.字典推导和集合推导5.元组拆包6.调用函数时,使用 * 拆包实参 语言内部使用 iter(...) 内置函数处理可迭代对象的方式 序列可以迭代的原因:iter函数 解释器需要迭代对象 x 时,会自动调用 iter(x). 内置的 iter 函数有以下作用. (1) 检查对象是否实现了 __iter__ 方法,如果实现了就调用它,获取…
一个二分查找的示例: # 二分查找 示例 data = [1, 3, 6, 7, 9, 12, 14, 16, 17, 18, 20, 21, 22, 23, 30, 32, 33, 35, 36, 66] def binary_search(dataset, find_num): print(dataset) if len(dataset) > 1: mid = int(len(dataset) / 2) if dataset[mid] == find_num: # find it print…
一.递归函数 定义:在一个函数里调用这个函数本身 递归的最大深度:997 def func(n): print(n) n += 1 func(n) func(1) 测试递归最大深度 import sys print(sys.setrecursionlimit(10000)) 修改递归最大深度 二.内置函数 python提供了68个内置函数     Built-in Functions     abs() dict() help() min() setattr() all() dir() hex(…
dir(__builtins__)查看python中所用BIF(内置函数)…
一.生成器 生成器是什么?其实和list差不多,只不过list生成的时候数据已经在内存里面了,而生成器中生成的数据是当被调用时才生成呢,这样就节省了内存空间. 1. 列表生成式,在第二篇博客里面我写了三元运算符,和那个有点像,如果要生成列表[‘01’, ‘02’, ‘03’, ..., ‘10’]怎么做?除了循环还可以用一行语句代替循环生成. list = [str(i).zeffill() for i in range(1,11)] 生成器:要创建一个generator,有很多种方法.第一种方…
''' 关键字: False:bool数据类型 True:bool数据类型 None:表示数据的内容为空 and:逻辑运算符:与 or:逻辑运算符:或 not:逻辑运算符:非 in:身份运算符,判断变量是否在序列中 is :成员运算符,判断变量是否为某个类的实例 del:删除变量或序列的值 assert:列表排序,默认从小到大排序,升序,加参数reverse=True,按降序进行排序 with:简化Python的语句 pass:表示通过(一般用来占位的) if elif else:条件判断 wh…
一.yield def EricReadlines(): seek = 0 while True: with open('D:/temp.txt','r') as f: f.seek(seek) data = f.readline() if data: seek = f.tell() yield data else: return for i in EricReadlines(): print i 二.三元运算及lambda表达式 result = 'gt' if 1>3 else 'lt' p…
最常见的内置函数是: print("Hello World!") 数学运算 abs(-5)                         # 取绝对值,也就是5 round(2.6)                       # 四舍五入取整,也就是3.0 pow(2, 3)                        # 相当于2**3,如果是pow(2, 3, 5),相当于2**3 % 5 cmp(2.3, 3.2)                   # 比较两个数的大小…
一.内置函数 注意:内置函数id()可以返回一个对象的身份,返回值为整数. 这个整数通常对应与该对象在内存中的位置,但这与python的具体实现有关,不应该作为对身份的定义,即不够精准,最精准的还是以内存地址为准. is运算符用于比较两个对象的身份,等号比较两个对象的值,内置函数type()则返回一个对象的类型 #更多内置函数:https://docs.python.org/3/library/functions.html?highlight=built#ascii 二.内置函数详情 1.abs…