def area(width,heigh):
return width*heigh
def print_wecome(name):
print('welcome',name) print('Runoob') w=4
h=6
print('width=',w,'heigh=',h,'area=',area(w,h)) def printme(str):
print(str)
return
printme('调用自己定义的函数')
printme('再次丢调用自己的函数') print('传不可变对象实例****************************************************************************************************')
def ChangeInt(a):
a = 10
b = 2
ChangeInt(b)
print(b) print('传可变对象实例****************************************************************************************************')
def Changeme(mylist):
mylist.append([1,2,3,4])
print('函数内取值:',mylist)
return
mylist = [10,20,30]
Changeme(mylist)
print('函数外取值:',mylist) print('调用函数时可使用的正式参数类型:必须参数*****************************************************************************')
def printme1(str):
print(str)
return
printme1('google') print('调用函数时可使用的正式参数类型:关键字参数******************************************************************************')
def printme2(name,age):
print('姓名:',name)
print('年龄:',age)
return
printme2(name='runoob',age=6) print('调用函数时可使用的正式参数类型:默认参数******************************************************************************')
def printme3(name,age=6):
print('姓名为:',name)
print('年龄为:',age)
return printme3(name='runoob',age=60)
print()
printme3(name='google') print('调用函数时可使用的正式参数类型:不定长参数******************************************************************************')
pass print('匿名函数******************************************************************************')
sum = lambda arg1,arg2:arg1+arg2
print('相加后的值为:',sum(20,30))
print('相加后的值为',sum(11,22)) print('return语句******************************************************************************')
def sum(agr11,arg22):
total=arg11=arg22
print('函数内;',total)
return total total = sum(33,44)
print('函数外:',total) print('变量作用域******************************************************************************')
'''
Local:局部作用域
Enclosing:必包函数外的函数中
Glogal:全局作用域
Build-in:内建作用域
'''
x = int(8) #内建作用域 g_count= 0 #全局作用域 def outer():
b_count=1 #闭包函数外作用域
def inner():
l_count=2 # 局部作用域 print('全局变化和局部变量******************************************************************************')
total2 = 88
def sum(arg01,arg02):
total2 = arg01+arg02
print('函数内是局部变量:',total2)
return total2
sum(1,2)
print('函数外是局部变量:',total2)

2018-11-29  10:07:22

print('global和nonlocal关键字******************************************************************************')
num = 1
def fun1():
global num
print(num)
num = 123
print(num)
fun1()
print(num) #以下代码运行会报错
# a = 10
# def test():
# a = a+1
# print(a)
# test() #修改后可以正确运行
a = 9
def test(a):
a = a+2
print(a)
test(a)

19-Python3 函数的更多相关文章

  1. python3函数

    一.python3函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.可以自己创建函数,这被叫做用户自定义函数. 1.定义函数规则 函 ...

  2. python015 Python3 函数

    Python3 函数函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可 ...

  3. 在论坛中出现的比较难的sql问题:19(row_number函数 行转列、sql语句记流水)

    原文:在论坛中出现的比较难的sql问题:19(row_number函数 行转列.sql语句记流水) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记 ...

  4. Python3函数中特殊形参的使用:*、*args、**kwargs

    Python3函数中特殊形参的使用:*.*args.**kwargs ==用法1:不定长参数== 当函数需要的参数数量不确定的时候,可以使用*args 和 **kwargs , 所有的位置参数保存在* ...

  5. 07 . Python3函数

    Python3函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.Python提供了许多内建函数,比如print().我们可以直接调用 ...

  6. 汉诺塔python3函数编写和过程分析

    !/usr/bin/env python3 -- coding: utf-8 -- 利用递归函数计算阶乘 N! = 1 * 2 * 3 * ... * N def fact(n): if n == 1 ...

  7. Python3 函数注解

    Python3提供一种语法,用于为函数声明中的参数和返回值附加元数据.下面的例子是注解后的版本,特点在第一行: 1 def clip(text : str, max_len : 'int > 0 ...

  8. 5 Python3 函数进阶&迭代器与生成器

    1.函数进阶 1.1.名称空间 又名name space, 顾名思义就是存放名字的地方,存什么名字呢?举例说明,若变量x=1,1存放于内存中,那名字x存放在哪里呢?名称空间正是存放名字x与1绑定关系的 ...

  9. Python3 函数作用域

    一 LEGB 什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 顺序是什么? 跟名字一样 ...

  10. python系列十:python3函数

    #!/usr/bin/python #-*-coding:gbk-*- '''函数的简单规则:    函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ().    任何传入参数和自变量必 ...

随机推荐

  1. windows 开启热点的命令行工具

    hotspot.bat @echo off @echo. setlocal enabledelayedexpansion if "%1" == "set" ( ...

  2. 带分数|2013年蓝桥杯B组题解析第九题-fishers

    带分数 100 可以表示为带分数的形式:100 = 3 + 69258 / 714 还可以表示为:100 = 82 + 3546 / 197 注意特征:带分数中,数字1~9分别出现且只出现一次(不包含 ...

  3. spark on yarn 无法提交任务问题

    java.lang.NoClassDefFoundError: com/sun/jersey/api/client/config/ClientConfig spark任务提交出错. 原因: spark ...

  4. HDU 5950 - Recursive sequence - [矩阵快速幂加速递推][2016ACM/ICPC亚洲区沈阳站 Problem C]

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5950 Farmer John likes to play mathematics games with ...

  5. MyBatis时间比较

    <if test="submitTime!=null and submitTime!=''"> AND DATE_FORMAT(sc.submit_time, '%Y- ...

  6. 创建本地SVN版本库以及将SVN导入GIT

    创建本地SVN 通常SVN作为一种服务,是在服务器上架设,供用户通过网络访问使用.但如果只是自己日常使用,完全可以架设在本机上,不需要启动后台程序,通过文件的方式访问即可. 建立本地SVN非常简单,一 ...

  7. Uniform Resource Name Server

    HTTP The Definitive Guide 按址标识 identify by address 按名标识 identify by name Domain Name Server Uniform ...

  8. OC中如何优化代理是否响应某个方法

    看以下示例代码: if([_delegate respondsToSelector: @selector(someClassDidSomething:)){ [_delegate someClassD ...

  9. 离线应用与客户端存储(cookie storage indexedDB)

    离线检测 HTML5定义一个属性:navigator.onLine的属性.这个属性值为true,表示设备在线,值为false,表示设备离线.为了更好的确定网络是否可用,HTML5还定义了两个事件.这两 ...

  10. spring学习(02)之配置文件没有提示问题

    配置文件没有提示问题 1 spring引入schema约束,把约束文件引入到eclipse中 (1)复制约束路径 http://www.springframework.org/schema/beans ...