Day9--Python--函数入门

函数
神马是函数:
函数是对功能或动作的封装
函数的定义:
def 函数名(形参列表): #参数
函数体(return)

调用:
ret = 函数名(实参列表)


    函数名就是变量名:
函数名的命名规则:变量的命名规则

函数的调用: 函数名()
yue() #动作可以在任何时候任何地方访问
---------------------------------------------------------------------------------
def study():
print('起床')
print('锻炼')
print('上课')
print('吃饭')
print('下课')
print('回家')
return '好累啊'

study()
print('周末休息啦')
feeling = study() #用变量接收返回值
print('学了一天感觉', feeling)
---------------------------------------------------------------------------------
函数的返回值
当函数转型之后,可以给调用者一个返回值 return
return,只要执行到return,函数的本次调用就会被停止.
1.如果函数不写return, 没有返回值,接收到的是None
2.写了return, return后面什么都不写或者return后面的是None,返回None
3.return 一个值.返回一个结果
4.return 值,值,值 返回多个值,结果是 元组

def day():
print('周一')
print('周二')
print('周三')
print('周四')
print('周五')

return '休息了', '去逛街', '吃大餐', '睡懒觉'

plan = day()
print(plan)
-----------------------------------------------------------------------
def yue(tools): #在函数声明的位置,给出来的参数叫形参.形式上的一个参数,用一个变量来表示
print('拿出手机')
print('打开%s' % tools)
print('找一找附近的人')

yue('微信') #在函数调用的地方给出的具体的值.参数叫实参,实际参数
yue('陌陌')
yue('探探')


函数的参数(一部分)
参数:函数在调用的时候给函数传递的信息
形参:在函数声明的位置的变量
实参:在函数调用的时候给形参传递的值
传参:把实参传递(赋值)给形参的过程

在函数调用的时候,把实参的值赋值给形参的过程叫传参

实参的分类:
1.位置参数.按照位置给形参赋值
2.关键字参数. 按照形参的名字给参数赋值
3.混合参数,位置参数必须放前面,关键字参数放后面


形参的分类:
1.位置参数 按照位置来声明形参
2.默认值参数 当给参数传递值的时候不起作用,不给值,默认值起作用
默认值参数:共享 (例如默认值是个list,在函数运行中被改变了,则下次运行默认值是变化后的list)
3.动态传参
顺序:位置参数必须放在前面.默认值参数必须放在后面

函数的传参。
两方面:

实参角度:
1,位置传参。按顺序,一一对应。
2,关键字传参,不按顺序,一一对应。
3,混合传参,关键字参数永远在位置参数后面。
形参角度:
1,位置传参。按顺序,一一对应。
1,默认参数。传参则覆盖,不传则默认,默认参数永远在位置参数的后面。

------------------实参:位置参数,关键字参数,混合参数------------------------
def chi(good_food, no_good_food, drink):
print("我要吃",good_food, no_good_food, drink)

# chi("大米饭", "炸鸡", "冰峰") #位置参数
# chi(drink="哇哈哈", no_good_food="薯条", good_food="盖浇饭") #关键字参数#我要吃 盖浇饭 薯条 哇哈哈
chi("小米饭", "辣条", drink="可乐") #混合参数
chi(drink="可乐", "小米饭", "辣条") #报错,关键字参数要在位置参数后面

--------------------------形参:位置参数,默认参数-------------------------------------
def regist(name, age, gender="男", grade= 100):
print(name, age, gender,grade)

regist("刘伟", 22)
regist("李铁帅", 27)
regist("高晓燕", 18, "女")
regist("李铁帅", 27)
regist("王阿花", 20,'女',90)
regist("李铁帅", 27)
regist("李铁帅", 27)
regist("李铁帅", 27)

登录验证
def login(username, password):
if username == 'alex' and password == "123":
return True
else:
return False

# 使用场景
name = input("请输入你的账号:")
pws = input("请输入你的密码:")
if login(name, pws):
print("进入刘伟的空间")
else:
print("用户名或密码错误, 请重新登陆!")
-----------------------------------------------------------
f(x) = x + 1
f(3) = 3 + 1 = 4
def f(x):
return x + 1
print(f(2))

------------------------------------------------------------
s = "你好啊我叫塞利亚"
print(len(s))

def my_len(s):
count = 0
for el in s:
count+=1
return count
print(my_len(s))



原文地址:https://www.cnblogs.com/surasun/p/9640746.html