zoukankan      html  css  js  c++  java
  • Python--字典

    打印一组字母串中每个字母出现的频率

    1, 列表方案解决:

    >>> s = 'abcefdddfffsss'
    >>> lst = [0]*26 #生成26位的list,初始值为0
    >>> for i in s:
    ...     lst[ord(i) - 97] += 1  #用ord()将字符串格式转化成ASII - 97 为方便list计数
    ...     
    >>> print lst
    [1, 1, 1, 3, 1, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0]

    2, 字典解决方案

    >>> count = {}
    >>> for i in 'abcccdddfffeee':
    ...     if i in count:
    ...         count[i] += 1
    ...     else:
    ...         count[i] = 0
    ...         
    >>> print count
    {'a': 0, 'c': 2, 'b': 0, 'e': 2, 'd': 2, 'f': 2}

    3,字典反转

    >>> d1 = {'zhang':123, 'wang':456, 'zhao':123, 'guan':456}
    >>> d2 = {}
    >>> for name, room in d1.items():
    ...     if room in d2:
    ...         d2[room].append(name)
    ...     else:
    ...         d2[room] = [name]
    ...         
    >>> print d2
    {456: ['guan', 'wang'], 123: ['zhao', 'zhang']}

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

    
    
     1 #!/usr/bin/env python
     2 # -*- coding: UTF-8 -*-
     3 
     4 f = open('VVPS-Test-ReasonResultAnalysis.txt')
     5 
     6 word_freq = {}
     7 
     8 for line in f:
     9     words = line.split() # split a line by blanks
    10     for word in words:
    11         if word in word_freq:
    12             word_freq[word] += 1
    13         else:
    14             word_freq[word] = 1
    15 word_freq_list = []
    16 for word, freq in word_freq.items():
    17     word_freq_list.append((freq, word)) # exchange the key and values.
    18 word_freq_list.sort(reverse = True) # list sort function to sort the list
    19 
    20 for freq, word in word_freq_list:
    21     print word, freq
    22 
    23 
    24 f.close()
    
    
    
     
  • 相关阅读:
    URL编码和Bsae64编码
    在控制台保存下载数据文件方法
    前端下载文件的几种方式
    npm i error:0909006C:PEM routines:get_name:no start line 遇到问题解决
    MapTalks.js 使用小结(三): 各类地图加载
    在线瓦片地图服务资源 总结
    npm webpack 遇到的问题解决方案总结
    MapTalks.js 使用小结(二)
    可拖动的进度条 in vue
    滚动条vue-seamless-scroll的使用
  • 原文地址:https://www.cnblogs.com/brownz/p/8310472.html
Copyright © 2011-2022 走看看