python第五节随堂笔记(函数习题)

__author__ = 'Administrator'
def add_num(m,n):
    sum=0
    for i in range(m,n+1):
        sum+=i
    return sum
    print(sum)


result=add_num(1,100)-100
print(add_num(1,100))
#add_num(1,100)


#返回值 return表达式
#1.print会把结果直接打印到控制台,不归你管,你也拿不到
#2.return 会把结果值返回给你, 归你管,由你处置
#3.返回值必须要有一个变量来进行接收
#4.return后面的代码都不会被执行


#什么时候用return?
#你想拿到这个返回值 做别的处理的时候




#变量的作用范围
#全局变量:大写字母 局部变量:小写字母
#针对函数来讲 在函数外面是全局 函数里面的局部
C=6


def num():
    global C#声明一个局部变量
    C=8
    a=10
    print(C+a)
#print(c)


# A:区别:作用域不一样
#1全局变量 在当前.py文件下 都可以直接调用 函数内外
#2局部变量:只能在函数内部使用
# B:区别
#1如果全局和局部变量名重复的情况下,我们优先调用局部变量
num()
print(C)
# C:区别:如果我要修改一个全局变量的值 global
# D:区别:列表和字典都可以去做更改值
LIST_1=[1,2,3]
def print_list():
   # LIST_1=10#重名的局部变量
   LIST_1[2]=10
   print(LIST_1)
   #LIST_1.append(10)#调用函数




#print_list()#函数调用的打印结果
print(LIST_1)#打印全局变量
#如果你的值是列表 那么在函数里面重进行赋值运算 那么全局变量也会被更改(特殊情况)
#一个足球队在寻找年龄在i岁到j岁的小女孩(包括10岁和12岁)加入。编写一个程序,询问用户的性别(m表示男性,f表示女性)和年龄,
# 然后显示一条消息指出这个人是否可以加入球队
#,询问10次后,输出满足条件的总人数。
#
def ball(min,max,k,sex_1):
    count=0
    for x in range(k):
        age=int(input("请输入年龄"))
        sex=input("请输入性别")
        if min<=age<=max and sex==sex_1:
            count+=1
            print("恭喜你加入团队")


        else:
            print("很遗憾不能加入团队")


    print("团队总人数%s"%count)


#ball(10,12,2,'m')
#对任意字符串 编写一个函数 实现转换成一个列表
#输出每个字符对应列表里面的一个元素
def str_to_list(str):
    list_1=[]
    for item in str:
        list_1.append(item)
    print(list_1)
#str_to_list("hello我是五月")


#7:定义一个函数,传入一个字典和字符串,
# 判断字符串是否为字典中的值,如果字符串不在字典中,
# 则添加到字典中,并返回新的字典。


# def add_str_to_dicet(dict_1,str_1):
#    # dict_1={"age":18,"sex":'f'}
#     #str_1='hello'
#
#     if str_1 not in dict_1.values():
#         dict_1[str_1]=str_1
#     else:
#         print("已经存在")
#
#     return dict_1
#
# r=add_str_to_dicet({'age':12,'sex':'hello'},'4')
# print(r)


#有1、2、3、4个数字,能组成多少个互不相同
# 且无重复数字的三位数?都是多少?
# def count_num(list_num):
#     result_list=[]
#     counts=0
#     for b in list_num:#百位
#         for s in list_num:#十位
#             for g in list_num:#个位
#                 if(g!=s and s!=b and g!=b):
#                     new_num=b*100+s*10+g
#                     result_list.append(new_num)
#                     counts+=1
#     print(result_list,"符合数字的有",len(result_list))
#     #print(new_num,counts))
#                    # print(b*100+s*10+g)
#
# count_num([2,3,8,9])


#位置参数 默认参数


def add(a=1,b=2,c=3):
    print(a+b+c)


#add(6)#顺位 从左往右传递值


#动态参数 可以传递任意多个参数 返回元祖
def add_2(*args):#传进来的数据作为元祖()
    sum=0
    for item in args:
        sum=sum+item
    print(sum)


#add_2(1,2,3,4)


def add_3(**args):#传进来的数据作为字典处理()
    print(args)


#add_3(苹果='like',梨子=2)


def add_4(*args,**kwargs):#传进来的数据作为字典处理()
    print("第一个动态参数",args)
    print("第er个动态参数",kwargs)


dict_1={'age':18,"sex":"girl"}


#add_4(1,2,3,4,**dict_1)
#1:自动贩卖机: 只接受1元、5元、10元的纸币或硬币,可以1块,5元,10元。
# 最多不超过10块钱。 饮料只有橙汁、椰汁、矿泉水、早餐奶,
# 售价分别是3.5,4,2,4.5
#写一个函数用来表示贩卖机的功能: 用户投钱和选择饮料,并通过判断之后,给用户吐出饮料和找零。


dict_yl={'orange':3.5,'yezhi':4,'water':2,'milk':4.5}


total=0


def buy_drinks(drink,money):
    while True:
        drink=input("请输入你要选择的饮料:1.橙汁,2.椰汁,3.矿泉水,4.早餐奶")
        money=int(input("请投钱"))
        total=0
        if drink in dict_yl.keys():
            if money==1 or money==5 or money==10:
                total+=money-dict_yl[drink]
                print("购买成功!找零%s"%total)
            else:
                 print("错误")
        else:
            print("错误")


#buy_drinks("orange",5)
test_data={"retcode":0,
           "result":{"total_page":16,
            "install_plan":[{"phone":"18688779390","installment_type":1,"uid_type":0,"order_state":201,
            "term_id":100308316,"course_name":"python 全栈 WEB 自动化测试工程师","installment_current_seq":"1","uin":458757456,
            "order_id":14915713,
            "total_price":380000,"next_term_start_time":1518278400,"nick_name":"666","id":6016,"next_term_expire_pay_time":1670255999,
            "prepay_price":80000,
            "create_time":1513859573,"installment_quantity":3,"course_id":255032,"cid":255032},{"phone":"18688779390","installment_type":1,"uid_type":0,"order_state":201,
            "term_id":100308316,"course_name":"python 全栈 WEB 自动化测试工程师","installment_current_seq":"1","uin":458757456,
            "order_id":14915713,
            "total_price":380000,"next_term_start_time":1518278400,"nick_name":"666","id":6016,"next_term_expire_pay_time":1670255999,
            "prepay_price":80000,
            "create_time":1513859573,"installment_quantity":4,"course_id":255032,"cid":255032}]},}


def count_data(test_data):
     list_3=[]
     list_4=[]
     final_data=test_data["result"]["install_plan"]
     for item in final_data:
        sm_list=[]
        if item['installment_quantity']==3:
             sm_list.append(item["phone"])
             sm_list.append(item["uin"])
             sm_list.append(item["nick_name"])
             list_3.append(sm_list)
           # print(list_3)
        elif item['installment_quantity']==4:
            sm_list.append(item["phone"])
            sm_list.append(item["uin"])
            sm_list.append(item["nick_name"])
            list_4.append(sm_list)
           # print(list_4)
     return list_3,list_4


list_3,list_4=count_data(test_data)
print(list_3,list_4)

猜你喜欢

转载自blog.csdn.net/u010601075/article/details/80511998