Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数

内容大纲

1.函数的初识

2.函数的定义

3.函数的调用

4.函数的返回值

5.函数的参数

1.函数初识

# def 关键字 -- 定义
# func 函数名 -- 和变量定义规则一样
# () 必须要写格式 ,一会在盘他
# : 声明语句结束 # len()
# s = "alexdab"
# count = 0
# for i in s:
# count += 1
# print(count)
#
# s = [1,2,23,3,4,5,6]
# count = 0
# for i in s:
# count += 1
# print(count)
#
#
# s = (1,2,23,3,4,5,6)
# count = 0
# for i in s:
# count += 1
# print(count) # def func():
#
# s = (1,2,23,3,4,5,6)
# count = 0
# for i in s:
# count += 1
# print(count)

2.函数的定义

# 定义一个函数:

# def my_len():
# 函数体 # def my_len():
# s = (1,2,23,3,4,5,6)
# count = 0
# for i in s:
# count += 1
# print(count)

3.函数的调用

# 调用函数
# my_len() # 函数名+() print() input() # def yue():
# print("打开手机")
# print("打开微信")
# print("找到女友")
# print("晚上约吗") # def yue():
# print("打开手机")
# print("打开微信")
# print("找到女友")
# print("晚上约吗") # print("起床")
# print("上课")
# yue()
# print("吃饭")
# print("检查一下")
# yue()

4.函数的返回值

# 函数的返回值

# print(12)
# def yue():
# print("打开手机")
# print("打开微信")
# return 111
# print("找到女友")
# print("晚上约吗")
# return "萝莉小姐姐","大妈","人妖" # return 返回
# print("确实有点累")
#
# print(yue()) # 111
# print(1234) # lst = [1,2,3,4,5,6]
# def func():
# for i in lst:
# print(i)
# print(func()) # lst = [1,2,3,4,5]
# def func():
# for i in lst:
# print(i)
# lst.append(input(">>>"))
# return lst
#
# func() # [1,2,3,4,5,"9"] # return的内容返回给了函数的调用
# return下方的代码不执行,终止这个函数
# return 返回多个内容的时候还是元组形式
# return 没有写返回值的时候返回的是None,不写return返回的也是None

5.函数的参数

# 位置传参:
# def yue(a,b,c): # 形参
# print("打开手机")
# print(f"打开{a},{c},{b}")
# print("附近的人")
# print("找个妹子")
# print("聊一聊")
#
# yue(True,(12,4,3),[1,2,3,4]) # 实参 # def func(a,b=1): #b=1 默认参数
# print(a,b)
# func(3,8) # 姓名,性别,年龄
# def userinfo(name,age,sex="男"): # 位置参数 > 默认参数
# print(name,sex,age)
#
# count = 5
# while count:
# name = input("name:")
# sex = input("sex(男性直接回车!):")
# age = input("age:")
# if sex == "女":
# userinfo(name,age,sex)
# else:
# userinfo(name, age)
# count -= 1 # def func(a,c,b=1): # a,c位置参数 ,b=1 是默认参数
# print(a,b,c)
#
# func(a=1,b=5,c=2) # a=1,b=5,c=2 是关键字参数 # def func(a,b,c):
# print(a,b,c)
# func(1,2,c=5) # 混合参数 形参: 函数的定义中括号里是形参
实参: 函数的调用括号里是实参
位置传参时 形参和实参必须一一对应
传参: 将实参传递给形参的过程就是传参 函数的参数:
形参: 函数定义的时候叫做形参
# 位置参数
# 默认参数
# 混合参数 实参: 函数调用的时候叫做实参
# 位置参数
# 关键字参数
# 混合参数 传参: 将实参传递给形参的过程叫做传参

6.今日总结

# 函数的好处:
# 1.减少代码重复性 (冗余)
# 2.代码可读性高
# 3.将功能进行封装(造工具) # 定义函数
# def func():
# print(1) # def 关键字
# func 函数名
# () 传递参数
# : 语句结束 # 提示作用, 没有约束作用
# def func(a:int,b:str):
# print(a,b)
# func(1,2) # 调用函数
# 函数名+()
# 多次调用就是执行多次
# 可以循环调用 # 返回值:
# return 返回值
# return 返回一个内容(就是内容本身) 可以返回任意类型
# return 返回多个内容,以元组的形式返回
# return 终止函数 ,切记不能终止循环
# return 下方的代码不执行
# return 不写返回值或者没有return就返回None
# return 将内容返回给了函数的调用 #参数:
# 形参: 函数定义的时候叫做形参
# 位置参数
# 默认参数
# (位置,默认) 混合参数
# 优先级: 位置 > 默认 # 实参: 函数调用的时候叫做实参
# 位置参数
# 关键字参数
# (位置,关键字) 混合参数
# 优先级: 位置 > 关键字 # 传参: 将实参传递给形参的过程叫做传参
# 位置传参的时候必须一一对应
# 形参是默认的参数时,实参传递时可以不写.写了内容就会把形参的默认参数覆盖

