zoukankan      html  css  js  c++  java
  • 练习题

    .将0到10中的偶数拼接成一个字符串输出

    例如输出02468

    a = [str(i) for i in range(0,10) if i%2==0]
    print(''.join(a))

    结果

    02468

    .有字符串:abc,,11dab,找出重复的字母或者数字,并统计重复次数

    a重复2次;b重复2次;1重复2次

    1.先去掉特殊字符,用filter函数去掉特殊字符

    list(filter(str.isalnum,s))

    2.再用set函数生成一个新的list,去掉重复的字母或者数字

    set(list(filter(str.isalnum,s)))

    3.找出重复的字母或者数字,用count函数统计字母或者数据出现的次数,超过1次就是重复出现

    完整代码:

    s = "abc,,11dab"
    
    a1 = list(filter(str.isalnum,s))
    
    b = set(a1)
    
    for i in b:
        if a1.count(i) > 1:
            print("字符:%s,重复次数:%s"%(i,a1.count(i)))

    输出结果:

    字符:b,重复次数:2
    字符:a,重复次数:2
    字符:1,重复次数:2

    实现2:

    s = "abc,,11dab"
    
    a1 = list(filter(str.isalnum,s))
    
    b = set(a1)
    
    c = {}
    for i in b:
        if a1.count(i) > 1:
            c[i] = a1.count(i)
    print(c)

    输出结果:

    {'1': 2, 'b': 2, 'a': 2}

    三.字符串:abbacd,找出不重复的第一个字符

    输出c

    1.生成一个没有重复元素新的list,并且保持生成的list顺序不变

    如果用set函数生成的新的list每次的顺序都是变化的,不利于我们实现找出不重复的第一个字符

    使用如下方法保证新生成的list顺序与字符串顺序一致

    s = "abbacd"
    
    b = list(s)
    b1 = list(set(b))
    b1.sort(key=b.index)
    print(b1)

    输出结果:

    ['a', 'b', 'c', 'd']

    2.再根据新生成的list去字符串s中统计每个元素重复的次数,找到第一个不重读的字符,打印出元素

    代码如下:

    s = "abbacd"
    
    b = list(s)
    b1 = list(set(b))
    b1.sort(key=b.index)
    print(b1)
    
    c = {}
    for i in b1:
        if s.count(i) == 1:
            c[i] = s.count(i)
            break

    for j in c.keys(): print(j)

    输出结果:c

    四.整型数组排序   1,2,23,44,51   最后得到11223445

    思路:将整型数组转换成字符串,再将字符串转换成数组,最后对数组进行排序

    1.将整型数组转换成字符串

    L1 = [1,2,23,44,51]
    
    a = ''.join(map(str,L1))

    2.将字符串转换成数组

    L2 = list(a)

    3.对数组进行排序

    L2.sort()
    s = ''.join(L2)
    print(s)

    输出:11223445

    五.如何获取list中最后一个元素

    答案:list[-1]

    六.读取文件,每一行有一个字段为数字,按数字大小排序,输出整个文档

    wj.txt

    1amndjkakkd,ksdllsksdf
    sdlkslsd2222lslkdlsfkssds
    sdkl,456sdlksdlkfslfkdlsk
    sfsdfsfdsfdsfdsfdsdsf78

    实现代码:

    import re
    
    L = []
    for line in open("wj.txt","r").readlines():
        # print(line.strip("
    "))
        m = re.findall(r'd+',line.strip("
    "))
        # print(m[0])
        L.append(int(m[0]))
    L.sort()
    for i in L:
        for j in open("wj.txt","r").readlines():
            if str(i) in j:
                with open("wj1.txt","a") as f:
                    f.write(j+'
    ')

    结果:

    1amndjkakkd,ksdllsksdf

    sfsdfsfdsfdsfdsfdsdsf78
    sdkl,456sdlksdlkfslfkdlsk

    sdlkslsd2222lslkdlsfkssds
  • 相关阅读:
    python实现对单机游戏内存修改
    python_turtle模板画图
    Android向Rest服务Post数据遇到的Date类型数据问题
    Jquery根据字段内容设置字段宽度
    LLVM安装
    impala编译
    JS一些简单的问题
    小三角形的制作方法
    js中的一些简单问题
    另一部分页面
  • 原文地址:https://www.cnblogs.com/yrxns/p/7744201.html
Copyright © 2011-2022 走看看