zoukankan      html  css  js  c++  java
  • Python04.1.函数初识

    1. 三元运算(三目运算):

    普通版:

    v = 前面 if 条件 else 后面

    if 条件:

        v = '前面'

    else:

    v = '后面'

    三元运算版:

    # 让用户输入值,如果值是整数,则转换成整数,否则赋值为None

    data = input('>>>')

    value = int(data) if data.isdecimal() else None

    注意:可以先写普通版的,然后再思考优化转化成三元版

    2.函数:

    2.1 面向过程:

    可读性差/可重用性差

    函数:对代码块和功能的封装和定义

    2.2 对于函数编程:

    1.本质:

    将N行代码拿到别处并给他起个名字,以后通过名字就可以找到这段代码并执行;

    2.场景:

    • 代码重复执行
    • 代码量特别多超过一屏,可以选择通过函数进行代码的分割

    3.函数的基本结构:

    1.函数的基本结构:

    函数的定义, 函数名, 函数体以及函数的调用

    2.函数体:

    就是函数被执之后要执的代

    3.函数的调用:

    使用函数名可以调用函数, 写法: 函数名(), 这个时候函数的函数体会被执

    # 函数的定义

    def 函数名():

    #函数内容

    pass

     

     

    #函数的执行

    函数名()

    #注意:函数如果不被调用,则内部代码永远不会被执行

    案例:

    def get_list_first_data():

    v = [11,22,33,44]

    print(v[0])

     

    get_list_first_data()

     

    # 注意:函数如果不被调用,则内部代码永远不会被执行。

    案例:

    def send_email(to):

    template = "要给%s发送邮件" % (to,)

    print(template)

    user_input = input('请输入角色:')

    if user_input == '管理员':

    send_email('xxxx@qq.com')

    elif user_input == '业务员':

    send_email('xxxxo@qq.com')

    elif user_input == '老板':

    send_email('xoxox@qq.com')

    案例:

    def num(l):

    count = 0

    for i in l:

    if type(i) == int:

    count += 1

    return count

    li = ['salkdj',6,66,677,'skajhd','ksjad']

    a = num(li)

    print('列表中有%d个数字'%(a,))

    3.参数:

    1. 函数的参数:

    函数在调用的时候指定具体的一个变量的值. 就是参数

    def get_list_first_data(aaa): # aaa叫形式参数(形参)

    v = [11,22,33,44]

    print(v[aaa])

     

     

    get_list_first_data(1) #调用函数时传递叫:实际参数(实参)

    get_list_first_data(2)

    get_list_first_data(3)

    get_list_first_data(0)

    1. 关于参数:

    2.1形参:

    写在函数声明的位置的变量叫形参,形式上的一个完整表示这个函数需要xxx

    2.2实参:

    在函数调用的时候给函数传递的值叫实参, 实际执的时候给函数传递的信息. 示给函数 xxx

    2.3传参:

    给函数传递信息的时候将实际参数交给形式参数的过程被称为传参.

    def yue(chat): # chat 形参

    print("拿出⼿手机")

    print("打开"+chat)

    print("找个漂亮的妹子")

    print("约不约")

     

    yue("陌陌") # 实参

    len("字符串") # "字符串"在这就是实参

    print("麻花藤") # "麻花藤"就是实参

    实参的⾓角度来看

    参数分为三种

    • 位置参数
    • 混合参数, 位置参数必须在关键字参数前面
    • 关键字参数

    形参的角度

    • 位置参数
    • 默认值参数(大多数传进来的参数都是一样的, 一般用默认参数)

    4.函数返回值

    def func(arg):

    # ....

    return 9 # 返回值为9 默认:return None

     

    val = func('adsfadsf')

    完函数之后. 我们可以使用return来返回结果.

    1.函数中遇到return, 此函数结束, 不再继续执

    girl = yue()

    print(type(girl)) # tuple

     

    def yue():

    print("约你")

    print("约我")

    print("约他")

    return

    print("约谁呀") # 这句会被执

    yue()

     

    2.给函数的调⽤用者一个访问结果

    遇到return. 此函数结束, 函数后的东西将不会再执return 返回值

    def yue():

    print("约你")

    print("约我")

    print("约他")

    return "美一枚"

     

    girl = yue()

    print(girl) # 美一枚

     

    函数的返回值可以有多个结果

     

    def yue():

    print("约你")

    print("约我")

    print("约他")

    return "美一枚", "萝莉一枚"

     

    girl = yue()

    print(type(girl)) # tuple

    如果return么都不写 或者 干脆不写return .那么返回的就是None

    如果return后面写了个值. 则调用者可以接收一个结果

    如果return后面写了多个结果, 则调用者可以接收一个tuple, 用者可以直接解构成多个变

  • 相关阅读:
    java架构解密——实时动态aop
    guice基本使用,配置模块的两种方式(三)
    guice基本使用,三种注入方式(二)
    guice的基本使用(一)
    Java 集合系列10之 HashMap详细介绍(源码解析)和使用示例
    java泛型(二)、泛型的内部原理:类型擦除以及类型擦除带来的问题
    java泛型(一)、泛型的基本介绍和使用
    java泛型学习(2)
    jquery,从后台查数据,给页面上添加树形。
    Java Annotation认知(包括框架图、详细介绍、示例说明)
  • 原文地址:https://www.cnblogs.com/cable-run/p/12162781.html
Copyright © 2011-2022 走看看