码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2019-02-07 12:13:29      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:复制   else   编程语言   code   roman   计时   元组   全局变量   内部使用   

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(\n)

 

(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(\n)
12 a(,)
13 a(,)
14 a(,,)     # 覆盖a3=‘它‘
15 a(,,,*a4) # 覆盖a3=‘它 + 遍历a4
16 print(\n)

 

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(\n)
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(\n)

 

 (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(\n)

 

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(\n\n)

 

【方法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+中奖!)

 

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

标签:复制   else   编程语言   code   roman   计时   元组   全局变量   内部使用   

原文地址:https://www.cnblogs.com/lj-attitudes0303/p/10354605.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!