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

歡迎訪問 生活随笔!

生活随笔

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

python

Python 中让你相见恨晚的 20 个骚操作

發(fā)布時間:2023/12/19 python 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python 中让你相见恨晚的 20 个骚操作 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

今天和大家分享 20 個 Python 編程中新手必會的“騷操作”,使用的頻率超高!記得點贊,收藏哦!話不多說,進入正題!

1.列表推導式

使用列表推導式創(chuàng)建一個列表。

>>>?[n*10?for?n?in?range(5)] [0,?10,?20,?30,?40]

2.交換變量

一行代碼交換兩個變量的值。

>>>?m,?n?=?1,?2 >>>?m,?n?=?n,?m >>>?m 2 >>>?n 1

3.連續(xù)比較

鏈式比較操作符。

>>>?m,?n?=?3,?'c' >>>?1?<?m?<?5 True >>>?'d'?<?n?<?'f' False

4.序列切片

通過切片快速獲取序列片段。

>>>?lst?=?[1,?2,?3,?4,?5] >>>?lst[:3]??#?取前三個數(shù) [1,?2,?3] >>>?lst[::-1]??#?逆序 [5,?4,?3,?2,?1] >>>?lst[::2]??#?步長為2 [1,?3,?5] >>>?lst[::-2]??#?逆序步長為2 [5,?3,?1]

5.切片快速增刪序列

通過切片替換序列片段的值。

>>>?lst?=?[1,?2,?3,?4,?5] >>>?lst[1:3]?=?[] >>>?lst [1,?4,?5] >>>?lst[1:3]?=?['a',?'b',?'c',?'d'] >>>?lst [1,?'a',?'b',?'c',?'d']

6.%timeit 計算運行時間

計算 10000 次列表推導式創(chuàng)建列表所用時間。

%timeit?-n?10000?[n?for?n?in?range(5)]#?2.41?μs?±?511?ns?per?loop?(mean?±?std.?dev.?of?7?runs,?10000?loops?each)

7.三元表達式

獲取 m,n 中較大的值。

>>>?m?=?4 >>>?n?=?2 >>>?if?m?>?n:print('m') else:print('n')m >>>?'m'?if?m?>?n?else?'n' 'm'

還有一種比較少見的寫法。

>>>?m?=?4 >>>?n?=?2 >>>?("n",?"m")[m?>?n] 'm'

格式:(<on_true>, <on_false>)[condition]

8.解包(unpack)

可迭代對象都支持解包。

>>>?a,?b,?*c?=?[1,?2,?3,?4] >>>?a 1 >>>?b 2 >>>?c [3,?4] >>>?print(*range(3)) 0?1?2

9.lambda 匿名函數(shù)

lambda 函數(shù)可以接收任意多個參數(shù) (包括可選參數(shù)) ,返回單個表達式值。 lambda 函數(shù)不能包含命令,只能包含一個表達式。

>>>?def?func(x,?y):return?x?*?y>>>?func(2,?3) 6 >>>?func?=?lambda?x,?y:?x?*?y >>>?func(2,?3) 6

10.map 序列映射

對序列中每一個元素調(diào)用指定函數(shù),返回迭代器。

>>>?def?func(x):return?x?**?2>>>?list(map(func,?[1,2,3])) [1,?4,?9]

使用 lambda 表達式。

>>>?list(map(lambda?x:?x?**?2,?[1,?2,?3])) [1,?4,?9]

11.filter 過濾序列

過濾掉不符合條件的元素,返回迭代器。

>>>?def?func(x):?return?x?%?3?==?0>>>?list(filter(func,?[1,?2?,3])) [3]

使用 lambda 表達式。

>>>?list(filter(lambda?x:?x?%?3?==?0,?[1,?2,?3])) [3]

12.獲取序列組合

獲取兩個序列每個元素兩兩組合的結果。

>>>?list1?=?['a',?'b'] >>>?list2?=?['1',?'2'] >>>?[(m,?n)?for?m?in?list1?for?n?in?list2] [('a',?'1'),?('a',?'2'),?('b',?'1'),?('b',?'2')] >>>?from?itertools?import?product >>>?list(product(list1,?list2)) [('a',?'1'),?('a',?'2'),?('b',?'1'),?('b',?'2')]

13.隨機選取序列元素

隨機選取序列中的一個元素。

>>>?from?random?import?choice >>>?lst?=?[1,?2,?3,?4] >>>?choice(lst) 3

隨機選取序列中的多個元素(可重復)。k 值指定數(shù)量。

