• 函数练习


    #!/usr/bin/env python
    # -*- coding:utf-8 -*-  
    # by wk
    
    '''
    1、写函数,,用户传入修改的文件名,与要修改的内容,执行函数,完成批了修改操作
    2、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数
    3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
    4、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
    5、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
    6、写函数,检查字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
    dic = {"k1": "v1v1", "k2": [11,22,33,44]}
    PS:字典中的value只能是字符串或列表
    '''
    
    import os
    
    
    # 第一题
    def update_file(old, new):
        with open('test.txt', 'r', encoding='utf8') as read_f, open('test_new.txt', 'w', encoding='utf8') as write_f:
            for line in read_f:
                if old in line:
                    line = line.replace(old, new)
                write_f.write(line)
        os.remove('test.txt')
        os.rename('test_new.txt', 'test.txt')
        print('update success')
    
    
    # 第二题
    def count_enter(mystrings):
        count = 0
        mystring_list = [0, 0, 0, 0]
        for mystring in mystrings:
            if mystring.isdigit():
                mystring_list[0] += 1
            elif mystring.isalpha():
                mystring_list[1] += 1
            elif mystring.isspace():
                mystring_list[2] += 1
            else:
                mystring_list[3] += 1
    
        print('num is %s, letter is %s, Space is %s, Other is %s' % (
            mystring_list[0], mystring_list[1], mystring_list[2], mystring_list[3]))
    
    
    # 第三题
    def check_len(mystrings):
        if type(mystrings) == str:
            if len(mystrings) > 5:
                print('this is str and len > 5')
            else:
                print('this is str but len =< 5')
        elif type(mystrings) == list:
            if len(mystrings) > 5:
                print('this is list and len > 5')
            else:
                print('this is list but len =< 5')
        elif type(mystrings) == tuple:
            if len(mystrings) > 5:
                print('this is tuple and len > 5')
            else:
                print('this is tuple but len =< 5')
    
    
    # 第四题
    def check_list_len(mystrings):
        if len(mystrings)>2:
            print(mystrings[0:2])
        else:
            print(mystrings)
    
    
    # 第五题
    def check_odd(mystrings):
        i = 0
        new_mystrings = []
        while True:
            if i > len(mystrings)-1:
                break
            new_mystrings.append(mystrings[i])
            i += 2
        print(new_mystrings)
    
    
    #第六题
    def my_dic(mylendict):
        new_mydict = {}
        print(type(mylendict))
        for lenv in mylendict:
            if len(mylendict[lenv]) > 2:
                new_mydict[lenv] = mylendict[lenv][0:2]
            else:
                new_mydict[lenv] = mylendict[lenv]
        print(new_mydict)
    
    
    if __name__ == '__main__':
        update_file('a', 'b')
        count_enter('asdasda123   @#$$')
        check_len([1, 2, 3, 4, 5])
        check_len((1, 2, 3, 4, 5, 6))
        check_len('aaaaaaaaaa')
        check_list_len(['a',1,2,'b','c',6])
        check_odd(['a',3,6,'g',5])
        dic = {"k1": "v1v1", "k2": [11, 22, 33, 44]}
        my_dic(dic)
  • 相关阅读:
    PHP 计算页面执行时间
    PHP 实现多服务器共享 SESSION 数据
    你不了解PHP的10件事情
    智能的PHP缩图类
    php配置文件php.ini 中文版
    PclZip:强大的PHP压缩与解压缩zip类
    https 加载问题
    docker 安装sentry
    requests ssl 报错
    解决长时间计划任务rsync同步进程数过多
  • 原文地址:https://www.cnblogs.com/godspeed034/p/7245652.html
Copyright © 2020-2023  润新知