6.今日练习

# 1.整理函数相关知识点
#
# 2.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
# lst = [1,2,3,4]
# def func(a):
# lst_2 = []
# for i in range(len(a)):
# if i % 2 == 1:
# lst_2.append(a[i])
# return lst_2
# print(func(lst)) # 3.写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
# s = "abcde"
# def func(a):
# if len(a) > 5:
# print("大于5")
# else:
# print("不是大于5")
# func(s)
#
# 4.写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
# lst = [1,2,3,4,5]
# def leg(a):
# if len(lst) > 2:
# return lst[:2]
# print(leg(lst))
#
# 5.写函数,计算传入函数的字符串中,[数字]、[字母] 以及 [其他]的个数,并返回结果。
# s = input("请输入字符串:")
# def func(a):
# int_number = 0
# word_number = 0
# qt_number = 0
# for i in s:
# if i.isdecimal():
# int_number += 1
# elif i.isalpha():
# word_number += 1
# else:
# qt_number += 1
# return int_number,word_number,qt_number
# print(func(s))
#
# 6.写函数,接收两个数字参数,返回比较大的那个数字。
# a = input("请输入第一个数字:")
# b = input("请输入第二个数字:")
# def compare(a,b):
# if a > b:
# return a
# else:
# return b
# print(compare(5,8))
#
# 7.写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,
# 并将新内容返回给调用者。
# dic = {"k1": "v1v1", "k2": [11,22,33,44]}
# PS:字典中的value只能是字符串或列表
# dic1 = {"k1": "v1v1", "k2": [11,22,33,44]}
# def dic_len(a):
# dic = {}
# for k,v in a.items():
# dic[k] = v[:2]
# return dic
# print(dic_len(dic1))
#
# 8.写函数,此函数只接收一个参数这个参数必须是列表数据类型,
# 此函数完成的功能是返回给调用者一个字典,此字典的键值对为列表的索引及对应的元素。
# 例如传入的列表为:[11,22,33] 返回的字典为 {0:11,1:22,2:33}。
# lst = [11,22,33]
# def func(a):
# dic = {}
# for i in range(len(a)):
# dic[i] = a[i]
# return dic
# print(func(lst)) # lst = [11,22,33]
# def func(a):
# # enumerate 枚举
# dic = {}
# for k,v in enumerate(a):
# dic[k] = v
# return dic
# print(func(lst))
#
9.写函数,函数接收四个参数分别是:姓名,性别,年龄,学历。
用户通过输入这四个内容,然后将这四个内容传入到函数中,此函 数接收到这四个内容,
将内容追加到一个student_msg文件中。 name = input("请输入名字:")
sex = input("请输入性别:")
age = input("请输入年龄:")
rof = input("请输入学历:")
def userinfo(name,sex,age,rof):
f = open("student_msg", "w", encoding="utf-8")
f.write(f'名字:{name},性别:{sex},年龄:{age},学历:{rof}\n')
userinfo(name, sex, age, rof) 10.对第9题升级:支持用户持续输入,Q或者q退出,性别默认为男,如果遇到女学生,则把性别输入女。
while True:
choose = input('退出请选择Q/q')
if choose.upper() != "Q":
name = input("请输入名字:")
age = input("请输入年龄:")
rof = input("请输入学历:")
sex = input("请输入性别(男士请直接回车):")
else:
break
def userinfo(name, age, rof, sex='男'):
f = open("student_msg", "a", encoding="utf-8")
f.write(f'名字:{name},性别:{sex},年龄:{age},学历:{rof}\n')
if sex == '女':
userinfo(name, age, rof, sex)
else:
userinfo(name, age, rof)

Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数的更多相关文章

  1. python中的函数(定义、多个返回值、默认参数、参数组)

    函数定义 在python中函数的定义以及调用如下代码所示: def test(x): y = x+1 return y result = test(2) print(result) 多个返回值的情况 ...

  2. c++中带返回值函数没写return能通过编译但运行时会出现奇怪问题

    c++中带返回值函数没写return能通过编译但运行时会出现奇怪问题 例如: string myFunc(){ theLogics(); } 发现调用: myFunc(); 崩溃. 但调用: cout ...

  3. go语言基础之有参有返回值函数的使用

    1.有参有返回值函数的使用 示例1: package main //必须 import "fmt" //go官方推荐写法 func MaxAndMin(a, b int) (max ...

  4. 获得函数返回值类型、参数tuple、成员函数指针中的对象类型

    //function_traits.h,获得函数返回值类型.参数tuple.成员函数指针中的对象类型 //参考https://github.com/qicosmos/cosmos/blob/maste ...

  5. c语言进阶4-有返回值函数

    一.         从函数返回 从函数返回就是返回语句的第一个主要用途.在程序中,有两种方法可以终止函数的执行,并返回到调用函数的位置.第一种方法是在函数体中,从第一句一直执行到最后一句,当所有语句 ...

  6. python函数知识一 函数初始、定义与调用、返回值、参数和函数的好处+菜中菜

    第四章 函数 1.函数初识: def :关键字 -- 定义 函数名:和变量的定义方式一样 (): 用于参数传递,: 形参:函数的定义中()内的是形参 实参:调用的()内是实参 传参:调用时将实参传递给 ...

  7. Python函数的定义与调用、返回值、参数

    一.函数是什么 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.比如print(),len()等.但你也可以自己创建函数,这被叫做用户自 ...

  8. C++获取Lua全局变量和执行Lua多参数多返回值函数

    C++代码: // LuaAndC.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> #i ...

  9. oracle pipelined返回值函数 针对数据汇总统计 返回结果集方法

    近期需要一个汇总统计,由于数据太多,数据量太大所以在java程序中实现比较困难.若用后台程序统计,数据不能保证实时,同时实现周期比较长.顾使用函数返回结果集的方式,在不增加临时表的情况下实时获取数据. ...