>>>?from?random?import?choices >>>?lst?=?[1,?2,?3,?4] >>>?choices(lst,?k=3) [4,?3,?4]

隨機選取序列中的多個元素(不重復)。k 值指定數(shù)量。

>>>?from?random?import?sample >>>?lst?=?[1,?2,?3,?4] >>>?sample(lst,?k=3) [4,?3,?2]

14.序列元素計數(shù)

統(tǒng)計序列每個元素出現(xiàn)的次數(shù)。

>>>?from?collections?import?Counter >>>?s?=?'python+py' >>>?counter?=?Counter(s) >>>?counter Counter({'p':?2,?'y':?2,?'t':?1,?'h':?1,?'o':?1,?'n':?1,?'+':?1})

返回的結果類似字典,可以使用字典的相關方法。

>>>?counter.keys() dict_keys(['p',?'y',?'t',?'h',?'o',?'n',?'+']) >>>?counter.values() dict_values([2,?2,?1,?1,?1,?1,?1]) >>>?counter.items() dict_items([('p',?2),?('y',?2),?('t',?1),?('h',?1),?('o',?1),?('n',?1),?('+',?1)])

統(tǒng)計出現(xiàn)次數(shù)最多的兩個元素。

>>>?counter.most_common(2) [('p',?2),?('y',?2)]

15.字典排序

字典按照鍵(key)降序排序。

>>>?dic?=?{'d':?2,?'c':?1,?'a':?3,?'b':?4} >>>?sort_by_key?=?sorted(dic.items(),?key=lambda?x:?x[0],?reverse=False) >>>?{key:?value?for?key,?value?in?sort_by_key} {'a':?3,?'b':?4,?'c':?1,?'d':?2}

字典按照值(value)降序排序。

>>>?dic?=?{'d':?2,?'c':?1,?'a':?3,?'b':?4} >>>?sort_by_value?=?sorted(dic.items(),?key=lambda?x:?x[1],?reverse=False) >>>?{key:?value?for?key,?value?in?sort_by_value} {'c':?1,?'d':?2,?'a':?3,?'b':?4}

16.字典合并

