函数

2018-08-30  本文已影响0人  葡萄柚子茶

1写一个函数将一个指定的列表中的元素逆序(例[1,2,3]->[3,2,1])

def reverse_list(list1):
    list2=[]
    for item in list1[-1::-1]:
        list2.append(item)
    return list2
result=reverse_list([1,2,3])
print(result)
image.png

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

def odd_str(str1):
    list1 = list(str1)
    str2=''
    for item in list1[0::2]:
        str2 += item
    return str2
result=odd_str('abcdefgh')
print(result)
image.png

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


leap_near=lambda n:bool(n%4==0 and n%100 or n%400==0)
result = leap_near(2000)
print(result)
image.png

4.使用递归打印:
当n=3时:
@
@@
@@@
当n=4时:
@
@@
@@@
@@@@

def triangle(n):
    if n == 1:
        print('@')
        return
    triangle(n-1)
    print(n*'@')

triangle(3)
image.png

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

def shear_list(list1):
    a = len(list1)
    list2 = []
    if a > 2:
        list2 = list1[0:2]
        return list2
    else:
        return list1
result=shear_list(['a','b','c','d','e'])
print(result)
image.png

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

# 1,1,2,3,5,8,13,21,34,55
def Fibonacci_Numbers(n):
    if n ==1 or n==2:
        return 1
    return Fibonacci_Numbers(n-1)+Fibonacci_Numbers(n-2)

result=Fibonacci_Numbers(10)
print(result)
image.png

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

def scores_list(list1:list):
    sum1 = 0
    for item in list1:
        sum1 += item
    list1.sort()
    a = list1[-1]
    return sum1/len(list1),a
result=scores_list([60,100,98,99])
print(result)
image.png

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

def odd_index(list1):
    list2=[]
    for item in list1[1::2]:
        list2.append(item)
    return list2
result=odd_index([1,2,3,45,65])
print(result)

image.png

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

def sum1(n):
    """
    求n个数的和
    :param n:输入的数字
    :return: 数字之和
    """
    sum2 = 0
    for item in range(0,n+1):
        sum2 += item
    return sum2
import my_sum1
result=my_sum1.sum1(5)
print(result)
image.png

列表模块

def index_list(list1:list,item):
    """
    获取指定元素对应的下标
    :param list1: 指定的列表
    :param item: 指定元素
    :return: 符合要求的所有下标
    """
    list2=[]
    for index in range(len(list1)):
        if item == list1[index]:
            list2.append(index)
    return list2
import my_list
result = my_list.index_list([1,2,3,4,1,4],1)
print(result)
image.png
上一篇下一篇

猜你喜欢

热点阅读