day9-作业

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

my_year = lambda a : (a % 4 == 0 and a % 100 != 0) or (a % 400 == 0)
print(my_year(1994))

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

def inverted_sequence(list):
    i = 0
    while i < len(list) // 2:
            temp = list[i]
            list[i] = list[len(list)-1-i]
            list[len(list)-1 - i] = temp
            i += 1
    return list


list1 = inverted_sequence([1, 2, 3, 4, 5, 6])
print(list1)

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

def odd(str):
    str1 = ''
    for i in range(len(str)):
        if i % 2 != 0:
            str1 += str[i]
    return str1

print(odd('abcdefgh'))

3.写一个函数,统计指定列表中指定元素的个数(不用列表自带的count方法)

def my_count(list, num1):
    num2 = 0
    for i in range(len(list)):
        if list[i] == num1:
            num2 += 1

    return num2


num1 = my_count([1, 2, 'a', 5, 'b', 4, 'a', 'a', 1, 4, 5, 7, 8], 'a')
print(num1)

4.写一个函数,获取指定列表中指定元素的下标(如果指定元素有多个,将每个元素的下标都返回)

def my_count(list, num1):
    list1 = []
    for i in range(len(list)):
        if list[i] == num1:
            list1.append(i)
    return list1


num1 = my_count([1, 2, 'a', 5, 'b', 4, 'a', 'a', 1, 4, 5, 7, 8], 'a')
print(num1)

例如: 列表是:[1, 3, 4, 1] ,元素是1, 返回:0,3

5.写一个函数,能够将一个字典中的键值对添加到另外一个字典中(不使用字典自带的update方法)

def my_add(dict1: dict, dict2: dict):
    key = dict1.keys()
    values = dict1.values()
    list1 = []
    list2 = []
    for i in key:
        list1.append(i)
    for i in values:
        list2.append(i)
    j = 0
    for i in list1:
        if j < len(list2):
            dict2[i] = list2[j]
            j += 1
    return dict2

print(my_add({'a': 1, 'b': 2, 'c': 3, 'd': 4},{}))

6.写一个函数,能够将指定字符串中的所有的小写字母转换成大写字母;所有的大写字母转换成小写字母(不能使用字符串相关方法)

def exchange(str):
    str2 = ''
    for i in range(len(str1)):
        if ('a' <= str1[i] <= 'z'):
            str2 += chr(int(ord(str1[i])) - 32)
        elif ('A' <= str1[i] <= 'Z'):
            str2 += chr(int(ord(str1[i])) + 32)
    return str2
print(exchange(str1))

7.写一个函数,能够将指定字符串中的指定子串替换成指定的其他子串(不能使用字符串的replace方法)

例如: func1('abcdaxyz', 'a', '') - 返回: '\bcd\xyz'

def my_replace(str1, str2, str3):
    lsit1 = list(str1)
    for i in range(len(lsit1)):
        if lsit1[i] == str2:
            lsit1[i] = str3
    str1 = str(lsit1)
    return str1

print(my_replace('abcdaxyz', 'a', 'b'))

8.实现一个输入自己的items方法,可以将自定的字典转换成列表。列表中的元素是小的列表,里面是key和value (不能使用字典的items方法)

dit ={'a':1, 'b':2,'c':3, 'd':4}
def my_list(dict1:dict):
    list1= []
    list2= []
    for key in dit:
        list1 = []
        list1.append(key)
        list1.append(dit[key])
        list2.append(list1)
    return list2

print(my_list(dit))

例如:{'a':1, 'b':2} 转换成 [['a', 1], ['b', 2]

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容