日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python编程思路不清晰_安利一波Python编程中非常实用的那些黑魔法

發布時間:2025/3/20 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python编程思路不清晰_安利一波Python编程中非常实用的那些黑魔法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

編者按:Python是機器學習的主流語言,沒有之一。今年5月,它首次在PYPL排行榜上超越JAVA,成為全球第一大編程語言。而一個月后,Stack Overflow也分享了最新的編程語言瀏覽量統計數字,結果顯示,Python的月活歷史性地超越了Java和JavaScript,真正問鼎榜首。

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

1. 交換變量

有時候,當我們要交換兩個變量的值時,一種常規的方法是創建一個臨時變量,然后用它來進行交換。比如:

#?輸入

a?=?5

b?=?10

#創建臨時變量

temp?=?a

a?=?b

b?=?temp

print(a)

print(b)

但在Python中,其實我們有一種更簡潔的寫法:

2. 將list中的所有元素轉為單個字符串

列表和字符串是Python中最常見的數據類型,它們會遇到互相轉換的需要。那么,我們該怎么把list中的所有元素轉為字符串呢?

3. 查找list中出現次數最多的元素

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

4. 判斷兩個字符串是否是anagram

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

5. 字符串倒轉

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

方法一:最簡單的切片法,a[::-1]就相當于a[尾:頭:-1]。

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

方法三:第三種是通過倒轉數據類型和切片倒轉整數。

在這里還是要推薦下我自己建的Python開發學習qun:699++749++852,群里都是學Python開發的,如果你正在學習Python ,小編歡迎你加入,大家都是軟件開發黨,不定期分享干貨(只有Python軟件開發相關的),包括我自己整理的一份2018最新的Python進階資料和高級開發教程,歡迎進階中和進想深入Python的小伙伴? 。

6. list倒轉

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

7. 二維矩陣轉置

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

8. 鏈式比較

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

9. 鏈式調用

在python中實現鏈式調用只需在函數返回對象自己就行了。

10. 復制list

如果是剛學習Python的C用戶,你可能會想寫b = a,但這是錯的。在Python中,變量指向的是某個對象的標簽。也就是說,按照這種的寫法,b和a指向的是內存中的同一個列表,對b操作,就相當于對a操作。所以正確的寫法有以下幾種:

方法一:b=a[:]。

方法二:b=list(a)。

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

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

11. 判斷一個key是否在字典中

如果目標key不在字典中,以下代碼會返回None或default。

12. 按value排序字典

Python的內置字典數據類型是無序的,而key可以被用來獲取對應的value。有時我們需要根據value對字典中的item進行排序輸出。方法如下所示:

方法一:用sorted函數排序,其中key參數是lamda表達式。

方法二:用operator.itemgetter而不是lamda表達式進行排序。

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

13. for … else語法

14. 用逗號分隔list

下面分別是字符串list、數字list和混合list的逗號分隔方式。

15. 合并字典

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

方法二:在內存中創建兩個列表,再創建第三個列表,拷貝完成后,創建新的dict,刪除掉前三個列表。

方法三:d1.update()。

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

17. 從list中刪除重復項

方法一:把list轉成set,去除重復項,再轉回list。

方法二:調用collections里的OrderedDict,和set差不多。

總結

以上是生活随笔為你收集整理的python编程思路不清晰_安利一波Python编程中非常实用的那些黑魔法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。