找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手


""" 函数当中的可变长元组:
在不确定我当前形式参数接收数据的个数时候,我可以使用可变长
元组,来定义参数,和接收实际参数.
*:表达方法
"""
""" 固定的长度,每个形式参数固定传一组数据"""
# def function(name):
#     print(name)
#
# function(("admin","username"),"123456")

""" 可变长元组:"""
# def function(*values):
#     print(values)
#     print(type(values))#<class 'tuple'>
# function("username","password","13510951238","420881199900077")

# def function2(name):
#     print(name)
# function2("username","password")

""" 可变长字典:**星号表示可变长的字典参数.
一个形式参数,对应的是传输一组数据,当我有多组
数据的情况,就需要使用可变长字典
"""
# def function1(**name):
#     print(name)
# function1(**{"username":"password"},**{"湖北":"武汉"})

# def function(**name):
#     print(name)
# #第一种传输字典的方式
# function(**{"username":"password"},**{"湖北":"武汉"})
# """ 可变长字典同时传输多个字典."""
#第二种传输方式.
# function(name="admin",password="123456",phone="13510951238")

#第三种直接传入字典:
# dict1 = {"username":"password"}
# dict2 = {"湖北":"武汉"}
# function(**dict1,**dict2)

""" 可变长元组,以及可变字典可以同时出现在
一个函数当中.他们之间有先后顺序,先可变长元组
之后才能定义可变长字典"""

# def function(*tuple,**dict):
#     print(tuple,dict)
#
# function(12,3,3,4,5,56,**{"username":"password"})
# """ (12, 3, 3, 4, 5, 56) {'username': 'password'} """

""" return: 语句:用来返回结果,函数当中
一旦碰到return 他会将实际的结果返回给当
前函数:"""

# def function():
#     print("hell work")
# print(function()) #None
""" 没有用return打印当前函数名称,当前函数是没有
具体的属性值.结果为None"""
# def function():
#     return ("hell work")
# print(function()) #hell work
""" 这里使用return 的话,他是将实际的结果,返回给
当前函数,这个时候这个函数就有了具体的属性值."""

""" return 的运用:
在工作当中,函数之间是会相互进行调用的,需要拿到
上一个函数结果,来跟我当前函数来做一些处理.
所以用print 上一个函数是没有具体的结果值 结果就为None,
如果使用return 上一个函数是具有返回的属性值 ,我return返回
什么结果,我函数结果就是什么"""
""" 拿上一个函数的结果,在我当前函数去调用他的结果参数
运算."""
# def numer():
#     return (100)
#
# def number1():
#     a = numer() / 2
#     print(a)
# number1()

""" return作用就是给当前函数进行赋值
如果没有使用return 函数是没有具体的值,他的结果就为None
使用return他是将实际的结果返回给当前的函数,就是return赋值的
操作.

return 在函数当中可以存在多个.
一旦碰到return 语句,立马结束程序,
下面代码不会被执行
."""
""" 一个函数当中可以设置多个return"""
# def function1(a):
#     if a > 5:
#         return "a 大于 5"
#     elif a == 5:
#         return "a 等于 5"
#     else:
#         return "a 小于 5"
# print(function1(3))

""" 函数当中一旦碰到return 立即结束程序,
return前面的代码会执行,但是return后面的
代码不会被执行"""
# def function():
#     print("987654321")
#     return 10000
#     a = 100
#     print("123456")
#     #return下面的所有
#     #代码都不会被执行.
# print(function())


""" 使用return 不赋值:返回的结果也是None"""
# def function():
#     return #没有返回具体的值
#
# print(function())#None
""" 用一个 return 返回多个值:
需要用逗号进行间隔,返回的是一个元组的数据类型.
"""
# def function():
#     return 100,1000,100
#
# # print(type(function()))#<class 'tuple'>
# # print(function())#(100, 1000, 100)
#
# function() #这个操作只是调用function 这个函数中的代码,如果
# #使用了return 需要加上打印输出结果

"""
面试题(return的作用)
注意点:
1.函数当中返回什么结果是由return决定的,那么return返回
什么值,函数的结果就是什么值
2.函数当中如果没有return,那么当前函数的结果就为None.
3.函数当中可以存在多个return,一旦条件成立执行了return
语句,return下面的代码将不会被执行.
4.return,可以返回多个结果给当前的函数,一旦return返回
多个结果,函数是由元组类型进行接收返回的数据.return返回
多个参数时,需要用逗号隔开.

"""

