Python入门-Day6

函数
函数的定义

1.定义:
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。
Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。

2.语法
Python 定义函数使用 def 关键字,一般格式如下:
def 函数名(参数列表):
函数体

3.规则:
可以定义一个由自己想要功能的函数,以下是简单的规则:

  • 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。
  • 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
  • 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
  • 函数内容以冒号起始,并且缩进。
  • return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
  • 函数体内容不可为空,可用 pass 来表示空语句
    (pass可以用来作为占位符,比如现在还没想好怎么写函数的代码,就可以先放一个pass,让代码能运行起来。)

3.语法
Python 定义函数使用 def 关键字,一般格式如下:
def 函数名(参数列表):
函数体
(函数通常使用三个单引号 ‘’’…’’’ 来注释说明函数)

def fun(): #定义空函数
    pass 

def volume(long,wide,high):
    '''计算体积'''   
    print('体积为:',long*wide*high)
volume(1,2,3)
函数参数与作用域

参数
1.默认参数
调用函数时,如果没有传递参数,则会使用默认参数。

def num(x, n=2,m=2):#把n,m设为默认参数
    s=1
    while n > 0:
        n = n - 1
        s = (s * x) + m
    return s
num(2)
#输出结果
10
num(2,3)#提供默认参数n=3
#输出结果
23
#当不按顺序提供部分默认参数时,需要把参数名写上
num(2,m=3)
#输出结果
13

2.可变参数
定义可变参数,仅仅在参数前面加了一个*号,允许你传入0个或任意个参数

3.关键字参数
关键字参数允许你传入0个或任意个含参数名的参数

作用域

  • 一个标识符的可见范围,这就是标识符的作用域。一般常说的是变量的作用域
  • 全局作用域
    • 在整个程序运行环境中都可见
  • 局部作用域
    • 在函数、类等内部可见
    • 局部变量使用范围不能超过其所在的局部作用域
def outer():
    o = 65
    def inner():
        o = 97
        print('inner {}'.format(o))
        print(chr(o))
    print("outer {}".format(o))
    print(chr(o))
    inner()
    print(chr(o))
outer()
#输出结果
outer 65
A
inner 97
a
A
函数返回值

return [表达式] 语句用于退出函数,选择性地向调用方返回一个表达式。不带参数值的return语句返回None。

作业

实现random.sample方法
实现Max方法
实现判断两个字符串是否相等的方法

1.random.sample方法
random.sample(sequence, k),从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列,如果k大于sequence的长度,则弹出ValueError异常。

import random
list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
a = random.sample(list, 5)  # 从list中随机获取5个元素,作为一个片断返回
print(a)
print(list)
#输出结果
[3, 2, 9, 7, 6]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

2.实现Max方法
max() 方法返回给定参数的最大值,参数可以为序列。

a=max(1,2,36,3,5)
print(a)
#输出结果
36

3.实现判断两个字符串是否相等的方法

a=input('请输入一串字符串:')
b=input('请再次输入一串字符串:')
if a==b:
    print('你两次输入的字符串相同')
else:
    print('你两次输入的字符串不相同')
#输出结果
请输入一串字符串:abc
请再次输入一串字符串:asd
你两次输入的字符串不相同
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值