zoukankan      html  css  js  c++  java
  • 作业0318

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

    def change_files(file_path,old,new):
        '''批量修改文件的函数'''
        list1=[]
        with open(file_path,'r',encoding='utf-8') as f:
            for line in f:
                line=line.replace(old,new)
                list1.append(line)
                print(list1)
        with open (file_path,'w',encoding='utf-8') as f1:
            for line in list1:
                f1.write(line)
    
    change_files()
    

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

    def str_counts(str1):
        '''计算传入字符串中【数字】、【字母】、【空格】 以及 【其他】的个数'''
        dig_num = 0
        alp_num = 0
        space_num = 0
        other_num = 0
        for x in str1:
            if x.isdigit():
                dig_num += 1
            elif x.isalpha():
                alp_num += 1
            elif x.isspace():
                space_num += 1
            else:
                other_num += 1
        print('字符串中【数字】{}个、【字母】{}个、【空格】{}个、【其他】{}个'.format(dig_num,alp_num,space_num,other_num))
    str_counts()
    

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

    def more_than_5():
        inp_sth = input('请输入要检测的对象(字符串、列表、元组):')
        if inp_sth.startswith('[') and inp_sth.endswith(']'):
            inp_sth = inp_sth.strip('[').strip(']').replace(',','')
            res = len(inp_sth)
        elif inp_sth.startswith('(') and inp_sth.endswith(')'):
            inp_sth = inp_sth.strip('(').strip(')').replace(',', '')
            res = len(inp_sth)
        else:
            res = len(inp_sth)
        print(res)
    
    more_than_5()
    
    

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

    def more_than_2(x, y, *args):
        return x, y
    x, y = more_than_2(*[1, 2, 3, 4, 5, '6'])
    print(x,y)
    
    

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

    def return_single(old_list):
        if type(old_list)==list or type(old_list)==tuple:
            new_list = []
            for i in old_list:
                if  old_list.index(i)%2 == 1:
                    new_list.append(i)
        else:
            print("输入的类型不是列表或元组,请重新输入!")
        return new_list
    res = return_single([1,2,3,4,5])
    print(res)
    
    

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

    dic = {"k1": "v1v1", "k2": [11,22,33,44]}
    def more_than_2(a):
        for i in a:
            if len(a[i]) > 2:
                a[i] = a[i][0:2]
        return a
    res = more_than_2(dic)
    print(res)
    
    
  • 相关阅读:
    解决 下载 CM-12.0 源代码出现 Fatal: duplicate project .....问题
    解决Centos 7 dhcp服务器-no subnet declaration for start (no IPV4 addresses.)
    pgAdmin III 是 postgresql 的管理工具
    Ubuntu PostgreSQL安装和配置
    redis三种连接方式
    Delphi中Interface接口的使用方法
    解决lazarus 多线程报错问题
    Ubuntu安装UFW防火墙
    lazarus安装
    Ubuntu 虚拟机增强包下载
  • 原文地址:https://www.cnblogs.com/zuiyouyingde/p/12521848.html
Copyright © 2011-2022 走看看