day11作业

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

x = lambda x=2019:(x % 4 == 0 and x % 100 != 0) or x % 400 == 0


print(x())
print(x(1900))
print(x(2000))
print(x(2012))

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

def zy_reverse_1(list1:list):
    for index in range(len(list1) // 2):
        list1[index],list1[-index - 1] = list1[-index - 1],list1[index]
    return list1


def zy_reverse_2(list1:list):
    new_list = list1[-1::-1]
    return new_list


a = ['a','b','c','d']
b = [1,9,2,8,4,7,6,0]
c = [1,'a',4,'g']
print(zy_reverse_1(a))
print(zy_reverse_1(b))
print(zy_reverse_1(c))
print(zy_reverse_2(a))
print(zy_reverse_2(b))
print(zy_reverse_2(c))

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

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

def zy_index(list1:list,item):
    result = ''
    for index in range(len(list1)):
        if list1[index] == item:
            result += str(index) + ','
    if len(result) == 0:
        return -1
    else:
        return result[:-1]


print(zy_index([1, 2, 3, 'a', 'b', 'c', 1, 2, 3, 1], 1))
print(zy_index([1, 2, 3, 'a', 'b', 'c', 1, 2, 3, 1], '1'))

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

def zy_update(dict1:dict,dict2:dict):
    for key in dict2:
        dict1[key] = dict2[key]
    return dict1


dict1 = {'a':1,'b':2,'c':3}
dict2 = {'d':4,'e':5}
print(zy_update(dict1,dict2))

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

def zy_swapcase(str1:str):
    for index in range(len(str1)):
        char = str1[index]
        if 'a' <= char <= 'z':
            new_char = chr(ord(char) - 32)
            str1 = str1[:index] + new_char + str1[index + 1:]
        elif 'A' <= char <= 'Z':
            new_char = chr(ord(char) + 32)
            str1 = str1[:index] + new_char + str1[index + 1:]
    return str1


print(zy_swapcase('as12DFGas0'))

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

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

def zy_items(dict1:dict):
    new_list = []
    for key in dict1:
        value = dict1[key]
        new_items = [key,value]
        new_list.append(new_items)
    return new_list

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

7.写一个函数,实现学生的添加功能:

stu_list = []
count = 1
choice = 1
def zy_add_stu(name:str,age:int,phone:str,number:str):
    stu_dict = {}
    number = number.zfill(4)
    stu_dict['姓名'] = name
    stu_dict['年龄'] = age
    stu_dict['电话'] = phone
    stu_dict['学号'] = number
    global stu_list
    stu_list.append(stu_dict)
    return stu_list


while choice == 1:
    print('===================添加学生====================')
    zy_add_stu(input('输入学生姓名:'),int(input('输入学生年龄:')),input('输入学生电话:'),str(count))
    print('======添加成功!')
    for item in stu_list:
        info = str(item)[1:-1]
        print(info)
    print("""
===============================================
1.继续
2.返回
    """)
    choice = int(input('请选择:'))
    count += 1

print('谢谢使用,再见!')
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写一个匿名函数,判断指定的年是否是闰年 写一个函数将一个指定的列表中的元素逆序( 如[1, 2, 3] -> [3...
    胆小的小喷菇阅读 2,425评论 0 0
  • 1. 写一个匿名函数,判断指定的年是否是闰年 2. 写一个函数将一个指定的列表中的元素逆序( 如[1, 2, 3]...
    我去买个橘子o阅读 1,300评论 0 0
  • 1. 写一个匿名函数,判断指定的年是否是闰年 2. 写一个函数将一个指定的列表中的元素逆序( 如[1, 2, 3]...
    PonesRyang阅读 1,261评论 1 0
  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 10,801评论 0 9
  • 为什么需要跨域? 因为浏览器的同源策略的限制,所以在进行数据传输时需要进行跨域操作。什么是同源:即具有相同的端口、...
    xiaoguo16阅读 2,649评论 0 0