python—函数
# 函数: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—函数的更多相关文章
- python 函数之day3
一 函数的语法及特性 什么是函数? 定义:函数是一个功能通过一组语句的集合,由名字(函数名)将其封装起来的代码块,要想执行这个函数,只要调用其函数名即可. 特性: 减少重复代码 使程序变的可扩展 使程 ...
- Python函数作用域的查找顺序
函数作用域的LEGB顺序 1.什么是LEGB? L:local 函数内部作用域 E:enclosing 函数内部与内嵌函数之间 G:global 全局作用域 B:build-in 内置作用域 2.它们 ...
- Python函数讲解
Python函数
- Python函数信息
Python函数func的信息可以通过func.func_*和func.func_code来获取 一.先看看它们的应用吧: 1.获取原函数名称: 1 >>> def yes():pa ...
- Python函数参数默认值的陷阱和原理深究"
本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...
- Python开发【第四章】:Python函数剖析
一.Python函数剖析 1.函数的调用顺序 #!/usr/bin/env python # -*- coding:utf-8 -*- #-Author-Lian #函数错误的调用方式 def fun ...
- Python函数解析
对于Python的函数,我们需要记住的是: 1. 函数的默认返回值是None. 2. python是一个自上而下逐行解释并执行的语言.因此,函数的定义必须在函数被调用之前.同名的函数,后定义的会覆盖前 ...
- Python入门笔记(18):Python函数(1):基础部分
一.什么是函数.方法.过程 推荐阅读:http://www.cnblogs.com/snandy/archive/2011/08/29/2153871.html 一般程序设计语言包含两种基本的抽象:过 ...
- Python函数1
Python 函数命令的使用 想想我们之前数学中学到的函数,首先我们需要定义一个函数,例如f(x)=x, 当x输入任意数的时候,f(x)都能输出和x相等的数值. 那么在Python中是如何实现的呢? ...
- python函数传参是传值还是传引用?
首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题.基本的参数传递机制有两种:值传递和引用传 ...
随机推荐
- js里面对数据处理的方法
1,charAt()方法可返回指定位置的字符 JavaScript String 对象 例:stringObject.charAt(index) index:表示字符串中某个位置的数字,即字符在字 ...
- 回文的范围——算法面试刷题2(for google),考察前缀和
如果一个正整数的十进制表示(没有前导零)是一个回文字符串(一个前后读取相同的字符串),那么它就是回文.例如,数字5, 77, 363, 4884, 11111, 12121和349943都是回文. 如 ...
- Oracle单机Rman笔记[3]---RMAN脱机备份及命令基础介绍
A.NOARCHIVELOG模式下的物理备份 1.完全关闭数据库 2.备份所有的数据库文件.控制文件.联机重做日志 3.重新启动数据库 B.RMAN的体系结构概述 重新构建控制文件: 将控制文件备份为 ...
- Java基本类型内存字节数
基本类型 字节数 位(bit) 取值范围 byte 1 1*8 -128~127 short 2 2*8 int 4 4*8 long 8 8*8 float 4 4*8 double ...
- GNOME 系统设置
详细的GNOME系统设置全文,参见这里. 以下摘录使用到的部分. 1. 在任务栏上显示日期或周几(二选一).秒数 $ gsettings set org.gnome.desktop.interface ...
- VS2013中调驱动
https://msdn.microsoft.com/en-us/library/windows/hardware/jj200334(v=vs.85).aspx 需要注意的就是 debugport:n ...
- INSERT INTO SELECT
今天遇到一个问题在写把查询的数据添加到一个表里时出现问题 sql INSERT INTO db1_name(field1,field2) VALUES SELECT field1,field2 FR ...
- Linux安装TeamViewer
1.下载teamview centos版本 官网只有rpm版本,附件中即为官网下载的teamview最新版本 (下载tar包方式,我这里打不开teamviewer的界面,所以这里不推荐) 官方下载地址 ...
- 【webpack学习笔记】a01-基础构建
webpack基于nodejs环境运行,首先确认已经安装了node.js. 基础构建流程 新建一个文件夹,这个就是你项目的根目录. 在命令行中使用npm init命令初始化npm,会得到一个 ==pa ...
- R语言的精度和时间效率比较(简单版)
R语言的最大数值 在R语言里面,所能计算的最大数值可以用下面的方法获得: ###R可计算最大数值 .Machine 在编程的时候注意不要超过这个数值.当然,普通情况下也不可能超过的. R语言的最大精度 ...