# 函数: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. Vue-CLI3.0版本配置BootStrap的方法

    一.引入jquery bootstrap popper   用   cnpm install jquery bootstrap@3 popper.js --save  用cnpm 来导入 用npm会出 ...

  2. Flex4之皮肤定制

    Flex4之皮肤定制[Skin类和Skin类]          博客分类: RIA-Flex4专栏 FlexAdobeUPFlashUI 第一.关于spark.skin.SparkSkin类的 1. ...

  3. python webdriver api-对启动的火狐浏览器添加配置

    Webdriver启用的火狐不带插件,可以自已进行配置 先找到火狐的安装路径 C:\Program Files\Mozilla Firefox 步骤说明 在CMD中使用cd命令进入firefox.ex ...

  4. jacoco覆盖率工具测试及性能分析

    ant版本:https://ant.apache.org/bindownload.cgi jdk版本 注: ant 1.10    --->   jdk1.8 ant 1.9      ---& ...

  5. 美团2017年CodeM大赛-初赛B轮-黑白树

    https://ac.nowcoder.com/acm/problem/13249 链接:https://ac.nowcoder.com/acm/problem/13249来源:牛客网 题目描述 一棵 ...

  6. Maven 插件打包部署项目

    clean install -Dmaven.test.skip=true:打包工具 clean package  

  7. web功能测试之表单、搜索测试

    初入职场接触功能测试老是碰到以下情况不知道怎么写测试用例: 一个界面很多搜索条件怎么写用例?下拉框测试如何考虑测试点?上传要考虑哪些验证点?...... 所以这篇主要是整理关于web测试之表单.搜索测 ...

  8. ubuntu16.04安装anaconda、环境配置

    anaconda默认3.7降级到3.6 conda install python=3.6 anaconda安装后找不到conda命令: 执行测试命令 conda info -e conda: comm ...

  9. vscode 创建.net core项目初体验

    微软的virtual studio编辑器那是宇宙第一大编辑器,可惜就是太笨重,遇到性能差一些的电脑设备,简直无法快速的编辑项目. 而vs code编辑器轻便易用,想要编辑哪种项目,只需扩展插件就OK, ...

  10. easyui combobox模糊搜索

    combobox实现模糊搜索功能 <input class="easyui-combobox" id="hybq_PADD" name="hyb ...