chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python是機(jī)器學(xué)習(xí)的主流語(yǔ)言,你真的掌握了Python嗎?

zhKF_jqr_AI ? 來(lái)源:未知 ? 作者:李倩 ? 2018-08-17 09:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

編者按:Python機(jī)器學(xué)習(xí)的主流語(yǔ)言,沒(méi)有之一。今年5月,它首次在PYPL排行榜上超越JAVA,成為全球第一大編程語(yǔ)言。而一個(gè)月后,Stack Overflow也分享了最新的編程語(yǔ)言瀏覽量統(tǒng)計(jì)數(shù)字,結(jié)果顯示,Python的月活歷史性地超越了Java和JavaScript,真正問(wèn)鼎榜首。

“人生苦短,我選Python”。那么,你真的掌握了Python嗎?

1. 交換變量

有時(shí)候,當(dāng)我們要交換兩個(gè)變量的值時(shí),一種常規(guī)的方法是創(chuàng)建一個(gè)臨時(shí)變量,然后用它來(lái)進(jìn)行交換。比如:


	
  1. # 輸入

  2. a = 5

  3. b = 10

  4. #創(chuàng)建臨時(shí)變量

  5. temp = a

  6. a = b

  7. b = temp

  8. print(a)

  9. print(b)

但在Python中,其實(shí)我們有一種更簡(jiǎn)潔的寫法:

2. 將list中的所有元素轉(zhuǎn)為單個(gè)字符串

列表和字符串是Python中最常見(jiàn)的數(shù)據(jù)類型,它們會(huì)遇到互相轉(zhuǎn)換的需要。那么,我們?cè)撛趺窗裭ist中的所有元素轉(zhuǎn)為字符串呢?

3. 查找list中出現(xiàn)次數(shù)最多的元素

給定一個(gè)包含多個(gè)元素的list,讓你查找其中出現(xiàn)次數(shù)最多的元素,你會(huì)怎么做?在下圖中,我們介紹了兩種方法,其中第一種是利用max()函數(shù)的key參數(shù),第二種則是使用Counter。

4. 判斷兩個(gè)字符串是否是anagram

所謂anagram,就是兩個(gè)詞所用的字母及其個(gè)數(shù)都是一樣的,但是它們字母的位置不一樣,比如abc,bac,acb。在Python中,Counter可以解決這個(gè)問(wèn)題,

5. 字符串倒轉(zhuǎn)

字符串倒轉(zhuǎn),就是把1234轉(zhuǎn)成4321。下面我們介紹了三種方法:

方法一:最簡(jiǎn)單的切片法,a[::-1]就相當(dāng)于a[尾:頭:-1]。

方法二:用Python自帶reversed()函數(shù),它可被用于list倒轉(zhuǎn)。

方法三:第三種是通過(guò)倒轉(zhuǎn)數(shù)據(jù)類型和切片倒轉(zhuǎn)整數(shù)。

6. list倒轉(zhuǎn)

和字符串倒轉(zhuǎn)類似,切片法也可以被用于list倒轉(zhuǎn),如下面的第一種方法。第二種方法調(diào)用的是上面提到的reversed()函數(shù)。

7. 二維矩陣轉(zhuǎn)置

如果要轉(zhuǎn)置矩陣,可以直接使用使用zip()函數(shù)。除此之外,沒(méi)有比import numpy更簡(jiǎn)單的方法了。

8. 鏈?zhǔn)奖容^

如果想輸出數(shù)組中介于4-7之間的元素,java是這么寫的:if( b > 4 && b < 7){ },但Python更人性化。包括最后一句1 == b < 20,這和C、java也很不一樣。

