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. Nordic NRF51822 从零开始系列(一)开发环境的搭建

    硬件准备     (1)nrf51822 开发板一块(此处使用的是青云系列的,自带jlijnk ob+usb串口芯片)或者使用nrf51822模块+jlink_ob                 ( ...

  2. tomcat项目启动报错java.lang.ClassCastException: org.apache.xerces.parsers.XML11Configuration……

    周一上班启动项目,报错如图: 看到网上说的原因,有jar包冲突造成的,我这里的是: 情况:console打印信息有多次连接数据库,但该项目只需要连接一个库.再仔细看,发现有其他项目的信息,打开tomc ...

  3. Orchard之Module开发

    一:生成新项目 首先,要启动 Code Generation,参考<Orchard之生成新模板>. 其次,进入命令行,输入: codegen module Tminji.Requireme ...

  4. c语言之要点-泛篇

    1.goto goto由goto和标签名组成, 1 1 if(....) 2 2 { 3 3 ..... 4 4 goto part2; 5 5 } 6 6 part2: printf(". ...

  5. [No000012A]WPF(2/7):布局,容器和布局转换[译]

    概要 在上一篇文章中,我讨论了一些WPF应用的基础知识,它们是使用WPF的基本架构和内部结构.在本文中,我将讨论编写你的第一个WPF程序的基本的东西和怎么在你的窗口中布局控件.这是每一个想使用WPF的 ...

  6. [No000011F]Python教程2/9-安装Python 及其解释器介绍

    因为Python是跨平台的,它可以运行在Windows.Mac和各种Linux/Unix系统上.在Windows上写Python程序,放到Linux上也是能够运行的. 要开始学习Python编程,首先 ...

  7. [No0000F1]js获取喜马拉雅和荔枝FM电台专辑音频

    荔枝FM小书签.txt javascript: (function() { if ($('#down_url')) { $('#down_url').remove(); }; $(document.b ...

  8. OC变量限定符和属性限定符

    ARC当中变量的四种生命周期限定符 __strong __weak __unsafe_unretained __autoreleaseing __strong 是默认的限定符,无需显示引入,只要有强引 ...

  9. Python 正则表达式(分组)

    正则表达式分组 分组就是用一对圆括号"()"括起来的正则表达式,匹配出的内容就表示一个分组.从正则表达式的左边开始看,看到的第一个左括号"("表示第一个分组,第 ...

  10. c#构造函数对string类型赋初值

    public class Stu { public Stu() { //当成员属性非常多难以一一赋值时,采用本方法.当然写代码逐一成员直接赋值效率更高. AssignEmptyStringMember ...