色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Python 高效編程技巧分享

瀏覽:5日期:2022-07-11 16:46:06

一、根據條件在序列中篩選數據

假設有一個數字列表 data, 過濾列表中的負數

data = [1, 2, 3, 4, -5] # 使用列表推導式result = [i for i in data if i >= 0] # 使用 fliter 過濾函數result = filter(lambda x: x >= 0, data) 學生的數學分數以字典形式存儲,篩選其中分數大于 80 分的同學

from random import randint d = {x: randint(50, 100) for x in range(1, 21)}r = {k: v for k, v in d.items() if v > 80}

二、對字典的鍵值對進行翻轉

使用 zip() 函數

zip() 函數用于將可迭代的對象作為參數,將對象中對應的元素打包成一個個元組,然后返回由這些元組組成的列表。

from random import randint, sample s1 = {x: randint(1, 4) for x in sample('abfcdrg', randint(1, 5))}d = {k: v for k, v in zip(s1.values(), s1.keys())}

三、統計序列中元素出現的頻度

某隨機序列中,找到出現次數最高的3個元素,它們出現的次數是多少

方法1:

# 可以使用字典來統計,以列表中的數據為鍵,以出現的次數為值from random import randint # 構造隨機序列data = [randint(0, 20) for _ in range(30)] # 列表中出現數字出現的次數d = dict.fromkeys(data, 0) for v in d: d[v] += 1

方法2:

# 直接使用 collections 模塊下面的 Counter 對象from collections import Counterfrom random import randint data = [randint(0, 20) for _ in range(30)] c2 = Counter(data) # 查詢元素出現次數c2[14] # 統計頻度出現最高的3個數c2.most_common(3) 對某英文文章單詞進行統計,找到出現次數最高的單詞以及出現的次數

import refrom collections import Counter # 統計某個文章中英文單詞的詞頻with open('test.txt', 'r', encoding='utf-8') as f: d = f.read() # 所有的單詞列表total = re.split('W+', d)result = Counter(total)print(result.most_common(10))

四、根據字典中值的大小,對字典中的項進行排序

比如班級中學生的數學成績以字典的形式存儲,請按數學成績從高到底進行排序

方法1:

# 利用 zip 將字典轉化為元組,再用 sorted 進行排序from random import randint data = {x: randint(60, 100) for x in 'xyzfafs'}sorted(data)data = sorted(zip(data.values(), data.keys()))

方法2:

# 利用 sorted 函數的 key 參數from random import randint data = {x: randint(60, 100) for x in 'xyzfafs'}data.items()sorted(data.items(), key=lambda x: x[1])

五、在多個字典中找到公共鍵

實際場景:在足球聯賽中,統計每輪比賽都有進球的球員

第一輪:{'C羅': 1, '蘇亞雷斯':2, '托雷斯': 1..}

第二輪:{'內馬爾': 1, '梅西':2, '姆巴佩': 3..}

第三輪:{'姆巴佩': 2, 'C羅':2, '內馬爾': 1..}

from random import randint, samplefrom functools import reduce # 模擬隨機的進球球員和進球數s1 = {x: randint(1, 4) for x in sample('abfcdrg', randint(1, 5))}s2 = {x: randint(1, 4) for x in sample('abfcdrg', randint(1, 5))}s3 = {x: randint(1, 4) for x in sample('abfcdrg', randint(1, 5))} # 首先獲取字典的 keys,然后取每輪比賽 key 的交集。由于比賽輪次數是不定的,所以使用 map 來批量操作# map(dict.keys, [s1, s2, s3]) # 然后一直累積取其交集,使用 reduce 函數reduce(lambda x, y: x & y, map(dict.keys, [s1, s2, s3]))

以上就是Python 高效編程技巧分享的詳細內容,更多關于Python 高效編程技巧的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 在线欧美一级毛片免费观看 | 久久精品7 | 欧美a在线播放 | 国产精品国产三级国产专播 | 国产精品1区2区3区 国产精品1区2区3区在线播放 | 亚洲精品一区二区三区在 | 亚洲在线小视频 | 国产黄毛片 | 一级做a爰片久久毛片 | 国产一区二区在线免费观看 | 欧美日韩中文国产一区二区三区 | 亚洲另类视频 | 欧美一线视频 | 亚洲丝袜另类 | 精品中文字幕不卡在线视频 | 成人免费看黄 | 99久热在线精品视频播放6 | 怡红院成人永久免费看 | 成年男女免费视频 | 精品中文字幕在线观看 | 欧美一级高清片 | 亚洲成人在线视频网站 | 国产视频a区 | 亚洲自拍图片区 | 免费看黄色片的网站 | 中文一区在线观看 | 国产成人精品视频午夜 | 欧美极品第1页专区 | 国产激情久久久久久影院 | 国产日韩精品一区二区三区 | 视频国产91 | 俄罗斯a级毛片 | 欧做爰xxxⅹ性欧美大 | 亚洲加勒比久久88色综合1 | 亚洲国产综合人成综合网站00 | 丝袜一级片 | 欧美综合视频在线 | 日本在线毛片视频免费看 | 精品真实国产乱文在线 | 欧美人成a视频www | 99久久综合给久久精品 |