zoukankan      html  css  js  c++  java
  • Python基础----------函数

    一、函数的定义

    函数就是功能的封装,里面就是代码块
    语法:
    def 函数名(形参):
    函数体 【代码块】
    函数名(实参)

    示例:
    def abc(haha):
    print("打开手机")
    print("打开%s" % haha)
    abc(微信)
    结果:打开手机
    打开微信

    函数名:命名规则和变量一样

    二、return返回值

    return返回值:
    return,函数执行完毕,不会执行后面逻辑
    1.如果函数不写return返回None
    2.只写return,返回None
    3.return返回值,返回一个值
    4.return值1,值2,... 返回多个值。调用方接收的是元组

    三、参数

    参数:在函数执行的时候给函数传递的信息。函数的参数个数没要求,但是,在运行的时候,形参和实参要匹配,按照位置把实参赋值给形参

    1.形参:在函数声明的位置,声明出来变量
    1.位置参数。
    2.默认值参数。当调用的时候不给传值使用默认值
    3.混合使用。顺序:1.位置参数。2默认值参数
    2.实参:在函数调用的时候,实际你给函数传递的值
    1.位置参数。按照位置给形参赋值
    2.关键字参数。按照名称给形参赋值
    3.混合参数。先用位置参数,再用关键字参数

    四、示例:

    2. 写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
    # def func(lst):
    #     ll = []
    #     for i in range(len(lst)):
    #         if i % 2 == 1:
    #             ll.append(lst[i])
    #     return ll
    #
    # a = [1, 5, 7, 9, 12]
    # ret = func(a)
    # print(ret)
    
    # 3, 写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
    # def func(a):
    #     # if len(a) > 5:
    #     #     return True
    #     # else:
    #     #     return False
    #     return len(a) > 5
    
    # 4.
    # def func(lst):
    #     if len(lst) > 2:
    #         return lst[0], lst[1]
    
    
    # 5.写函数,计算传入函数的字符串中, 数字、字母、空格 以及 其他内容的个数,并返回结果。
    # def func(s=""): # function
    #     shuzi = 0
    #     zimu = 0
    #     kongge = 0
    #     qita = 0
    #     for c in s: # 循环字符串.拿到每个字符
    #         if c.isdigit(): # 数字
    #             shuzi += 1
    #         elif c.isalpha():
    #             zimu+=1
    #         elif c == ' ':
    #             kongge += 1
    #         else:
    #             qita += 1
    #     return shuzi, zimu, kongge, qita
    
    # 6.写函数,接收两个数字参数,返回比较大的那个数字。
    # def func(a, b):
    #     # if a > b:
    #     #     return a
    #     # else:
    #     #     return b
    #     c = a if a > b else b
    #     return c
    # print(func(3, 5))
    
    # 7. 写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
    #
    # 	dic = {"k1":"v1", "k2":[11,22]}
    # 	PS:字典中的value只能是字符串或列表
    #
    # def func(dic):
    #     new_dic = {}
    #     for k, v in dic.items():
    #         if len(v) > 2:
    #             new_dic[k] = v[0:2]
    #         else:
    #             new_dic[k] = v
    #     return new_dic
    # dic = {"k1": "v1v1", "k2": [11,22,33,44]}
    # print(func(dic))
    
    # 8.
    # def func(lst):
    #     dic = {}
    #     for i in range(len(lst)):
    #         dic[i] = lst[i]
    #     return dic
    
    
    # 9.
    # def func(name, age,edu,sex ="男"):
    #     f = open("student.msg", mode="a", encoding="utf-8")
    #     f.write(name+"_"+str(age)+"_"+sex+"_"+edu+"
    ")
    #     f.flush()
    #     f.close()
    #
    #
    # while 1:
    #     content = input("请问. 是否要录入学生信息, 输入q退出:")
    #     if content.upper() == "Q":
    #         break
    #     n = input("请输入名字:")
    #     a = input("请输入年龄:")
    #     s = input("请输入性别:")
    #     e = input("请输入学历:")
    #     if s == "":
    #         func(n,a,e)
    #     else:
    #         func(n,a,e,s)
    
    # 10
    # import os
    # def func(filename, old, new):
    #     with open(filename, mode="r", encoding="utf-8") as f1,
    #         open(filename+"_副本", mode="w", encoding="utf-8") as f2:
    #
    #         for line in f1:
    #             s = line.replace(old, new)
    #             f2.write(s)
    #
    #     os.remove(filename)
    #     os.rename(filename+"_副本", filename)
    #
    # func("student.msg", "本", "学")
    
  • 相关阅读:
    学习进度条
    阅读《实例化需求》10-12章有感
    学习进度条
    阅读《实例化需求》7–9章有感
    学习进度条
    软件需求与分析课堂讨论一
    课程引言课后作业1
    MVC实例应用模式
    MVC模式介绍
    二十三种设计模式
  • 原文地址:https://www.cnblogs.com/wangchengshi/p/12972216.html
Copyright © 2011-2022 走看看