9. 鏈?zhǔn)秸{(diào)用

在python中實(shí)現(xiàn)鏈?zhǔn)秸{(diào)用只需在函數(shù)返回對(duì)象自己就行了。

10. 復(fù)制list

如果是剛學(xué)習(xí)Python的C用戶,你可能會(huì)想寫b = a,但這是錯(cuò)的。在Python中,變量指向的是某個(gè)對(duì)象的標(biāo)簽。也就是說(shuō),按照這種的寫法,b和a指向的是內(nèi)存中的同一個(gè)列表,對(duì)b操作,就相當(dāng)于對(duì)a操作。所以正確的寫法有以下幾種:

方法一:b=a[:]。

方法二:b=list(a)。

方法三:使用Python 3的copy()函數(shù),直接復(fù)制list,類似a[:]。

方法四:使用copy.deepcopy()。

11. 判斷一個(gè)key是否在字典中

如果目標(biāo)key不在字典中,以下代碼會(huì)返回None或default。

12. 按value排序字典

Python的內(nèi)置字典數(shù)據(jù)類型是無(wú)序的,而key可以被用來(lái)獲取對(duì)應(yīng)的value。有時(shí)我們需要根據(jù)value對(duì)字典中的item進(jìn)行排序輸出。方法如下所示:

方法一:用sorted函數(shù)排序,其中key參數(shù)是lamda表達(dá)式。

方法二:用operator.itemgetter而不是lamda表達(dá)式進(jìn)行排序。

方法三:如果只需得到排序后的key,可用.get。

13. for ... else語(yǔ)法

14. 用逗號(hào)分隔list

下面分別是字符串list、數(shù)字list和混合list的逗號(hào)分隔方式。

15. 合并字典

方法一:Python 3.5可以存在重復(fù)鍵值,print({**d1, **d2})。

方法二:在內(nèi)存中創(chuàng)建兩個(gè)列表,再創(chuàng)建第三個(gè)列表,拷貝完成后,創(chuàng)建新的dict,刪除掉前三個(gè)列表。

方法三:d1.update()。

16. list中的最小和最大索引

17. 從list中刪除重復(fù)項(xiàng)

方法一:把list轉(zhuǎn)成set,去除重復(fù)項(xiàng),再轉(zhuǎn)回list。

方法二:調(diào)用collections里的OrderedDict,和set差不多。

希望本文能給你幫助,我選擇Numpy。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8528

    瀏覽量

    135858
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4848

    瀏覽量

    88913
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    termux調(diào)試python猜數(shù)字游戲

    : print(f\"? 太大! 剩余次數(shù): {max_attempts - attempts}\") else: print(f\"\\n? 恭喜! 在{attempts}次
    發(fā)表于 08-29 17:15

    python app不能運(yùn)行怎么解決?

    我使用helloword的模板,上傳IG502,但不能運(yùn)行,請(qǐng)大神幫忙。系統(tǒng)日志如下:sntpc[1226]: ntp request error: 113, No route to host
    發(fā)表于 08-06 06:27

    C++ 與 Python:樹(shù)莓派上哪種語(yǔ)言更優(yōu)?

    Python是樹(shù)莓派上的首選編程語(yǔ)言,我們的大部分教程都使用它。然而,C++在物聯(lián)網(wǎng)項(xiàng)目中同樣廣受歡迎且功能強(qiáng)大。那么,在樹(shù)莓派項(xiàng)目中選擇哪種語(yǔ)言更合適呢?Python因其簡(jiǎn)潔性、豐富
    的頭像 發(fā)表于 07-24 15:32 ?477次閱讀
    C++ 與 <b class='flag-5'>Python</b>:樹(shù)莓派上哪種<b class='flag-5'>語(yǔ)言</b>更優(yōu)?

    基礎(chǔ)篇3:掌握Python中的條件語(yǔ)句與循環(huán)

    Python編程語(yǔ)言中,條件語(yǔ)句和循環(huán)是構(gòu)成復(fù)雜邏輯和數(shù)據(jù)處理的基石。本篇基礎(chǔ)教程將幫助您深入了解Python中的條件語(yǔ)句和循環(huán)結(jié)構(gòu),讓您能夠更好地控制程序流程。 條件語(yǔ)句 條件語(yǔ)句允許程序根據(jù)
    發(fā)表于 07-03 16:13

    跟老齊學(xué)Python:從入門到精通

    礎(chǔ)的學(xué)習(xí)者介紹一門時(shí)下比較流行、并且用途比較廣泛的編程語(yǔ)言,所以,本書讀起來(lái)不晦澀,并且在其中穿插很多貌似與Python 編程無(wú)關(guān),但與學(xué)習(xí)
    發(fā)表于 06-03 16:10

    ?如何在虛擬環(huán)境中使用 Python,提升的開(kāi)發(fā)體驗(yàn)~

    RaspberryPiOS預(yù)裝了Python需要使用其虛擬環(huán)境來(lái)安裝包。今天出版的最新一期《TheMagPi》雜志刊登了我們文檔負(fù)責(zé)人NateContino撰寫的一篇實(shí)用教程,幫助你入門
    的頭像 發(fā)表于 03-25 09:34 ?523次閱讀
    ?如何在虛擬環(huán)境中使用 <b class='flag-5'>Python</b>,提升<b class='flag-5'>你</b>的開(kāi)發(fā)體驗(yàn)~

    零基礎(chǔ)入門:如何在樹(shù)莓派上編寫和運(yùn)行Python程序?

    在這篇文章中,我將為簡(jiǎn)要介紹Python程序是什么、Python程序可以用來(lái)做什么,以及如何在RaspberryPi上編寫和運(yùn)行一個(gè)簡(jiǎn)單的Python程序。什么是
    的頭像 發(fā)表于 03-25 09:27 ?1269次閱讀
    零基礎(chǔ)入門:如何在樹(shù)莓派上編寫和運(yùn)行<b class='flag-5'>Python</b>程序?

    Python在嵌入式系統(tǒng)中的應(yīng)用場(chǎng)景

    你想把的職業(yè)生涯提升到一個(gè)新的水平?Python在嵌入式系統(tǒng)中正在成為一股不可缺少的新力量。盡管傳統(tǒng)上嵌入式開(kāi)發(fā)更多地依賴于C和C++語(yǔ)言,Python的優(yōu)勢(shì)在于其簡(jiǎn)潔的語(yǔ)法、豐富的
    的頭像 發(fā)表于 03-19 14:10 ?1004次閱讀

    是否可以使用OpenVINO?部署管理器在部署機(jī)器上運(yùn)行Python應(yīng)用程序?

    使用 OpenVINO?部署管理器創(chuàng)建運(yùn)行時(shí)軟件包。 將運(yùn)行時(shí)包轉(zhuǎn)移到部署機(jī)器中。 無(wú)法確定是否可以在部署機(jī)器上運(yùn)行 Python 應(yīng)用程序,而無(wú)需安裝OpenVINO? Toolkit 和
    發(fā)表于 03-05 08:16

    使用Python實(shí)現(xiàn)xgboost教程

    使用Python實(shí)現(xiàn)XGBoost模型通常涉及以下幾個(gè)步驟:數(shù)據(jù)準(zhǔn)備、模型訓(xùn)練、模型評(píng)估和模型預(yù)測(cè)。以下是一個(gè)詳細(xì)的教程,指導(dǎo)如何在Python中使用XGBoost。 1. 安裝XGBoost
    的頭像 發(fā)表于 01-19 11:21 ?1967次閱讀

    Triton編譯器支持的編程語(yǔ)言

    編寫和優(yōu)化深度學(xué)習(xí)代碼。Python是一種廣泛使用的高級(jí)編程語(yǔ)言,具有簡(jiǎn)潔易讀、易于上手、庫(kù)豐富等特點(diǎn),非常適合用于深度學(xué)習(xí)應(yīng)用的開(kāi)發(fā)。 二、領(lǐng)域特定
    的頭像 發(fā)表于 12-24 17:33 ?1309次閱讀

    對(duì)比Python與Java編程語(yǔ)言

    Python與Java都是目前非常流行的編程語(yǔ)言,它們各有其獨(dú)特的優(yōu)勢(shì)和適用場(chǎng)景。以下是對(duì)這兩種編程語(yǔ)言的對(duì)比: 一、語(yǔ)法和易用性 Python 語(yǔ)法簡(jiǎn)潔,代碼更易讀,非常適合初學(xué)者。
    的頭像 發(fā)表于 11-15 09:31 ?1797次閱讀

    NPU支持的編程語(yǔ)言有哪些

    與NPU一起使用: C/C++ : C和C++是性能要求較高的應(yīng)用的首選語(yǔ)言,尤其是在需要直接與硬件交互的場(chǎng)景中。許多NPU硬件都提供C/C++接口,以便開(kāi)發(fā)者能夠充分利用硬件性能。 Python
    的頭像 發(fā)表于 11-15 09:21 ?2369次閱讀

    如何使用Python構(gòu)建LSTM神經(jīng)網(wǎng)絡(luò)模型

    : NumPy:用于數(shù)學(xué)運(yùn)算。 TensorFlow:一個(gè)開(kāi)源機(jī)器學(xué)習(xí)庫(kù),Keras是其高級(jí)API。 Keras:用于構(gòu)建和訓(xùn)練深度學(xué)習(xí)模型。 可以使用pip來(lái)安裝這些庫(kù): pip
    的頭像 發(fā)表于 11-13 10:10 ?1973次閱讀

    Python中多線程和多進(jìn)程的區(qū)別

    Python作為一種高級(jí)編程語(yǔ)言,提供多種并發(fā)編程的方式,其中多線程與多進(jìn)程是最常見(jiàn)的兩種方式之一。在本文中,我們將探討Python中多線程與多進(jìn)程的概念、區(qū)別以及如何使用線程池與進(jìn)
    的頭像 發(fā)表于 10-23 11:48 ?1223次閱讀
    <b class='flag-5'>Python</b>中多線程和多進(jìn)程的區(qū)別