首页 > 编程语言 >python入门之函数返回值的应用

python入门之函数返回值的应用

时间:2023-02-23 15:47:34浏览次数:27  
标签:return 入门 python number month result liang print 返回值

"""
函数返回值 应用
"""


# 函数设计思想:
# 分而治之
# 干一件事

# 需求:定义两个数字相加的函数
# def add():
# 1.获取数据
# number01 = int(input("请输入第一个数字:"))
# number02 = int(input("请输入第二个数字:"))
# 2.逻辑运算
# result = number01 + number02
# 3.显示结果
# print(result)
# add()
def add(number01, number02):
    return number01 + number02


# 调用者提供数据
number01 = int(input("请输入第一个数字:"))
number02 = int(input("请输入第二个数字:"))
result = add(number01, number02)
# 调用者负责显示结果
print("结果是" + str(result))

 

# 练习1:
# 定义计算四位整数,每位相加和的函数.
#
# number = int(input("请输入四位整数:"))
# result = number % 10
# # 累加十位
# result += number // 10 % 10
# # 累加百位
# result += number // 100 % 10
# # 累加千位
# result += number // 1000
# print("结果是:"+str(result))
def each_unit_sum(number):
    """
        计算整数的每位相加和
    :param number: 四位整数
    :return:
    """
    result = number % 10
    # 累加十位
    result += number // 10 % 10
    # 累加百位
    result += number // 100 % 10
    # 累加千位
    result += number // 1000
    return result


# 测试
re01 = each_unit_sum(1234)
print(re01)
re01 = each_unit_sum(4567)
print(re01)

 

# 练习2:
# 古代的秤一斤是16两, 33 二斤 一两
# 计算几斤几两。
# 使用函数优化
# weight_liang = int(input("请输入两:"))
# jin = weight_liang //16
# liang = weight_liang % 16
# print(str(jin) + "斤零" + str(liang) + "两")
def get_weight_for_jin(liang_weight):
    """
        根据两,计算几斤零几两
    :param liang_weight: 需要计算的两
    :return: 元组(斤,两)
    """
    jin = liang_weight // 16
    liang = liang_weight % 16
    return (jin, liang)


# 测试
re = get_weight_for_jin(102)
print(str(re[0]) + "斤零" + str(re[1]) + "两")

 

# 练习3:
# 根据成绩计算等级的函数
# score = input("请输入你的分数:")
# if score > 100 or score < 0:
# print("输入有误...")
# elif 90 <= score:
# print("你的成绩为优秀!")
# elif 80 <= score:
# print("你的成绩为良好!")
# elif 60 <= score:
# print("你的成绩为及格!")
# else:
# print("你的成绩不及格!")
def get_score_level(score):
    """
    :param score: 自身的成绩分数
    :return:
    """
    if score > 100 or score < 0:
        return "输入有误..."
    if 90 <= score:
        return "你的成绩为优秀!"
    if 80 <= score:
        return "你的成绩为良好!"
    if 60 <= score:
        return "你的成绩为及格!"
    return "你的成绩不及格!"


# 测试
print(get_score_level(80))

 

# 练习4:
# 用函数优化以下代码
# list01 = [3, 81, 3, 5, 81, 5]
# result = False
# for r in range(0, len(list01)- 1):
# for c in range(r + 1, len(list01)):
# if list01[r] == list01[c]:
# print("具有相同项")
# result = True
# break # 退出循环
# if result:
# break
# if result == False:
# print("没有相同项")
def is_repeating(list_target):
    """

    :param list_target:
    :return: 显示重复
    """
    for r in range(0, len(list_target) - 1):
        for c in range(r + 1, len(list_target)):
            if list_target[r] == list_target[c]:
                return True  # 有重复
    return False  # 没重复


# 测试
print(is_repeating([3, 81, 3, 5, 81, 5]))

 

# 练习5:
# 定义函数,根据年月,计算有多少天,考虑闰年29天,平年28天
# 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 is_leap_year(year):
    return year % 4 == 0 and year % 100 != 0 or year % 400 == 0


def get_day_by_month(year, month):
    if month < 1 or month > 12:
        return 0
    if month == 2:
        return 29 if is_leap_year(year) else 28
    if month in (4, 6, 9, 11):
        return 30
    return 31


# 测试
print(get_day_by_month(2023, 10))

 

标签:return,入门,python,number,month,result,liang,print,返回值
From: https://www.cnblogs.com/Remick/p/17148167.html

相关文章