day5 函数】的更多相关文章

一.递归与二分法 一.递归 1.递归调用的定义 递归调用:在调用一个函数的过程中,直接或间接地调用了函数本身 2.递归分为两类:直接与间接 #直接 def func(): print('from func') func() func() # 间接 def foo(): print('from foo') bar() def bar(): print('from bar') foo() foo() 3.递归调用的特点和使用的注意点 递归调用:在调用一个函数的过程中,直接或间接地调用了函数本身 py…
  1.求全部元素的和 [1,2,1,2,3,3,3,3] 遍历 a = [1,2,1,2,3,3,3,3] sum = 0 n = len(a)-1 while n>=0: sum += a[n] n -= 1 2.求偶数元素的和 [1,2,1,2,3,3,3,3] a = [1,2,1,2,3,3,3,3] b = [] for i in a: if i//2 == 0: b.append(i) sum = 0 n = len(b)-1 while n>=0: sum+=b[n] n-=1…
1.写函数,检查获取传入列表或者元祖的对象的所有奇数位索引的元素,并将作为新的列表返回给调用者 #解1: def lis(x): lis_1 = [] for i in range(len(x)): #循环下标 if i % 2 == 1: lis_1.append(x[i]) return lis_1 test = lis([5,32,54,66,4]) print(test) #解2:利用切片 def lis(x): new_lis = x[1::2]#下标从1开始,[::]代表所有,2代表…
函数就是最基本的一种代码抽象的方式 定义一个函数使用def语句 def my_abs(x): if x >= 0: return x else: return -x 定义一个什么事也不做的空函数(可以用来作为占位符) def nop(): pass 数据类型检查可以用内置函数 isinstance()实现: def my_abs(x): if not isinstance(x, (int, float)): raise TypeError('bad operand type') if x >=…
目录:Python自动化运维笔记 Python自动化运维 - day2 - 数据类型 Python自动化运维 - day3 - 函数part1 Python自动化运维 - day4 - 函数Part2 Python自动化运维 - day5 - 函数part3.模块与包 Python自动化运维 - day6 - 常用模块 Python自动化运维 - day7 - 面向对象 Python自动化运维 - day8 - 面向对象高级及异常处理 Python自动化运维 - day8 - socket编程…
day2:python的简介与认识day2:# 1.写一个登录程序# username# passwd# 让用户输入账号和密码,输入用户和密码输入正确的话# 提示你 xxx,欢迎登录,今天的日期是xxx,程序结束# 错误的话,提示账号/密码输入错误# 最多输入3次,如果输入3次都没有登录成功,提示失败次数过多.# 需要判断输入是否为空.# http://www.nnzhp.cn/archives/162 参考这个博客 count=0 username = 'fancy' passwd = 123…
笔记来源 Day-1 基础知识(注释.输入.输出.循环.数据类型.随机数) #-*- codeing = utf-8 -*- #@Time : 2020/7/11 11:38 #@Author : HUGBOY #@File : hello1.py #@Software: PyCharm print("hello word !") #注释 ''' 注释多行注释 ''' ''' ===输入=== #格式化输出 a = 100 print("变量",a) age = 1…
内置函数 用验证码作为实例 字符串和字节的转换 字符串到字节 字节到字符串…
递归 反射 os模块 sys模块 hashlib加密模块 正则表达式 反射 python中的反射功能是由以下四个内置函数提供:hasattr.getattr.setattr.delattr,改四个函数分别用于对对象内部执行:检查是否含有某成员.获取成员.设置成员.删除成员. class Foo(object): def __init__(self): self.name = 'wupeiqi' def func(self): return 'func' obj = Foo() # #### 检查…
一.递归 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. 递归要求: 1. 必须有一个明确的结束条件 2. 每次进入更深一层递归时,问题规模相比上次递归都应有所减少 3. 递归效率不高,递归层次过多会导致栈溢出(在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧.由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出) def calc(n): print(n) if…
一.协程函数 1.把函数的执行结果封装好__iter__和__next__,即得到一个迭代器2.与return功能类似,都可以返回值,但不同的是,return只能返回一次值,而yield可以返回多次值3.函数暂停与再继续运行的状态是有yield保存 # def func(count): # print('start') # while True: # yield count # count+=1 # # g=func(10) # # print(g) # print(next(g)) # # p…
目录 python day 5 1. 匿名函数lambda 2. python的内置函数 3. python文件操作 4. 递归函数 5. 冒泡排序 6. 装饰器 python day 5 2019/10/08 学习资料来自老男孩教育 1. 匿名函数lambda 函数名就是变量,使用lambda表达来创建一些简单功能的函数. lambda定义简单函数时,比用def定义要简洁,会用在map,reduce,filter等函数中. ```def f1(x,y): return x+y ret = f1…
一.内置函数 globals()    将全部的全局变量以字典的形式返回 locals()      将当前作用域的所有变量以字典的形式返回 a = 1 b = 2 def func(x): c = 3 d = 4 print(locals()) # 当前作用域的所有变量以字典的形式返回 print(globals()) # 全局所有的变量以字典的形式返回 func(1) # 结果 {'d': 4, 'c': 3, 'x': 1} {'__name__': '__main__', '__doc_…
字符串 1.单引号,双引号,三引号括起来的都是字符串    索引  从0开始  str[0]    遍历   for循环    判断字符串中是否都是数字    ,字母  返回bool型          string.isdecimal()       string.isalpha()    字符串替换    默认会全部替换           string.replace(old,new,次数)      字符串查找               string.find(字符串)  ---- 有…
1.迭代器 # ### 迭代器 """能被next调用,并不断返回下一个值的对象""" """ 特征:迭代器会生成惰性序列,它通过计算把值依次的返回,一边循环一边计算而不是一次性得到所有数据 优点:需要数据的时候,一次取一个,可以大大节省内存空间.而不是一股脑的把所有数据放进内存. """ # 1.可迭代对象 """ 如果一个数据类型其中的成员包含了__it…
引子:对于关键字参数,调用时可以传入任意个不受限制的关键字参数,至于到底传入了哪些,就需要在函数内部通过[函数里定义的关键字参数]检查,例子里就是通过otherinfo检查.        >>> def person(name,age,**otherinfo):        ...     print('name:',name,'age:',age,'Other infomations:',otherinfo)        ...    例如,我们希望检查是否包含sex和city参…
现在我们学完了位置参数.默认参数.可变参数.关键字参数.命名关键字参数五种参数类型.在Python中定义函数,可以使用这五种参数进行组合.但是参数定义的顺序必须是:必选参数.默认参数.可变参数.命名关键字参数和关键字参数             def f1(a, b, c=0, *pp, **kw):                print(a,b,c,pp,kw)            dd = [9,10,12,14,15,17,19,20]            dk = {'q':9…
可变参数可以传入任意个参数,并在函数调用时自动组为一个tuple,而关键字参数允许传入任意个携带参数名的参数,这些关键字参数在函数内部自动组为一个dict.         >>> def person(name,age,**otherinfo):        ...     print('name:',name,'age:',age,'Other infomations:',otherinfo)        ...        >>> person('张三',2…
传入的参数的个数是可变的. 例子:定义一个函数,通过给出一组数,返回这组数中最大值与最小值的和.    def msum(numbers):        r = max(numbers) + min(numbers)        return r            >>>msum([1,2,3,4,5])    6    numbers需要为list或者tuple,相当于:    a = [1,2,3,4,5]    msum(a)    如果使用可变参数,那么调用函数时的变化如…
位置参数    调用函数时,传入函数的参数,按照位置顺序依次赋值给函数的参数.#计算乘方的函数                def power(x, n):            s = 1            while n > 0:                n = n - 1                s = s * x            return s        在使用power(1,2)时, 会根据位置顺序,将1赋值给x ,2 赋值给n. 默认参数    如果希望…
定义函数    Python中定义函数要使用def语句.     依次写出函数名.括号.括号中的参数和冒号,在缩进块中编写函数体,通过return语句返回函数返回值.如:                        def my_abs(x):                    if x >= 0:                        return x                    else:                        return -x       …
函数就是最基本的一种代码抽象的方式.函数只需写一次,就可以多次调用.Python本身内置了很多有用的函数,可以直接调用. 调用函数    要调用一个函数,需要知道函数的名称和参数.可以通过help(xxx) 的方式查看对应函数的帮助信息.如果参数输入错误,注意看报错信息.     abc()   求绝对值,仅支持一个参数    max()   取最大值,支持多个参数 数据类型转换函数    int()    float()    str()    bool()                >>…
title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 --- 1.多层装饰器 多层装饰器的原理是,装饰器装饰函数后,其实也是一个函数,这样又可以被装饰器装饰. 编译是从下至上进行的,执行时是从上至下进行. #!/usr/bin/env python # _*_coding:utf-8_*_ ''' * Created on 2016/11/29 20:38. * @author: Chinge_Yang.…
python笔记 - day5 参考: http://www.cnblogs.com/wupeiqi/articles/5484747.html http://www.cnblogs.com/alex3714/articles/5161349.html http://www.cnblogs.com/wupeiqi/articles/5501365.html 大纲: 双层装饰器 python字符串格式化 python生成器 python迭代器 python模块介绍 python序列化之json p…
python_way.day5 1.模块3 time,datetime, json,pickle 2.双层装饰器 3.字符串格式化 4.生成器 5.递归 6.模块倒入 7.第三方模块倒入 8.序列化反序列化 9.日志处理 1.模块 1.time time:time.time()1465120729.18217 1987.1.1 0:0分 开始以秒计时 time.ctime()Mon Jun  6 22:56:53 2016 当前系统时间 time.ctime(time.time()-86400)…
Spark菜鸟学习营Day5 分布式程序开发 这一章会和我们前面进行的需求分析进行呼应,完成程序的开发. 开发步骤 分布式系统开发是一个复杂的过程,对于复杂过程,我们需要分解为简单步骤的组合. 针对每个简单步骤,难度会降低,学习成本降低 每个步骤都可以作为里程碑,可以反馈进展,同时,有助树立目标感. Step1:需求分析 1.1 拆分程序,形成步骤 以语句为单位拆分,一般一个语句就是一个步骤 1.2 对步骤进行分类 根据需求分析指南,分入A1.A2.B1等规则小类 1.3 分析每个步骤的输入输出…
Python 之路 Day5 - 常用模块学习   本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configparser hashlib subprocess logging模块 re正则表达式 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能…
一.时间复杂度 (1)时间频度: 一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费的时间就多.一个算法中的语句执行次数称为语句频度或时间频度,记为T(n). (2)时间复杂度: 在上面提到的时间频度中,n称为问题的规模,当n不断变化时,时间频度T(n)也会不断变化.但有时我们想知道它变化时呈现什么规律.为此,我们引入时间复杂度概念. 一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数,用T(n)表示,若有某个辅助函数f(n),使得当n趋近于无穷大时,…
本节目录: 1.生成器 1.1 列表推导式方法 1.2 函数法--适用复杂的推导方法2.迭代器3.装饰器 3.1 单一验证方式(调用不传参数) 3.2 单一验证方式(调用传参数) 3.3 多种验证方式4.模块 4.1 第三方模块 4.2 标准库 4.3 sys模块5.json 5.1 json序列化 5.2 json反序列化 1.生成器1.1 列表推导式方法data = [1,2,3]data = (i*2 for i in data)print(data)print(data.__next__…
运算符,顾名思义就是用于运算的符号,比如最简单的+-*/,这些运算符可以用来进行数学运算,举个最简单的栗子: 已知长方形的长为3cm,高为4cm,求长方形的面积. 好,我们先新建一个项目,命名为Rectangle. 然后右键src文件夹,新建一个package,命名为pers.frank.rectangle. 这里补充说明一下包的命名规则,相信很多人都知道,包命名的时候用去www域名反写,加上项目名称,但实际上,那一般是用于公司项目的命名方式,对于不同项目,有着不同的命名规则. indi :个体…