随机推荐

  1. SQL2008R2安装碰到问题的解决方法(iso文件用对应的工具)

    SQL2008R2安装碰到问题的解决方法     安装谁不会啊,这么简单,是啊,可是匹配包时就不是那么顺利啊.就像以前的Ruby还专挑匹配版本的包一样,不像现在的Py自动为我们找,这是Mar 7贴在Q ...

  2. [每日一题2020.06.14]leetcode #70 爬楼梯 斐波那契数列 记忆化搜索 递推通项公式

    题目链接 题意 : 求斐波那契数列第n项 很简单一道题, 写它是因为想水一篇博客 勾起了我的回忆 首先, 求斐波那契数列, 一定 不 要 用 递归 ! 依稀记得当年校赛, 我在第一题交了20发超时, ...

  3. Spark GraphX从入门到实战

      第1章 Spark GraphX 概述 1.1 什么是 Spark GraphX   Spark GraphX 是一个分布式图处理框架,它是基于 Spark 平台提供对图计算和图挖掘简洁易用的而丰 ...

  4. (六)maven 聚合和继承

    项目目录 my_test 聚合pom <?xml version="1.0" encoding="UTF-8"?> <project xmln ...

  5. WEB应用的常见安全漏洞

      01. SQL 注入 SQL 注入就是通过给 web 应用接口传入一些特殊字符,达到欺骗服务器执行恶意的 SQL 命令.SQL 注入漏洞属于后端的范畴,但前端也可做体验上的优化.原因:当使用外部不 ...

  6. gdb基本命令总结

    本文介绍使用gdb调试程序的常用命令.  主要内容: [简介] [举例] [其他] [简介]  ============= GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.如果你是在 ...

  7. Java 多线程基础(七)线程休眠 sleep

    Java 多线程基础(七)线程休眠 sleep 一.线程休眠 sleep sleep() 方法定义在Thread.java中,是 static 修饰的静态方法.sleep() 的作用是让当前线程休眠, ...

  8. 在执行jar包时如何使用调优参数

    [本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究.若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!] 使用时去掉换行 ...

  9. C#实现模拟鼠标点击事件(点击桌面的其他程序 )

    注释感觉已经很清楚了,有不懂的欢迎评论 1 using System; using System.Collections.Generic; using System.ComponentModel; u ...

  10. 蝙蝠算法(BA)学习笔记

    算法原理 蝙蝠能够在夜间或十分昏暗的环境中自由飞翔和准确无误地捕捉食物,是因为他们能够从喉头发出地超声脉冲回声来定位.受这一启发,Yang教授在2010年提出了蝙蝠算法(Bat Algorithm,B ...