日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁(yè) > 科技  > 軟件

掌握Python核心利器:列表推導(dǎo)、字典推導(dǎo)與集合推導(dǎo)全面解析

來源: 責(zé)編: 時(shí)間:2024-06-21 17:19:18 134觀看
導(dǎo)讀在Python編程的世界里,推導(dǎo)式(Comprehensions)以其簡(jiǎn)潔、高效的特性,成為編寫優(yōu)雅代碼的不二法門。列表推導(dǎo)(List Comprehensions)、字典推導(dǎo)(Dictionary Comprehensions)和集合推導(dǎo)(Set Comprehensions)不僅能夠顯著提升代碼的

在Python編程的世界里,推導(dǎo)式(Comprehensions)以其簡(jiǎn)潔、高效的特性,成為編寫優(yōu)雅代碼的不二法門。列表推導(dǎo)(List Comprehensions)、字典推導(dǎo)(Dictionary Comprehensions)和集合推導(dǎo)(Set Comprehensions)不僅能夠顯著提升代碼的可讀性,還能在處理數(shù)據(jù)時(shí)大大增強(qiáng)性能。本篇推文將深入探討這三大推導(dǎo)式的精髓,通過豐富示例,讓你在實(shí)戰(zhàn)中領(lǐng)略它們的魅力。6KG28資訊網(wǎng)——每日最新資訊28at.com

6KG28資訊網(wǎng)——每日最新資訊28at.com

6KG28資訊網(wǎng)——每日最新資訊28at.com

列表推導(dǎo):簡(jiǎn)潔構(gòu)建列表的魔法

列表推導(dǎo)式是Python中構(gòu)造列表最直觀且高效的方式。它允許你在一行代碼中完成循環(huán)、條件判斷以及新元素的生成。6KG28資訊網(wǎng)——每日最新資訊28at.com

基礎(chǔ)示例:平方數(shù)生成6KG28資訊網(wǎng)——每日最新資訊28at.com

squares = [x**2 for x in range(1, 6)]print(squares)  # 輸出:[1, 4, 9, 16, 25]

條件過濾:篩選偶數(shù)6KG28資訊網(wǎng)——每日最新資訊28at.com

even_numbers = [x for x in range(10) if x % 2 == 0]print(even_numbers)  # 輸出:[0, 2, 4, 6, 8]

嵌套循環(huán):矩陣轉(zhuǎn)置6KG28資訊網(wǎng)——每日最新資訊28at.com

matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]transposed = [[row[i] for row in matrix] for i in range(len(matrix[0]))]print(transposed)  # 輸出:[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

字典推導(dǎo):構(gòu)建映射的藝術(shù)

字典推導(dǎo)允許你快速創(chuàng)建字典,其中每個(gè)鍵值對(duì)都是根據(jù)表達(dá)式計(jì)算得出的。6KG28資訊網(wǎng)——每日最新資訊28at.com

基礎(chǔ)示例:字母計(jì)數(shù)6KG28資訊網(wǎng)——每日最新資訊28at.com

word = "comprehension"char_count = {char: word.count(char) for char in set(word)}print(char_count)  # 輸出:{'c': 1, 'o': 2, 'm': 1, 'p': 1, 'r': 2, 'e': 2, 'h': 1, 'n': 1, 's': 1, 'i': 1, 't': 1}

條件過濾:年齡分類6KG28資訊網(wǎng)——每日最新資訊28at.com

people = [{"name": "Alice", "age": 30}, {"name": "Bob", "age": 25}, {"name": "Charlie", "age": 35}]age_groups = {person["name"]: "adult" if person["age"] >= 18 else "minor" for person in people}print(age_groups)  # 輸出:{'Alice': 'adult', 'Bob': 'adult', 'Charlie': 'adult'}

集合推導(dǎo):去重與集合運(yùn)算

集合推導(dǎo)提供了創(chuàng)建集合的便捷方式,尤其擅長(zhǎng)于去重和執(zhí)行集合間的操作。6KG28資訊網(wǎng)——每日最新資訊28at.com

去重并平方6KG28資訊網(wǎng)——每日最新資訊28at.com

numbers = [1, 2, 2, 3, 4, 4, 5]unique_squares = {x**2 for x in numbers}print(unique_squares)  # 輸出:{1, 4, 9, 16, 25}

交集與平方6KG28資訊網(wǎng)——每日最新資訊28at.com

set1 = {1, 2, 3, 4}set2 = {3, 4, 5, 6}common_squares = {x**2 for x in set1 & set2}print(common_squares)  # 輸出:{9, 16}

高級(jí)技巧:嵌套與鏈?zhǔn)酵茖?dǎo)

推導(dǎo)式可以相互嵌套,甚至與條件表達(dá)式相結(jié)合,實(shí)現(xiàn)復(fù)雜的邏輯。6KG28資訊網(wǎng)——每日最新資訊28at.com

嵌套列表推導(dǎo):矩陣乘法6KG28資訊網(wǎng)——每日最新資訊28at.com

matrix_a = [[1, 2], [3, 4]]matrix_b = [[5, 6], [7, 8]]result = [[sum(a*b for a, b in zip(row_a, col_b)) for col_b in zip(*matrix_b)] for row_a in matrix_a]print(result)  # 輸出:[[19, 22], [43, 50]]

鏈?zhǔn)酵茖?dǎo):復(fù)雜轉(zhuǎn)換

data = [("apple", 2), ("banana", 4), ("cherry", 1)]fruits_sorted_by_count = sorted(    (fruit for fruit, count in data),    key=lambda pair: pair[1],    reverse=True)print(fruits_sorted_by_count)  # 輸出:['banana', 'apple', 'cherry']

