• 基本用法:2《定义函数def、返回值return、元组tuple》


    2 《定义函数def、返回值return、元组tuple》

     【功能】 返回函数return ' '不需要立刻print,先存起来需要再print()

    (1)【局部变量】和【全局变量】

     1 #(1)【局部变量】和【全部变量】
     2 #  A.【局部变量】函数内部定义,只能内部使用,外部不能使用
     3 def egg():
     4     global a   # 声明a是全局变量,print(a+2) 就不会报错了
     5     a=108
     6     print(a+1)
     7 egg()
     8 print(a+2)
     9 
    10 #  B. 【全部变量】函数外部定义,内外都能使用
    11 a=108
    12 def egg():
    13     print(a+1)
    14 egg()
    15 print(a+2)
    16 x = 99
    17 def num():
    18     x = 88
    19     print(x)
    20 num()
    21 # 调用局部变量x,若不加,就不能打印88
    22 print(x)  # 打印全局变量x
    23 print('
    ')

     

    (2)【参数类型】位置参数类型a1,a2 ; 默认参数a3 ; 不定长a4

     1 #(2)【参数类型】位置参数类型a1,a2 ; 默认参数a3 ; 不定长a4
     2 a4=('小米','小面','小苗')
     3 print(type(a4))                # <class 'tuple'>
     4 def a(a1,a2,a3='',*a4):      # 位置参数类型a1,a2 ; 默认参数a3 ; 不定长a4
     5     print('我最喜欢'+a1)
     6     print('我最讨厌' + a2)
     7     print('我不认识' + a3)
     8     print('我刚认识:',end='')
     9     for i in a4:
    10         print(i+' ',end='')
    11     print('
    ')
    12 a('','')
    13 a('','')
    14 a('','','')     # 覆盖a3='它'
    15 a('','','',*a4) # 覆盖a3='它 + 遍历a4
    16 print('
    ')

     

    3)【没有return语句,默认返回None】

     1 ## 4. 返回函数 return ''
     2 #  【功能】 不需要立刻print,先存起来需要再print()
     3 def face(name):
     4     return name + '的脸蛋'
     5 def body(name):
     6     return name + '的身材'
     7 print('我的女神长什么样?:'+face('李若彤')+'+'+body('林志玲'))
     8 #要再次调用就要复制一遍,然后改参数
     9 print('我的女神长什么样?:'+face('新垣结衣')+'+'+body('长泽雅美'))
    10 print('
    ')
    11 
    12 ## (1)【没有return语句,默认返回None】
    13 #       【有多个return只返回第1个】
    14 def fun():
    15     a ='I am coding'
    16     # 没有return 就默认返回 None
    17 print(fun())             # None
    18 def fun():
    19     a='I am coding'
    20     return a
    21 print(fun())             # I am coding
    22 def fun():
    23   return 'I am coding.'  # 返回第一个return
    24   return 'I am not coding.'
    25 print(fun())             # I am coding
    26 print('
    ')
    

     

     (4)多次调用:定义 【主函数main()】,调用 【非主函数的return】

     1 ## (2)多次调用:定义 【主函数main()】,调用 【非主函数的return】
     2 def a(a1):
     3     return a1 + '的脸蛋'
     4 def b(b1):
     5     return b1 + '的身材'
     6 def main(c1, c2):
     7     return '我的女神长什么样?:'+a(c1)+'+'+b(c2)
     8 print(main('李若彤', '林志玲'))
     9 print(main('新垣结衣','长泽雅美'))
    10 print('
    ')

     

    5)多个返回值:定义 【元组tuple=(‘’,’’)】,调用 【元组元素】

             ——python的独特之处,其他编程语言没有【元组】

     1 ##(3)多个返回值:定义 【元组tuple】,调用 【元组元素】
     2 ###       ——python的独特之处,其他编程语言没有【元组】
     3 
     4 #  A. 两数比较
     5 def a(a1,a2):
     6     if a1>a2:
     7         return '较大的数是'+str(a1)
     8     elif a1<a2:
     9         return '较大的数是'+str(a2)
    10     else:
    11         return '两数一样大'
    12 tuple=a(99**2,8888)
    13 print(tuple)    # 较大的数是9801
    14 
    15 # B. 调用多个返回值
    16 def a(a1,a2):     # <class tuple> 元组不能作为返回值!!!
    17     b1= a1 + '的脸蛋'
    18     b2= a2 + '的身材'
    19     return b1,b2
    20    # return '我的女神长什么样?:' + a(c1,c2)      # 报错
    21 tuple=a('倪妮','母其弥雅')    # 定义一个元祖,再调用
    22 print('我的女神长什么样?:'+tuple[0]+'+'+tuple[1])

     

     

     实例11:HellowKitty倒计时随机抽奖器?

    【方法1:random, time】 

     1 ###  1. 原始代码
     2 import random,time
     3 luckylist = ['海绵宝宝','派大星','章鱼哥']
     4 a = random.choice(luckylist)
     5 print('开奖倒计时',3)
     6 time.sleep(1)
     7 print('开奖倒计时',2)
     8 time.sleep(1)
     9 print('开奖倒计时',1)
    10 time.sleep(1)
    11    ## 使用三引号打印hellokitty的头像
    12 image = '''
    13  /\_)o<
    14 |      \
    15 | O . O|
    16  \_____/'''
    17 print(image)
    18 print('恭喜'+a+'中奖!')
    19 print('
    
    ')

     

    【方法2:封装函数def】

     1 ### 2. 使用 封装函数def
     2 import random,time
     3 def a(a1,a2,a3):
     4     x=[a1,a2,a3]
     5     global b
     6 # 定义b前先声明它是【全局变量】
     7     b=random.choice(x)
     8     # 随机选择列表元素
     9     return b
    10 a('海绵宝宝','派大星','章鱼哥')
    11 print('开奖倒计时',3)
    12 time.sleep(1)
    13 print('开奖倒计时',2)
    14 time.sleep(1)
    15 print('开奖倒计时',1)
    16 time.sleep(1)
    17 image = '''
    18  /\_)o<
    19 |      \
    20 | O . O|
    21  \_____/'''
    22 print(image)
    23 print('恭喜'+b+'中奖!')

     

  • 相关阅读:
    用 Web 实现一个简易的音频编辑器
    TypeScript教程
    他的独,殇情沉醉
    重新拎一遍js的正则表达式
    网络流
    Xmind最新的安装与破解教程
    adb的端口号5037被占用的解决方法
    使用Fiddler模拟弱网测试教程
    web的前台、后台、前端、后端
    常见面试笔试题
  • 原文地址:https://www.cnblogs.com/lj-attitudes0303/p/10354605.html
Copyright © 2020-2023  润新知