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. 7.17python

    1.事件: # !/usr/bin/env python # !--*--coding:utf-8 --*-- # !@Time :2018/7/17 10:38 # !@Author TrueNew ...

  2. E - Radar Installation

    Assume the coasting is an infinite straight line. Land is in one side of coasting, sea in the other. ...

  3. MySQL语言 数据库练习题分解。

    一.            设有一数据库,包括四个表:学生表(Student).课程表(Course).成绩表(Score)以及教师信息表(Teacher).四个表的结构分别如表1-1的表(一)~表( ...

  4. VBS数组导出到Excel

    <script language="vbscript"> dim arr(9999,4) for i=0 to 9999 for j = 0 to 4 arr(i,j) ...

  5. Codeforces 670E - Correct Bracket Sequence Editor - [链表]

    题目链接:https://codeforces.com/contest/670/problem/E 题意: 给出一个已经匹配的括号串,给出起始的光标位置(光标总是指向某个括号). 有如下操作: 1.往 ...

  6. [No0000DD]C# StringEx 扩展字符串类 类封装

    using System; using System.Text.RegularExpressions; namespace Helpers { /// <summary> /// 包含常用 ...

  7. Page6:关于能控性、能观性、能测性及其判据(1)[Linear System Theory]

    内容包含能控性和能测性的定义,连续时间线性时不变系统能控性和能观测性判据

  8. python——二分查找算法

    从有序列表的候选区data[0:n]开始,通过对待查找的值与候选区中间值的比较,可以使候选区减少一半   二分查找: 在一段数字内,找到中间值,判断要找的值和中间值大小的比较. 如果中间值大一些,则在 ...

  9. 20165317 Linux安装及学习

    Linux安装及学习 一.Linux的安装 我通过virtualbox和ubuntu官网下载了virtualbox5.2.6和ubuntu17.04版本. 在操作过程中,我基本是按照老师的步骤进行的, ...

  10. Python开发【笔记】:获取目录下所有文件

    获取文件 import os def sub_dirs(rdir): li = os.listdir(rdir) return li def main(rdir): content = sub_dir ...