# 函数:1、减少重复代码;
# 2、使程序变的可扩展
# 3、使程序变的易维护
# 永远只能且返回一个值
#def 定义内容
# a,b = 5,8
# c = a** b
# print(c)
#
# def calc (x,y):
# res = x**y
# return res #返回函数执行结果
# c = calc(x,y) # def sayhi():
# print("hello")
# print("my name is xiaoxiao")
# print(sayhi)
# sayhi() #加入参数
# def sayhi(name):
# print("hello",name)
# print("my name is ...")
# sayhi("xiaoxiao") #关键参数 必须放在位置参数之后
# def stu_register(name,age ,course,country="sh"):
# print("info....")
# print(name,age,course,country)
# stu_register('xiaoxiao',course= "python",age= 22) #报警,1个运维人员
# def send_alert(msg,user):
# pass
# send_alert("出事了","翠花") #报警,10个运维人员
#如果参数中出现*user,传递的参数就可以不再是固定个数,传过来的所有参数打包元祖
#方式一
# def send_alert(msg,*user):
# for line in user:
# print("报警发送给",line)
# send_alert("出事了","翠花","haha","yuyu") #方式二
# def send_alert(msg,*user):
# for line in user:
# print("报警发送给",line)
# send_alert("出事了",*["翠花","haha","yuyu"])
#
# # ** 未定义的关键字参数
# def func(name,*args,**kwargs):
# print(name,args,kwargs)
# func("haha",22,"yuyiyi",n="hskh",m="hkhkhk") #返回值 return 代表一个函数的终止
# def stu_register(name,age,course):
# print(name,age,course)
# if age > 22:
# return False
# else:
# return True
# s=stu_register("haha",27,"安保")
# print(s) #局部变量 定义在函数里面修改参数的变量,定义在函数外部的一级代码的变量叫全局变量
# 全局变量全局可用
# 如果局部有变量就调用局部变量,如果没有就调用全局的
#在函数内部可以引用全局变量
#如果全局和局部都有一个变量,函数查找的顺序,由内而外
# name = "yiyi"
# def chage_name():
# name = "一一"
# print("你的名字叫",name)
# chage_name()
# print(name) #globl 声明修改全局变量
name = "yiyi"
def chage_name():
global name
name = "一一"
print("你的名字叫",name)
chage_name()
print(name)
#返回值:
# 1、没有返回值:当没有返回值的情况下返回None
# 不写return;
# 只写return:代表结束一个函数的继续
# return None ---不常用
def yang():
l = [1,2,3,4,4,4,]
for i in l:
print(i)
if i == 1:
return
print(yang()) # 2、返回1个值;
# 可以返回返回任何数据类型;
# 只要返回就可以进行接受
# 如果遇到多个返回值时,只执行第一个
def func():
return {"f","j2"}
print(func()) # 3、返回多个值
# 多个返回值用多个变量接收,有多少返回值就用多少变量接收
def func2():
return 1,2,3
a1,a2,a3 = func2()
print(a1,a2,a3)
# 返回多个值用一个变量接收,输出是元祖
def func2():
return 1,2,3
a1 = func2()
print(a1) #参数:
s = "小护士"
def my_len(s):# 自定义函数只需要0个参数;接收参数;形式参数
i=0
for k in s:
i+= 1
return i #返回值 ret = my_len(s) #传递参数;实际参数
ret = my_len([1,2,3,4,5,2,1]) #传递参数
print(ret)

python—函数的更多相关文章

  1. python 函数之day3

    一 函数的语法及特性 什么是函数? 定义:函数是一个功能通过一组语句的集合,由名字(函数名)将其封装起来的代码块,要想执行这个函数,只要调用其函数名即可. 特性: 减少重复代码 使程序变的可扩展 使程 ...

  2. Python函数作用域的查找顺序

    函数作用域的LEGB顺序 1.什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 2.它们 ...

  3. Python函数讲解

    Python函数

  4. Python函数信息

    Python函数func的信息可以通过func.func_*和func.func_code来获取 一.先看看它们的应用吧: 1.获取原函数名称: 1 >>> def yes():pa ...

  5. Python函数参数默认值的陷阱和原理深究"

    本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...

  6. Python开发【第四章】:Python函数剖析

    一.Python函数剖析 1.函数的调用顺序 #!/usr/bin/env python # -*- coding:utf-8 -*- #-Author-Lian #函数错误的调用方式 def fun ...

  7. Python函数解析

    对于Python的函数,我们需要记住的是: 1. 函数的默认返回值是None. 2. python是一个自上而下逐行解释并执行的语言.因此,函数的定义必须在函数被调用之前.同名的函数,后定义的会覆盖前 ...

  8. Python入门笔记(18):Python函数(1):基础部分

    一.什么是函数.方法.过程 推荐阅读:http://www.cnblogs.com/snandy/archive/2011/08/29/2153871.html 一般程序设计语言包含两种基本的抽象:过 ...

  9. Python函数1

    Python 函数命令的使用 想想我们之前数学中学到的函数,首先我们需要定义一个函数,例如f(x)=x, 当x输入任意数的时候,f(x)都能输出和x相等的数值. 那么在Python中是如何实现的呢? ...

  10. python函数传参是传值还是传引用?

    首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题.基本的参数传递机制有两种:值传递和引用传 ...

随机推荐

  1. textarea跟随内容自动伸缩高度实现方案

    监听input事件,然后将textarea的style.height设置为最低高度(19px),进而获取到元素的scrollHeight,然后将scroolHeight设置为style.height

  2. vue文件上传控件

    下载地址:https://pan.baidu.com/s/1Z3pFh2J3xWa8YYnLoseasg 使用方式: <upload ref='upload' action-url='' :mu ...

  3. linux——文件操作

    1.创建文件夹 mkdir /myFolder 2.创建文件 touch hello.txt 3.复制文件 cp [-adfilprsu] 源文件 目标地址 4.移动 mv 源地址 目标地址 5.正向 ...

  4. BUAA_OO第二单元作业总结——多线程

    OO第二单元作业总结——多线程 单元任务 本单元主要的内容是通过模拟电梯的运行来熟悉多线程的实现,从简单的单部FAFS电梯开始,ALS电梯,到最后的多部ALS电梯. 一.设计策略分析总结 1.1 多线 ...

  5. activiti-explore(activiti5.17) 替换数据库

    http://blog.csdn.net/xiangwangye66/article/details/46943301

  6. php国家或者编码英文字母排序

    1.直接复制传入需要排序的字符,然后可以把返回的数据当key,传送给前台function getFirstCharter($str){ if(empty($str)){return '';} $fch ...

  7. 微信小程序onlaunch异步,首页onLoad先执行?

    按照原理是小程序初始化时会先触发APP里的onLaunch事件,之后再执行页面Page里的onLoad事件.但实际请求时在onLaunch事件中请求获取数据,等待返回值的时候Page里的onLoad事 ...

  8. HDFS的上传与下载(put & get)

    最近在做一个小任务,将一个CDH平台中Hive的部分数据同步到另一个平台中.毕竟我也刚开始工作,在正式开始做之前,首先进行了一段时间的练习,下面的内容就是练习时写的文档中的内容.如果哪里有错误或者疏漏 ...

  9. redhat 7 配置源

    http://blog.51cto.com/eagle2014/1434305 一.准备工作 Vmware Workstation 10.0虚拟机软件(http://www.vmware.com/pr ...

  10. .net core 连接mysql

    Package引入: mysql.data MySql.Data.EntityFrameworkCore Pomelo.EntityFrameworkCore.MySql 2. 在package ma ...