# 自定义函数function
# 定义 1.用于封装一个特定的功能,表示一个功能或者行为
# 2.函数是可以重复执行的语句块,可以重复调用
# 作用
# 提高代码的可重用性和可维护性(大妈层次结构更清晰)
# 定义函数
# 1.语法:
# def 函数名(形式参数):
# 函数体
# 2.说明:
# def关键字:全称是define,意为"定义"。
# 函数名:对函数体中语句的描述,规则与变量名相同
# 形式参数:方法定义者要求调用者提供的信息
# 函数体:完成该功能的语句
# 函数的第一行语句建议使用文档字符串描述函数的功能
# 调用函数:
# 1.语法:函数名(实际参数)
# 2.说明:根据形参传递内容
# 返回值
# 1.方法定义者告诉调用者的结果。
# 语法
# return 数据
# 3.说明
# return后没有语句,相当于返回None
# 函数体没有语句,相当于返回None
# 练习:将下列代码,定义到函数中,再调用一次2
# for r in range(3):
# for c in range(4):
# print("*",end = "")
# print()
# def a(count_r,count_c,char):
# for r in range(count_r):
# for c in range(count_c):
# print(char, end="")
# print()
# a(3,4,"*")
# 练习:定义在控制台中打印一维列表的函数
# 例如:[1,2,3] -- 123 每个元素一行
# def print_list(list_target):
# for item in list_target:
# print(item)
# list01 = [1,2,3]
# print_list(list01)
# 练习:定义计算四位整数,每次相加和的函数
# def fun01(number):
# """
# 计算整数的每位相加和
# :param number: 4位整数
# :return: 相加结果
# """
# result = number % 10
# result += number//10 %10
# result += number // 1000
# return result
# re01 = fun01(1234)
# print(re01)
# re02 = fun01(11121314)
# print(re02)
# 目标:判断列表是否具有相同的
# def list_number(list01):
# for r in range(len(list01)-1):
# for c in range(r+1,len(list01)):
# if list01[r] == list01[c]:
# return True
# return False
# print(list_number(list01 = [1,2,3,4,2]))
# month = int(input("请输入月份"))
# if month < 1 or month >12:
# print("输入有误")
# elif month == 2:
# print("28天")
# elif month in (4,6,9,11):
# print("30天")
# else:
# print("31天")
# 定义函数
# def mouth_2(year):
# return year % 4 == 0 and year % 100 != 0
# def month_def(year,month):
# if month < 1 or month > 12:
# return -1
# if month == 2:
# return 29 if mouth_2(year)else 28
# if month in (4, 6, 9, 11):
# return 30
# return 31
# print(month_def(2000,2))