• 17-list,字典使用练习


      randint(a,b)包括 [a,b]中随机, 包含a,b

      range(n)= 0,1,2,3....n-1

      chr() 数字转字符:

        chr(65) 得到 :A

      ord()字符转数字:

         ord('a') 得到:97

    ys = [random.randint(1,2) for i in range(10)] #产生1~2
    print(ys)
    
    x = range(5)
    print(list(x)) #0,1,3,4 

      

    随机生成一些字符,并存入list里面:

    import random
    def getRandCharList(n, f):
        # n为所需随机序列的长度,f=1为只要大写,f=2为大写加小写,f=3为再加上数字
        
        a = [ chr(i+65) for i in range(26)] #'A'-'Z'的顺序序列
        b = [ chr(i+97) for i in range(26)] #'a'-'z'的顺序序列
        c = [  i for i in range(10)]        #0-9的顺序序列  
        c = a + b + c
        if f == 1: 
            rt = [ c[random.randint(0,25)] for i in range(n)]
        elif f == 2:
            rt = [ c[random.randint(0,51)] for i in range(n)]
        else:
            rt = [ c[random.randint(0,61)] for i in range(n)]
        return rt
    
    rt = getRandCharList(100,3)
    print(rt)

     统计一片英文文章里面的字母出现次数:

    def tongji(path):
        # 传入文件所在地址,统计文件内大小写字母的个数,按次数降序返回list
        with open(path, 'rb') as f:
            str = f.read().decode('utf-8')
    
        d = [ chr(i+65) for i in range(26)] #'A'-'Z'的顺序序列
        x = [ chr(i+97) for i in range(26)] #'a'-'z'的顺序序列
        mychar = x + d
        dist = {}
        for i in range(52):
            dist[mychar[i]] = 0
        for i in str:
            if (i >= 'a' and i <= 'z') or (i >= 'A' and i <= 'Z'):
                dist[i] = dist[i] + 1
        dist = sorted(dist.items(), key = lambda x:x[1], reverse = True ) #sorted返回新对象
        return dist
    
    #filepath = 'C:\Users\sss\Desktop\ys.txt';
    filepath = 'ys.txt'
    tj = tongji(filepath);
    #print(tj)
    ct = 0
    for k,v in tj:
        if v > 0:
            ct = ct + 1
            print(k,': ', v)
    print("ct: ", ct)

      

    字典排序:

    sorted(dict.items(), key=lambda e:e[1], reverse=True)

    Python 字典(Dictionary) items() 函数以列表返回可遍历的(键, 值) 元组数组。

    语法
    items()方法语法:

    dict.items()

    lambda:

    lambda函数也叫匿名函数,即,函数没有具体的名称。先来看一个最简单例子:

    def f(x):
    return x**2
    print f(4)

    Python中使用lambda的话,写成这样

    g = lambda x : x**2
    print g(4)

    Python sorted() 函数:

    sorted() 函数对所有可迭代的对象进行排序操作。

    sort 与 sorted 区别:

    sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

    list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作

  • 相关阅读:
    Android触控屏幕Gesture(GestureDetector和SimpleOnGestureListener的使用教程)
    Cocos发展Visual Studio下一个libcurl图书馆开发环境的搭建
    使用DbUtils实现CRUD
    大约apache 2.4.X虚拟主机配置问题的版本号后,
    应对黑客攻击SQL SERVER数据库中的一个案例
    【Unity技能】做一个简单的NPC
    ViewRootImpl和WindowManagerService笔记
    Web Service简单入门示例
    Oracle Instanc Client安装命令工具
    ListView嵌套GridView显示不完整的解决方案
  • 原文地址:https://www.cnblogs.com/zhumengdexiaobai/p/9620115.html
Copyright © 2020-2023  润新知