ⅩⅣ:作业

1、写函数,,用户传入修改的文件名,与要修改的内容,执行函数,完成批了修改操作

import os
def user(name,content,end_content):
    with open(name,'r',encoding='utf-8') as f,\
            open('.name.txt.swp','w',encoding='utf-8') as c1:
        for i in f:
                if content in i:
                    i = i.replace(content,end_content)
                c1.write(i)

    os.remove(name)
    os.rename('.name.txt.swp',name)
user('a.txt','123123','alex')

2、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数

def str_num(str_count):
    num = 0
    str_1 = 0
    sp = 0
    cou = 0
    for i in str_count:
        if i.isdigit():
            num +=1
        elif i.isspace():
            sp += 1
        elif i.isalpha():
            str_1 += 1
        else:
            cou += 1
    print('数字:%s个\n字母:%s个\n空格:%s个\n其他:%s个' %(num,str_1,sp,cou))

str_num('fu385y3u9rafhwovyb 02tp    8y0 1 bro`4u0989*t&t&*y(*1')

3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。

def user_len(obj_len):
    if len(obj_len) > 5:
        return True
    return False

s = (4253,'egrgerg',25,5252,52532,2142)
ret = user_len(s)
print(ret)

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

def user_len(obj_len):
    if len(obj_len) > 2:
        return obj_len[:2]
    else:
        return False

ret = user_len([11,1])
print(ret)

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

def user(args):
    s = []
    for i in range(len(args)):
        if i % 2 == 1:
            s.append(args[i])
    print(s)

s = ['zz','xx','cc','vv','bb','nn','77','88','99']
user(s)

6、写函数,检查字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。

# dic = {"k1": "v1v1", "k2": [11,22,33,44]}
# PS:字典中的value只能是字符串或列表
def valus_obj(args):
    for i in args:
        if len(args[i]) > 2:
            args[i] = args[i][:2]
    return args

dic = {"k1": "v1v1", "k2": [11, 22, 33, 44]}
ret = valus_obj(dic)
print(ret)

选做作业:同昨天

猜你喜欢

转载自www.cnblogs.com/qujiu/p/12519405.html