>>>?dict1?=?{'name':?'靜香',?'age':?18} >>>?dict2?=?{'name':?'靜香',?'sex':?'female'}
  • update() 更新字典。

  • >>>?dict1.update(dict2) >>>?dict1 {'name':?'靜香',?'age':?18,?'sex':?'female'}
  • 字典推導式

  • >>>?{k:?v?for?dic?in?[dict1,?dict2]?for?k,?v?in?dic.items()} {'name':?'靜香',?'age':?18,?'sex':?'female'}
  • 元素拼接

  • >>>?dict(list(dict1.items())?+?list(dict2.items())) {'name':?'靜香',?'age':?18,?'sex':?'female'}
  • chain() 可以將序列連接,返回可迭代對象。

  • from?itertools?import?chain >>>?dict(chain(dict1.items(),?dict2.items())) {'name':?'靜香',?'age':?18,?'sex':?'female'}
  • collections.ChainMap 可以將多個字典或映射,并將它們合并。

  • >>>?from?collections?import?ChainMap >>>?dict(ChainMap(dict2,?dict1)) {'name':?'靜香',?'age':?18,?'sex':?'female'}
  • 在 Python3.5 以上的版本中,可以通過字典解包進行合并。

  • >>>?{**dict1,?**dict2} {'name':?'靜香',?'age':?18,?'sex':?'female'}

    17.zip 打包

    zip() 將序列中對應的元素打包成一個個的元組,然后返回由這些元組組成的迭代器。

    如果序列的元素個數(shù)不一致,則返回列表長度與最短的對象相同。

    >>>?list1?=?[1,?2,?3] >>>?list2?=?[4,?5,?6] >>>?list3?=?['a',?'b',?'c',?'d'] >>>?res?=?zip(list1,?list2) >>>?res <zip?object?at?0x0000013C13F62200> >>>?list(res) [(1,?4),?(2,?5),?(3,?6)] >>>?list(zip(list2,?list3)) [(4,?'a'),?(5,?'b'),?(6,?'c')]

    18.enumerate 遍歷

    enumerate 函數(shù)可以將可迭代對象組合成一個索引序列,這樣遍歷時就可以同時獲取索引與對應的值。

    >>>?lst?=?['a',?'b',?'c'] >>>?for?index,?char?in?enumerate(lst):print(index,?char)0?a 1?b 2?c

    19.any() & all()

    any(iterable)

    • 對于迭代過程中的元素 i,只有所有元素 bool(i) 的結果都為 False,any 的結果才返回 False。

    • 如果迭代是空,返回 False。

    all(iterable)

    • 對于迭代過程中的元素 i,如果存在一個 bool(i) 的結果為 False,則 all 結果返回 False。

    • 如果可迭代對象為空,則返回 True。

    >>>?any('') False >>>?any([]) False >>>?any([1,?0,?'']) True >>>?any([0,?'',?[]]) False >>>?all([]) True >>>?all([1,?0,?'']) False >>>?all([1,?2,?3]) True

    20.用 ** 代替 pow

    求 x 的 y 次方,使用 ** 速度更快。

    %timeit?-n?10000?c?=?pow(2,10) #?911?ns?±?107?ns?per?loop?(mean?±?std.?dev.?of?7?runs,?10000?loops?each) %timeit?-n?10000?c?=?2?**?10 #?131?ns?±?46.8?ns?per?loop?(mean?±?std.?dev.?of?7?runs,?10000?loops?each)

    對比Excel系列圖書累積銷量達15w冊,讓你輕松掌握數(shù)據(jù)分析技能,感興趣的同學可以直接在各大電商平臺搜索書名了解:

    總結

    以上是生活随笔為你收集整理的Python 中让你相见恨晚的 20 个骚操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 啪网址 | 国产精品19乱码一区二区三区 | 蜜桃香蕉视频 | 秋霞精品 | 在线观看免费视频一区二区 | 亚洲图片欧美 | 久久视频精品在线 | 91麻豆成人精品国产免费网站 | 性久久久久久久久久久久 | 精品中文字幕在线观看 | 五月婷婷激情四射 | 免费黄色一区二区 | 精品看片 | 国产成人短视频 | 中文字幕免费在线看线人 | 中文字幕第一页在线视频 | 男同av在线观看一区二区三区 | 免费污网站在线观看 | 日韩精品aaa| 一区二区日本视频 | 337p亚洲精品色噜噜狠狠 | 久久精品波多野结衣 | 日韩欧美在线播放 | 日韩高清专区 | 国产亚洲av片在线观看18女人 | 91狠狠综合 | 人人搞人人爱 | 国产午夜免费视频 | 亚洲色欲色欲www | 99热在线看| 国产精品18久久久 | 日韩一区二区三区高清 | 久久综合欧美 | 欧美日韩观看 | 福利一区福利二区 | 激情五月婷婷在线 | 50度灰在线 | 久久精品女人毛片国产 | 男人和女人日批 | 亚洲国产精品成人va在线观看 | 国产女人18水真多毛片18精品 | wwwxxx日韩 | 国产视频一区二区三区在线观看 | 日本不卡视频在线观看 | 欧美成人性生活 | 欧美专区日韩专区 | 一级视频在线免费观看 | 亚洲欧美日韩国产一区 | 亚洲色域网 | 黄色一级视屏 | 欧美成人精品欧美一 | 欧美视频精品在线 | 国产精品国产三级国产专播精品人 | 国产视频污 | 欧美精品一区二区三区四区 | 成人免费在线视频观看 | www.日本黄色 | 老妇裸体性激交老太视频 | www.日韩.com | 五月天丁香社区 | 久久精品综合 | 阿娇全套94张未删图久久 | 息与子五十路翔田千里 | 草草影院在线 | 精品乱码久久久久久中文字幕 | 久久久久黄 | 亚洲色图一区二区三区 | 久久久久国产一区 | 日韩毛片视频 | 成年人在线播放视频 | 毛片视频网址 | 久久大胆人体 | 成人午夜视频免费在线观看 | 好邻居韩国剧在线观看 | 韩国jizz| 亚洲自拍偷拍精品视频 | 国产传媒在线观看 | 草草影院最新网址 | 亚洲精品乱码久久久久久蜜桃麻豆 | 激情小说五月天 | 操人网| 国产综合内射日韩久 | 亚洲激情视频小说 | 国产一区二区三区免费观看视频 | 成人一区二区视频 | 亚洲日本精品视频 | 三级视频网址 | 亚洲男人天堂视频 | 免费吃奶摸下激烈视频 | 自拍视频在线播放 | 国产一区二区麻豆 | 国内成人自拍视频 | 成人日批 | 久久精久久| 日本欧美一区二区三区不卡视频 | 在线观看污污网站 | 中文字幕avav | 黄色一区二区三区四区 | 国产乱码久久久 |