day09-作业

1、写一个函数将一个指定的列表中的元素逆序(例如,[1,2,3]->[3,2,1])注意:不要使用列表自带的逆序函数

def reserve1(list1):
     list2 = []
     for item in list1:
        list2.insert(0, item)
     return list2


print(reserve1([1, 2, 3]))

结果:


1.png

2、写一个函数,提取字符串中所有奇数位上的字符

get_value = lambda str1: str1[1::2]
print('字符串asdeghf$123中奇数位上的字符为:%s' % (get_value('asdeghf$123')))

结果:


2.png

3、写一个匿名函数,判断指定的年是否是闰年

is_leap_year = lambda year: ('%d是闰年'% (year)) if (not year % 4 and year % 100) or (not year % 400) else ('%d不是闰年'% (year))
print(is_leap_year(int(input('请输入年份:'))))

结果:


day09-作业_第1张图片
3.png

4、使用递归打印:
"""
n= 3
@
@@
@@@
n=4
@
@@
@@@
@@@@
"""

def paint(n):
    if n == 1:
        print('@')
        return
    paint(n - 1)
    print('@' * n)
paint(3)
paint(4)

结果:


day09-作业_第2张图片
4.png

5、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回个调用者

def get_value(list1):
    if len(list1) > 2:
        list1 = list1[0:2]
    return list1
print(get_value([1, 'a', 'b', 'c']))

结果:


5.png

6、写函数,利用递归获取斐波那契数列中的第10个数,并将该值返回给调用者。

def get_vlue(n):
    if n == 1 or n == 2:
        return 1
    return get_vlue(n-1) + get_vlue(n-2)
print(get_vlue(10))

结果:


6.png

7、写一个函数,获取列表中的成绩的平均值,和最高分

def get_average_max(list1):
    return sum(list1) / len(list1), max(list1)
print(get_average_max([89, 80, 90, 100,45]))

结果:


day09-作业_第3张图片
7.png

8、写函数,检查获取传入列表或元祖对象的所有奇数位索引对应的元素,并将其作为新的列表返回给调用者

def get_value(list1):
    return list1[1::2]
print(get_value((1, 2, 3, 4)), get_value([1, 2, 3, 4]))

结果:


day09-作业_第4张图片
8.png

9、写一个属于自己的数学模块(封装自己认为以后常用的数学相关的函数和变量)和列表模块(封装自己以后常用的列表相关的操作)

my_math.py

# 9、写一个属于自己的数学模块(封装自己认为以后常用的数学相关的函数和变量)和列表模块(封装自己以后常用的列表相关的操作
import math
pi = math.pi
e = math.e
# 求和
def sum1(*num):
    sum2 = 0
    for item in num:
        sum2 += item
    return sum2


# 求差
def diff(*num):
    diff2 = num[0]
    for item in num[1:]:
        diff2 -= item
    return diff2

# 求乘积
def multiply(*num):
    multiply2 = 1
    for item in num:
        multiply2 *= item
    return multiply2

# 求商
def quotient(*num):
    quotient2 = num[0]
    for item in num[1:]:
        quotient2 /= item
    return quotient2

my_list.py

empty = []

def count(list1, item):
    """
    统计指定列表中指定元素的个数
    :param list1: 指定列表
    :param item: 指定元素
    :return: 个数
    """
    num = 0
    for x in list1:
        if x == item:
            num += 1
    return num

# 求列表的长度
length = lambda list1:len(list1)

# 打印列表的元素
def print_value(list1):
    for item in list1:
        print(item,end=' ')

homework.py

import my_math
import my_list
print(my_math.multiply(1, 2))
print(my_list.length([1, 2, 3, 4]))
my_list.print_value(['a', 'b'])

你可能感兴趣的:(day09-作业)