• 函数基础的作业


    1、写函数,,用户传入修改的文件名,与要修改的内容,执行函数,完成批量修改操作
    2、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数

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

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

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

    6、写函数,检查字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
    dic = {"k1": "v1v1", "k2": [11,22,33,44]}
    PS:字典中的value只能是字符串或列表

    1

    def modify_file(filename,old,new):
        import os
        with open(filename,'r',encoding='utf-8') as read_f,
            open('.bak.swap','w',encoding='utf-8') as write_f:
            for line in read_f:
                if old in line:
                    line=line.replace(old,new)
                write_f.write(line)
        os.remove(filename)
        os.rename('.bak.swap',filename)
    
    modify_file('/Users/jieli/PycharmProjects/爬虫/a.txt','alex','SB')

    2

    def check_str(msg):
        res={
            'num':0,
            'string':0,
            'space':0,
            'other':0,
        }
        for s in msg:
            if s.isdigit():
                res['num']+=1
            elif s.isalpha():
                res['string']+=1
            elif s.isspace():
                res['space']+=1
            else:
                res['other']+=1
        return res
    
    res=check_str('hello name:aSB passowrd:alex3714')
    print(res)

    4

    def long(x):
        if len(x)>2:
            return x[0:2]
    
    long([2,3,5,6,])

    5

    def long(x):
        if len(x)>2:
            return x[::2]

    6

    def d(dic):
        for k in dic:
            if len(dic[k]) > 2:
                dic[k] = dic[k][0:2]
        return dic       
  • 相关阅读:
    gbk与utf-8转换
    gdb注意事项
    Ubuntu导入证书
    Ubuntu 修改hosts
    GDB配置与.gdbinit的编写
    linux中用户的主目录~
    关于C++构造函数初始化顺序
    C++中的static关键字的总结
    Flutter移动电商实战 --(2)建立项目和编写入口文件
    Flutter移动电商实战 --(1)项目学习记录
  • 原文地址:https://www.cnblogs.com/ye-hui/p/9703162.html
Copyright © 2020-2023  润新知