結(jié)語(yǔ)

列表推導(dǎo)、字典推導(dǎo)與集合推導(dǎo)是Python語(yǔ)言中不可或缺的精華部分,它們以簡(jiǎn)潔而強(qiáng)大的表達(dá)形式,極大提升了編碼效率和代碼的可讀性。通過上述示例,希望能幫助你深入理解這三大推導(dǎo)式的應(yīng)用,讓它們成為你編程旅途中的得力助手。在日常編程實(shí)踐中不斷探索,你會(huì)發(fā)現(xiàn)更多巧妙的使用場(chǎng)景,進(jìn)一步提升代碼的性能與美感。6KG28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-95541-0.html掌握Python核心利器:列表推導(dǎo)、字典推導(dǎo)與集合推導(dǎo)全面解析

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 30.1%,隆基綠能創(chuàng)商業(yè)化尺寸疊層電池效率世界紀(jì)錄

下一篇: Python 中的十個(gè)不可不知的隱藏系統(tǒng)調(diào)用功能

標(biāo)簽:
  • 熱門焦點(diǎn)
  • Mate60手機(jī)殼曝光 致敬自己的經(jīng)典設(shè)計(jì)

    8月3日消息,今天下午博主數(shù)碼閑聊站帶來了華為Mate60的第三方手機(jī)殼圖,可以讓我們?cè)谡鏅C(jī)發(fā)布之前看看這款華為全新旗艦的大致輪廓。從曝光的圖片看,Mate 60背后攝像頭面積依然
  • 紅魔電競(jìng)平板評(píng)測(cè):大屏幕硬實(shí)力

    前言:三年的疫情因?yàn)橐暇W(wǎng)課的原因激活了平板市場(chǎng),如今網(wǎng)課的時(shí)代已經(jīng)過去,大家的生活都恢復(fù)到了正軌,這也就意味著,真正考驗(yàn)平板電腦生存的環(huán)境來了。也就是面對(duì)著這種殘酷的
  • Redmi Pad評(píng)測(cè):紅米充滿野心的一次嘗試

    從Note系列到K系列,從藍(lán)牙耳機(jī)到筆記本電腦,紅米不知不覺之間也已經(jīng)形成了自己頗有競(jìng)爭(zhēng)力的產(chǎn)品體系,在中端和次旗艦市場(chǎng)上甚至要比小米新機(jī)的表現(xiàn)來得更好,正所謂“大丈夫生居
  • 8月總票房已突破10億!《封神》第一:口碑已經(jīng)成了

    8月5日消息,據(jù)燈塔專業(yè)版數(shù)據(jù),截至8月5日9時(shí)35分,8月總票房(含預(yù)售)已突破10億。其中,《封神》以大比分的優(yōu)勢(shì)領(lǐng)先。根據(jù)官方消息,目前該片總票房已經(jīng)超過14.
  • Raft算法:保障分布式系統(tǒng)共識(shí)的穩(wěn)健之道

    1. 什么是Raft算法?Raft 是英文”Reliable、Replicated、Redundant、And Fault-Tolerant”(“可靠、可復(fù)制、可冗余、可容錯(cuò)”)的首字母縮寫。Raft算法是一種用于在分布式系統(tǒng)
  • 破圈是B站頭上的緊箍咒

    來源 | 光子星球撰文 | 吳坤諺編輯 | 吳先之每年的暑期檔都少不了瞄準(zhǔn)追劇女孩們的古偶劇集,2021年有優(yōu)酷的《山河令》,2022年有愛奇藝的《蒼蘭訣》,今年卻輪到小破站抓住了追
  • 重估百度丨大模型,能撐起百度的“今天”嗎?

    自象限原創(chuàng) 作者|程心 羅輯2023年之前,對(duì)于自己的“今天”,百度也很迷茫。“新業(yè)務(wù)到 2022 年底還是 0,希望 2023 年出來一個(gè) 1。”這是2022年底,李彥宏
  • 2299元起!iQOO Pad明晚首銷:性能最強(qiáng)天璣平板

    5月23日,iQOO如期舉行了新品發(fā)布會(huì),除了首發(fā)安卓最強(qiáng)旗艦處理器的iQOO Neo8系列新機(jī)外,還在發(fā)布會(huì)上推出了旗下首款平板電腦——iQOO Pad,其最大的賣點(diǎn)
  • 由于成本持續(xù)增加,筆記本產(chǎn)品價(jià)格預(yù)計(jì)將明顯上漲

    根據(jù)知情人士透露,由于材料、物流等成本持續(xù)增加,筆記本產(chǎn)品價(jià)格預(yù)計(jì)將在2021年下半年有明顯上漲。進(jìn)入6月下旬以來,全球半導(dǎo)體芯片缺貨情況加劇,顯卡、處理器
Top 主站蜘蛛池模板: 琼海市| 泸州市| 鲜城| 潢川县| 三江| 博乐市| 吴旗县| 抚宁县| 瓦房店市| 高邑县| 老河口市| 芮城县| 大田县| 临西县| 石狮市| 理塘县| 彭阳县| 天镇县| 祁门县| 武宁县| 商洛市| 石柱| 景宁| 和政县| 车致| 固始县| 睢宁县| 太原市| 饶阳县| 平顺县| 望城县| 巴彦县| 民和| 阳山县| 南漳县| 汽车| 大英县| 岱山县| 安平县| 呼伦贝尔市| 象山县|