""" 我当前有一个需求,需要拿到第一个函数返回的成绩.第二个函数
根据但前第一个函数的成绩,进行判断,是不时优秀学生

第一函数返回的结果:math,english 有数学和英语成绩
第二个函数需要拿到第一个函数的结果,来判断当前math,english
是否大于80分,大于就是优秀学生,小于的话就是良好学生,有一课目
小于60,打印(需要补课)
"""
#
# def test01():
#     math = int(input("请输入你的数学成绩:"))
#     english = int(input("请输入你的英语成绩:"))
#     return math,english
# # print(test01())
#
# def test02():
#     score = test01()
#     """ 这里用score 的变量接收具体的成绩信息--》
#     他只会运行一次test01这个函数当中的代码."""
#
#     """ 用当前的变量值,接收test01这个函数返回成绩信息"""
#     if score[0] >= 80 and score[1] >=80:
#         print("优秀学生")
#     elif (score[0] < 80 and score[0] > 60) and score[1] <80 and score[1]>60:
#         print("良好学生")
#     elif score[0] < 60 or score[1] <60:
#         print("需要补课")
#
# test02()


""""
需求:登录银行系统并显示余额,有两个功能第一个是登录,
第二个是登录后显示余额,先登录然后根据登录是否成功然
后是否显示余额。 分析思路:如果想查询到余额,前提必须
登录,所以现在我们用两个函数来处理,第一个函数实现登
录,第二个函数实现余额查询,调用第一个函数得到的结果
给第二个函数,然后第二个函数根据结果进行代码处理

第一个函数: login 登录的功能:
    return 当前用户的登录状态:

第二个函数: get_money:查询余额:
    需要获取到 login函数用户登录的返回的状态
    根据状态进行判断是否显示余额
   

"""

""" 第一个功能函数 登录:"""

# def login():
#     username = input("请输入你的账号:")
#     if username == "admin":
#         password = input("请输入你的密码:")
#         if password == "123456":
#             return ("登录成功")
#         else:
#             return ("密码错误")
#     else:
#         return ("账号错误")
#
# def get_money():
#     code = login()
#     if code == "登录成功":
#         print("您的余额为:10000000000.00")
#     elif code == "密码错误":
#         print("密码错误")
#     else:
#         print("账号错误")
#
# get_money()


""" 函数是用来组织代码,能够管理我的代码.方便代码的维护,
提高代码的重复使用率"""

""" format:他是将之前的%号格式话改为用{}代替"""
"""注意点: 有几个{} 我就需要填写多少对应的参数"""
""" 第一种:使用format格式化方法"""
# print("age:{} name:{}".format(18,"渣渣灰"))

""" 第二种: 通过参数名称进行格式化传参:"""
# print("我的年纪为:{age} 我来自哪里:{addr}".format(age=18,addr="乌鲁木齐"))

""" 第三种: 通过format参数当中索引位置取值传参:"""
# print(" {1} {0} {2} ".format("武汉","湖北","东湖高新"))
# print(" {2} {1} {0} ".format("武汉","湖北","东湖高新"))

""" 第四种: 索引取值进行格式化输出"""
# list1 = ["武汉","黄冈","荆州","孝感"]
# list2 = ["钟祥","大冶","应城","浠水"]
# print("我来自{0[1]}市{1[3]}县".format(list1,list2))
""" {} 0 代表foramt参数里面列表的索引位置(list1)
    [1]代表list1当中索引位置
"""


""" 第五种: 通过dict 进行格式化输出:"""
# dict1 = {"湖北":"武汉","name":"admin","phone":"13510951238"}
#
# print("我来着{湖北},叫做:{name},我的手机号为:{phone}".format(**dict1))
""" 字典格式化输出 {}写的是当前字典的键,通过对应的键去取值.
# format传输字典的时候需要加上**
"""

""" zip: 用来打包数据:
他是将两组数据打包成一组数据,
"""
list1 = ["湖北","湖南"]
list2 = ["武汉","长沙"]

a = list(zip(list1,list2))
""" 打包完成的数据,他是一个进制对象,这个时候我通过list函数
将他转换为list对象,进行操作,合并打包完成存储为元组

注意:两个打包的对象,数据要是一致的
[('湖北', '武汉'), ('湖南', '长沙')]
list里面包含tuple:
叫做多维数组:有多种数据形式
"""
print(a)
print(type(a))# <class 'list'>
print(type(a[0]))# <class 'tuple'>
分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册