# 函数: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. react component onClick 函数带参数

    <div onClick={this.toggleTip(true)}></div> toggleTip = shouldShowTip => () => { th ...

  2. Could not autowire. No beans of 'xxxx' type found的错误

    在Idea的spring工程里,经常会遇到Could not autowire. No beans of 'xxxx' type found的错误提示.但程序的编译和运行都是没有问题的,这个错误提示并 ...

  3. jieba库与词云的使用——以孙子兵法为例

    1.打开cmd安装jieba库和 matplotlib. 2.打开python,输入代码.代码如下: from wordcloud import WordCloud import matplotlib ...

  4. C++结束进程 并能显示其父进程

    声明:有些网友有可能在CSDN博客上看到过相同的文章,因为本人有两个账号...请不要误会,均为原创 这个程序功能强大哦~~ #include <cstdio> #include <w ...

  5. Oracle Database 11g安装及报错处理(win7)

    稍后会将安装过程上传.Oracle数据库安装先决条件检查失败解决方案: 1,检查失败信息中,预期值:N/A  实际值:N/A ,并未出现具体的值  查看  “详细信息” . 引起失败的原因是:无法在指 ...

  6. Android 音视频深入 二十 FFmpeg视频压缩(附源码下载)

    项目源码https://github.com/979451341/FFmpegCompress 这个视频压缩是通过类似在mac终端上输入FFmpeg命令来完成,意思是我们需要在Android上达到能够 ...

  7. spring(IOC)动态代理

    姓名:黄于霞      班级:软件151 1.引入Spring IOC的核心jar包,创建IOC的配置文件beans.xml,内容如下: 1 <?xml version="1.0&qu ...

  8. Python_Mix*random模块,time模块,sys模块,os模块

    random模块 作用: 生成随机数(整数,小数,从列表中随机抽值,打乱列表顺序) 常用函数: random.random( )生成随机小数 random.uniform( )取一个范围之间的小数 r ...

  9. Android向通讯录添加联系人的一般方法

    Android向通讯录添加联系人的一般方法 以一个简单的例子加以说明,记得需要相应的权限: 测试代码,关键的内容就在add函数里面. package zhangphil.demo; import an ...

  10. javascript数据基本类型和引用数据类型区别

    基本类型和引用数据类型区别 1.基本数据类型和引用数据类型 javascript中有两种数据类型,分别是基本数据类型和引用数据类型: 基本数据(原始数据)类型指的是简单的数据段,而引用数据类型则指的是 ...