流控制 和函数

1)流控制

1.条件语句

if elif else  if else

2.循环语句

while for

3.continue 和break

continue是跳过本次循环,执行下一次循环

break是跳出当前循环体,执行下一条语句

举例:九九乘法表:

for i in range(1,10):
for j in range(1,i+1):
print('%s*%s=%s' %(j,i,i*j),end='\t')
print('')

2)函数

1.函数定义:def 函数名():

2.python中的内置函数:可以用导入import builtins dir(builtins) 来查看内置函数,参考网址:https://www.runoob.com/python/python-built-in-functions.html

3.python中的匿名函数用lamba x:表达式,返回值为表达值

eg:a=lambda x:x*2 a(1) 返回1

4.递归函数:斐波那锲序列

eg:

def f(n):
if n==1 or n==0:
return 1
else:
return f(n-1) + f(n-2)

print(f(6))

5.高阶函数:函数当作参数一块调用

def func_gj(func,num):
  print(type(func))
  a =func(num)
  print(a)

a = lambda x: 1
func_gj(a,100)

6.函数的作用域LEGB

L: 局部变量 局部作用域 local
E: 闭包变量 闭包空间 enclosing
G: 全局变量 整个文件 global
B: 内置变量 整个解释器 builtins

举例说明:

a=1 #G
b=2 #G
def func_a(a,b):
  a=1 #l
  c=10 #l
  print(b)
  def func_b(arg1,arg2):
    global b
    nonlocal c
    b = a+4 #G
    c+=3 #E
    print(a,b,c)
  return func_b

func_a(3,90)(1,2)
#90 1 5 13

print(a,b)
#1 5

7.函数中的参数:位置参数,默认参数,可变参数,命名关键字参数,命名关键字参数

举例:

def my_sum(*args,**kwargs):
  ret =0.0
  for i in args:
    ret+=i
  for v in kwargs.values():
    for i in v:
    ret+=int(i)
  return ret
ret1 = my_sum()
ret2=my_sum(10)
ret3=my_sum(1,2,3)
ret4=my_sum(1,2,**{"nums":[3,1]})
ret5=my_sum(**{"nums":['1','2','3']})
print(ret1,ret2,ret3,ret3,ret4,ret5)


python学习06的更多相关文章

  1. Python学习06——列表的操作(2)

    笨办法学Python第39节 之前用的第三版的书,昨天发现内容不对,八块腹肌又给我下了第四版,这次的内容才对上.本节的代码如下: ten_things = "Apples Oranges C ...

  2. Python学习--06切片

    Python里提供了切片(Slice)操作符获取列表里的元素. 示例: >>> L = [1,2,3,4,5] # 取前2个元素,传统方法 >>> [L[0],L[ ...

  3. python学习06循环

    '''while''''''while 布尔表达式:冒号不能省略''''''1+2+3+...+10'''i=1sum1=0while i<=10: sum1+=i i+=1print(sum1 ...

  4. Python 学习文章收藏

    作者 标题 rollenholt Python修饰器的函数式编程 - Rollen Holt - 博客园 rollenholt python操作gmail - Rollen Holt - 博客园 ro ...

  5. Python学习的个人笔记(基础语法)

    Python学习的个人笔记 题外话: 我是一个大二的计算机系的学生,这份python学习个人笔记是趁寒假这一周在慕课网,w3cschool,还有借鉴了一些博客,资料整理出来的,用于自己方便的时候查阅, ...

  6. Python 学习教程汇总

    Python快速教程http://www.cnblogs.com/vamei/archive/2012/09/13/2682778.html简明Python教程https://bop.molun.ne ...

  7. python学习博客地址集合。。。

    python学习博客地址集合...   老师讲课博客目录 http://www.bootcdn.cn/bootstrap/  bootstrap cdn在线地址 http://www.cnblogs. ...

  8. Python学习day5作业

    目录 Python学习day5作业 ATM和购物商城 1. 程序说明 2. 基本流程图 3. 程序测试帐号 4. 程序结构: 5. 程序测试 title: Python学习day5作业 tags: p ...

  9. python 学习笔记 13 -- 经常使用的时间模块之time

    Python 没有包括相应日期和时间的内置类型.只是提供了3个相应的模块,能够採用多种表示管理日期和时间值: *    time 模块由底层C库提供与时间相关的函数.它包括一些函数用于获取时钟时间和处 ...

随机推荐

  1. C#语言中的修饰符

    public:公有访问.不受任何限制. private:私有访问.只限于本类成员访问,子类和实例都不能访问. protected:保护访问.只限于本类和子类访问,实例不能访问. internal:内部 ...

  2. 修改rpm中的文件重新打包

    1.安装rpmrebuild 和安装rpmbuild rpmrebuild下载链接:https://sourceforge.net/projects/rpmrebuild/files/rpmrebui ...

  3. windows下mysql 5.7以上版本安装及遇到的问题

    (原) 早些前用window安装mysql挺简单的,一个安装程序,一路下一步. 2006的5.0版本,确实太早了点. 于是官网上又下了一个版本,windows也是提供了二个版本Installer(安装 ...

  4. 好程序员web前端分享HTML基本结构和基本语法

    HTML基本结构和HTML基本语法 HTML基本结构 HTML的基本语法 1.<常规标记><标记 属性=“属性值” 属性=“属性值”></标记> 标记也可叫标签或叫 ...

  5. ASP.NET Core 搭配 Nginx 的真实IP问题

    一.前言 Nginx(Engine X)是一个高性能HTTP和反向代理服务,是由俄罗斯人伊戈尔·赛索耶夫为访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发 ...

  6. VS2019 实用操作

    本文列出了在编写程序过程中的几个非常实用的操作方式,通过这些操作方式,可以在一定程度上减少重复操作.提高编码效率.改善编程体验. 列模式操作 列操作是一项很常用且实用的功能,可以一次性修改不同的行. ...

  7. keras04 - 阿狗阿猫识别 面向对象编程

    参考:https://www.bilibili.com/video/av32756783

  8. Vue—组件传值及vuex的使用

    一.父子组件之间的传值 1.父组件向子组件传值: 子组件在props中创建一个属性,用以接收父组件传来的值 父组件中注册子组件 在子组件标签中添加子组件props中创建的属性 把需要传给子组件的值赋给 ...

  9. $_SERVER['HTTP_REFERER']的使用

    转载:http://www.5idev.com/p-php_server_http_referer.shtml 使用 $_SERVER['HTTP_REFERER'] 将很容易得到链接到当前页面的前一 ...

  10. 解决CentOS6.5下MySQL5.6无法远程连接的问题

    在CentOS6.5上安装了Mysql5.6,,本地服务启动成功,但是远程使用Navicat无法远程连接到MySQL数据库,为了解决这个问题,方法如下: (1)先将MySQL服务停掉# service ...