Python笔记(五)
- # -*- coding:utf-8 -*-
- # 函数
- # python中定义函数的规则如下:以def开头,接函数名称和(),传入的参数和变量放在圆括号中间,函数以:起始,并且缩进,return选择性的返回一个值给调用方,不带返回值的return相当于返回NONE
- print "********************1***********************"
- def printsmt(str):
- print str
- return
- printsmt(")
- # 前面说过可变对象和不可变对象,所以在参数传递时,对于不可变类型,传递的值,而对于参数本身没有影响,所以函数内部的更改不会对其产生影响;但是对于可变类型,则是将参数真正的传递过去,更改后外部的值也会收到影响
- # 传递不可变对象
- print "********************2***********************"
- def changeStr(a):
- a="
- print "Method:",a
- b="
- changeStr(b) # 输出Method:543s21
- print b # 输出12345
- # 传递可变对象
- print "********************3***********************"
- def changeList(list):
- list.append(["mango"]);
- print "Method:",list
- fruits=['apple','orange','bananas']
- changeList(fruits)
- print fruits
- # 参数:必备参数、关键字参数、默认参数、不定长参数
- # 必备参数:必须以正确的顺序传入,调用数量和声明一致
- print "********************4***********************"
- try:
- changeStr() #这里会直接返回错误 takes exactly 1 argument.
- except Exception as err:
- print(err);
- # 关键字参数:和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值,如:
- print "********************5***********************"
- def printKey(name,age):
- print name,age
- printKey("zhangsan",18) # 按传入输出
- printKey(age=19,name='lisi') # 即便输入的顺序不对,但通过调用键字输入,解释器一样可以匹配。
- # 缺省参数 缺省参数的值如果没有传就会被认为默认值。
- print "********************6***********************"
- def printDefault(name,age=35):
- print name,age
- printDefault(age=50,name="lisi") #输出 lisi 50
- printDefault("zhangsan") # 输出 zhangsan 35
- # 不定长参数 有时候传入参数的长度不确定,这时候就会定义不定长参数,如:
- print "********************7***********************"
- def printarg(arg1,*args):
- print arg1
- for arg in args:
- print arg
- printarg(1)
- printarg(1,2,3,4,5)
- # 匿名函数 使用lambda来创建匿名函数,lambda只是一个表达式,函数体比def简单的多
- print "********************8***********************"
- sum=lambda arg1,arg2:arg1+arg2
- print sum(10,20)
- # 全局变量和局部变量,变量存在作用域,定义在函数内部的变量有一个局部作用域,只能在函数内部生效,定义在函数外部的拥有全局作用域。
Python笔记(五)的更多相关文章
- guxh的python笔记五:面向对象
1,面向对象编程思想 类:一类具有相同属性的抽象 属性(静态属性):实例变量.类变量.私有属性 方法(动态属性):构造函数.析构函数(默认就有).函数.私有函数 对象/实例:类经过实例化后,就是对象/ ...
- python笔记五:IO与文件
1.python IO: Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘: 1)raw_input([prompt]) 函数从标准输入读取一个行,并返回一个字符串 2 ...
- python笔记五(条件判断/循环/break和continue)
一 条件判断 if <条件判断1>: <执行1> elif <条件判断2>: <执行2> elif <条件判断3>: <执行3> ...
- Python笔记(五)_内置函数BIF
查看所有的内置函数:dir(__builtins__) abs() 获取绝对值 max() 返回给定元素中的最大值 min() 返回给定元素中的最小值 sum() 求和 reverse ...
- Python笔记(五):异常处理和数据存储
注:和上一篇有关联 (一) finally 和 输出异常信息 try: the_man = open(r'C:\Users\123456\Desktop\test.txt') ...
- Python笔记之不可不练
如果您已经有了一定的Python编程基础,那么本文就是为您的编程能力锦上添花,如果您刚刚开始对Python有一点点兴趣,不怕,Python的重点基础知识已经总结在博文<Python笔记之不可不知 ...
- Crazyflie笔记五: CRTP 实时通信协议(一)(转)
源:Crazyflie笔记五: CRTP 实时通信协议(一) 这里详细介绍了 Crazyflie 的 CRTP实时通信协议的相关内容,由于内容很长,分几篇博文来讲述.这里是第一节内容.欢迎交流:301 ...
- s21day10 python笔记
s21day10 python笔记 一.函数补充 1.1 参数 基本参数知识 def get_list_date(aaa): #aaa:形式参数(形参) 任意个数 v = [11,22,33,44] ...
- s21day02 python笔记
s21day02 python笔记 一.昨日内容回顾及补充 内容回顾 补充 if条件语句嵌套 10086示例 pycharm更改解释器 python3.7解释器 python2.7解释器 二.循环语句 ...
- s21day01 python笔记
s21day01 python笔记 一.计算机基础 计算机的初步认识 用户:人 软件:QQ.浏览器等 解释器/编译器/虚拟机:java解释器.python解释器等 操作系统 硬件:CPU.内存.硬盘. ...
随机推荐
- CI中的分页
根据MVC的思想,分页是需要传数据到模型中,把页码传过去,在模型中根据页码分配: 更多分页类函数可以通过CI手册的分页类查看: $this -> load ->library('pagin ...
- asp.net URL传递中文参数System.Web.HttpUtility.UrlEncode与Server.UrlEncode的区别
asp.net URL传递中文参数System.Web.HttpUtility.UrlEncode与Server.UrlEncode的区别(一) HttpUtility.UrlEncode 方法: 对 ...
- C#自定义控件实现控件随窗口大小改变
1.新建用户控件,取名MyForm. 2.将默认的UserControl改成Form 3.在类中添加以下代码 private float X, Y; //获得控件的长度.宽度.位置.字体大小的数据 p ...
- echarts 纵坐标数字太长显示补全,以及文字倾斜显示
如上数字太长,显示补全,以及x坐标的月份当数量大的时候也会显示补全: x可以调节纵坐标label的宽度 y2可以调节横坐标label的高度 grid: { x: 100, //默认是80px y: 6 ...
- Java的编译与运行
编译: 是指将我们编写的Java源文件翻译成JVM认识的 .class 文件, 在这个过程中,javac 编译器会检查我们所写的程序是否有错误,有错误就会提示出来,如果没有错误就会编译成功. 运行: ...
- 团体程序设计天梯赛-练习集-L1-029. 是不是太胖了
L1-029. 是不是太胖了 据说一个人的标准体重应该是其身高(单位:厘米)减去100.再乘以0.9所得到的公斤数.已知市斤是公斤的两倍.现给定某人身高,请你计算其标准体重应该是多少?(顺便也悄悄给自 ...
- gitlab安装和汉化
Centos 7.x 安装 gitlab-ce-8.8.0-ce 一.安装配置依赖项 yum -y install curl unzip policycoreutils git wget # 依赖包 ...
- PHP如何判断一个数组是一维的还是二维的
1.首先我们有一个PHP内置函数 count(); count(array,mode); array是数组,mode默认为0,1是递归的计数 <?php if(count($arr) == co ...
- ios高效开发二--ARC跟block那点事
block是可以捕捉上下文的特殊代码块. block可以访问定义在block外的变量,当在block中使用时,它就会为其在作用域内的每个标量变量创建一个副本. 如果通过self拥有一个block,然后 ...
- Linux下MATLAB安装及使用
安装过程 1.在在media目录下创建matlab文件夹,并挂载R2017b_glnxa64_dvd1.iso镜像文件 sudo mkdir /media/matlab sudo mount -t a ...