• DAY10课下作业


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

    #a.txt内容:egon

    def modify_file(filename,old,new):

       import os

       with open('a.txt','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('a.txt')

       os.rename('.bak.swap','a.txt')

    modify_file(r'E:Program Files (x86)Python3.7练习a.txt','egon','alex')

    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('1.success is from diligence')

    print(res)

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

    def func(n):

      print('判断传入对象的长度是否大于5')

      if len(n) >= 5:

        return True   

      else:

        return False

    content = input('请输入您要判断的内容:')

    print(func(content))

     

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

    def func(n):

      if len(n) > 2:

        n=n[0:2]

      else:

        n=n

      return n

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

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

    def func(n):

      return n[::2]

    print(func([1,2,3,4,5,6,7,8,9]))

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

      dic = {'k1': 'v1v1', 'k2': [11,22,33,44]}

      PS:字典中的value只能是字符串或列表。

    dic = {'k1': 'v1v1', 'k2': [11, 22, 33, 44]}

    def func(dic):

      n = {}

      for keys, value in dic.items():

        if len(value) > 2:

          n[keys] = value[0:2]

        else:

          n[keys] = value

      return n

    print(func({'k1': 'v1v1', 'k2': [11, 22, 33, 44]}))

  • 相关阅读:
    ubuntu jdk安装
    paxos 算法略解
    java 异常问题 (望解答)
    jquery加载问题
    The Pragmatic Programmer Quick Reference Guide
    车辆调度管理系统开发(三)
    车辆调度管理系统开发(二)
    车辆调度管理系统开发(一)
    vue2过渡&动画
    VScode 之快速创建vue模板
  • 原文地址:https://www.cnblogs.com/lipengjia/p/9699879.html
Copyright © 2020-2023  润新知