开心六月综合激情婷婷|欧美精品成人动漫二区|国产中文字幕综合色|亚洲人在线成视频

    1. 
      
        <b id="zqfy3"><legend id="zqfy3"><fieldset id="zqfy3"></fieldset></legend></b>
          <ul id="zqfy3"></ul>
          <blockquote id="zqfy3"><strong id="zqfy3"><dfn id="zqfy3"></dfn></strong></blockquote>
          <blockquote id="zqfy3"><legend id="zqfy3"></legend></blockquote>
          打開APP
          userphoto
          未登錄

          開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

          開通VIP
          20個(gè)非常有用的Python單行代碼

          有用的 Python 單行代碼片段,只需一行代碼即可解決特定編碼問題!

          在本文中,云朵君將分享20 個(gè) Python 一行代碼,你可以在 30 秒或更短的時(shí)間內(nèi)輕松學(xué)習(xí)它們。這種單行代碼將節(jié)省你的時(shí)間,并使你的代碼看起來更干凈且易于閱讀。

          1 一行 For 循環(huán)

          for 循環(huán)是一個(gè)多行語句,但是在 Python 中,我們可以使用列表推導(dǎo)式方法在一行中編寫 for 循環(huán)。以過濾小于250的值為例,查看下面的代碼示例。

          #For循環(huán)在一行
          mylist = [200, 300, 400, 500]
          #正常方式
          result = [] 
          for x in mylist: 
              if x > 250: 
                  result.append(x) 
          print(result) # [300, 400, 500]
          #一行代碼方式
          result = [x for x in mylist if x > 250] 
          print(result) # [300, 400, 500]

          2 一行 While 循環(huán)

          這個(gè) One-Liner 片段將向你展示如何在一行中使用 While 循環(huán)代碼,我已經(jīng)展示了兩種方法。

          #方法 1 Single Statement 
          while True: print(1) #infinite 1
          #方法 2 多語句
          x = 0 
          while x < 5: print(x); x= x + 1 # 0 1 2 3 4 5

          3 一行 IF Else 語句

          好吧,要在一行中編寫 IF Else 語句,我們將使用三元運(yùn)算符。三元的語法是“[on true] if [expression] else [on false]”。

          我在下面的示例代碼中展示了 3 個(gè)示例,以使你清楚地了解如何將三元運(yùn)算符用于一行 if-else 語句。要使用 Elif 語句,我們必須使用多個(gè)三元運(yùn)算符。

          #if Else 在一行中
          #Example 1 if else
          print('Yes'if 8 > 9 else print('No'# No
          #Example 2 if elif else 
          E = 2 
          print('High'if E == 5 else print('數(shù)據(jù)STUDIO'if E == 2 else 
          print('Low'# 數(shù)據(jù)STUDIO 
           
          #Example 3 only if
          if 3 > 2: print('Exactly'# Exactly

          4 一行合并字典

          這個(gè) 單行代碼段將向你展示如何使用一行代碼將兩個(gè)字典合并為一個(gè)。下面我展示了兩種合并字典的方法。

          # 在一行中合并字典
          d1 = { 'A': 1, 'B': 2 } 
          d2 = { 'C': 3, 'D': 4 }
          #方法 1 
          d1.update(d2) 
          print(d1) # {'A': 1, 'B': 2, 'C': 3, 'D': 4}
          #方法 2 
          d3 = {**d1, **d2} 
          print(d3) # {'A': 1, 'B': 2, 'C': 3, 'D': 4}

          5 一行函數(shù)

          我們有兩種方法可以在一行中編寫函數(shù),在第一種方法中,我們將使用與三元運(yùn)算符或單行循環(huán)方法相同的函數(shù)定義。

          第二種方法是用 lambda 定義函數(shù)。查看下面的示例代碼以獲得更清晰的理解。

          #函數(shù)在一行中
          #方法一
          def fun(x): return True if x % 2 == 0 else False 
          print(fun(2)) # False
          #方法2
          fun = lambda x : x % 2 == 0 
          print(fun(2)) # True 
          print(fun(3)) # False

          6 一行遞歸

          這個(gè)單行代碼片段將展示如何在一行中使用遞歸。我們將使用一行函數(shù)定義和一行 if-else 語句。下面是查找斐波那契數(shù)的示例。

          # 單行遞歸
          #Fibonaci 單行遞歸示例
          def Fib(x): return 1 if x in {0, 1} else Fib(x-1) + Fib(x-2)
          print(Fib(5)) # 8
          print(Fib(15)) # 987

          7 一行數(shù)組過濾

          Python 列表可以通過使用列表推導(dǎo)方法在一行代碼中進(jìn)行過濾。以過濾偶數(shù)列表為例。

          # 一行中的數(shù)組過濾
          mylist = [2, 3, 5, 8, 9, 12, 13, 15]
          #正常方式
          result = [] 
          for x in mylist: 
              if x % 2 == 0: 
                  result.append(x)
          print(result) # [2, 8, 12]
          # 單線方式
          result = [x for x in mylist if x % 2 == 0] 
          print(result) # [2, 8, 12]

          8 一行異常處理

          我們使用異常處理來處理 Python 中的運(yùn)行時(shí)錯(cuò)誤。你知道我們可以在一行中編寫這個(gè) Try except 語句嗎?通過使用 exec() 語句,我們可以做到這一點(diǎn)。

          # 一行異常處理
          #原始方式
          try:
              print(x)
          except:
              print('Error')
          #單行方式
          exec('try:print(x) \nexcept:print('Error')'# 錯(cuò)誤

          9 一行列表轉(zhuǎn)字典

          我們可以使用 Python enumerate() 函數(shù)將 List 轉(zhuǎn)換為一行字典。在enumerate() 中傳遞列表并使用dict() 將最終輸出轉(zhuǎn)換為字典格式。

          # 字典在一行
          mydict = ['John''Peter''Mathew''Tom']
          mydict = dict(enumerate(mydict))
          print(mydict) # {0: 'John', 1: 'Peter', 2: 'Mathew', 3: 'Tom'}

          10 一行多變量

          Python 允許在一行中進(jìn)行多個(gè)變量賦值。下面的示例代碼將向你展示如何做到這一點(diǎn)。

          #多行變量
          #正常方式
          x = 5 
          y = 7 
          z = 10 
          print(x , y, z) # 5 7 10
          #單行方式
          a, b, c = 5, 7, 10 
          print(a, b, c) # 5 7 10

          11 一行交換值

          交換是編程中一項(xiàng)有趣的任務(wù),并且總是需要第三個(gè)變量名稱 temp 來保存交換值。這個(gè)單行代碼段將向你展示如何在沒有任何臨時(shí)變量的情況下交換一行中的值。

          #換成一行
          #正常方式
          v1 = 100
          v2 = 200
          temp = v1
          v1 = v2 
          v2 = temp
          print(v1, v2) # 200 100
          # 單行交換
          v1, v2 = v2, v1 
          print(v1, v2) # 200 100

          12 一行排序

          排序是編程中的一個(gè)普遍問題,Python 有許多內(nèi)置的方法來解決這個(gè)排序問題。下面的代碼示例將展示如何在一行中進(jìn)行排序。

          # 在一行中排序
          mylist = [32, 22, 11, 4, 6, 8, 12] 
          # 方法 1
          mylist.sort() 
          print(mylist) # # [4, 6, 8, 11, 12, 22, 32]
          print(sorted(mylist)) # [4, 6, 8, 11, 12, 22, 32]

          13 一行讀取文件

          不使用語句或正常讀取方法,也可以正確讀取一行文件。

          #一行讀取文件
          #正常方式
          with open('data.txt''r') as file: 
              data = file.readline() 
              print(data) # Hello world
          #單行方式
          data = [line.strip() for line in open('data.txt','r')] 
          print(data) # ['hello world', 'Hello Python']

          14 一行類

          上課總是多線工作。但是在 Python 中,有一些方法可以在一行代碼中使用類特性。

          # 一行中的類
          #普通方式
          class Emp: 
              def __init__(self, name, age): 
                  self.name = name 
                  self.age = age
                  emp1 = Emp('云朵君', 22) 
          print(emp1.name, emp1.age) # 云朵君 22
          #單行方式
          #方法 1 帶有動(dòng)態(tài) Artibutes 的 Lambda

          Emp = lambda:None; Emp.name = '云朵君'; Emp.age = 22
          print(Emp.name, Emp.age) # 云朵君 22

          #方法 2 
          from collections import namedtuple
          Emp = namedtuple('Emp', ['name''age']) ('云朵君', 22) 
          print(Emp.name, Emp.age) # 云朵君 22

          15 一行分號(hào)

          一行代碼片段中的分號(hào)將向你展示如何使用分號(hào)在一行中編寫多行代碼。

          # 一行分號(hào)
          # 例 1 
          a = 'Python'; b = '編程'; c = '語言'print(a, b, c)
          # 輸出
          # Python 編程語言

          16 一行打印

          這不是很重要的片段,但有時(shí)當(dāng)你不需要使用循環(huán)來執(zhí)行任務(wù)時(shí)它很有用。

          # 一行打印
          #正常方式
          for x in range(1, 5):
              print(x) # 1 2 3 4
          #單行方式
          print(*range(1, 5)) # 1 2 3 4
          print(*range(1, 6)) # 1 2 3 4 5

          17 一行map函數(shù)

          Map 函數(shù)是適用的高階函數(shù)。這將函數(shù)應(yīng)用于每個(gè)元素。下面是我們?nèi)绾卧谝恍写a中使用 map 函數(shù)的示例。

          #在一行中map
          print(list(map(lambda a: a + 2, [5, 6, 7, 8, 9, 10])))
          # 輸出
          # [7, 8, 9, 10, 11, 12]

          18 刪除列表第一行中的 Mul 元素

          你現(xiàn)在可以使用 del 方法在一行代碼中刪除 List 中的多個(gè)元素,而無需進(jìn)行任何修改。

          # 刪除一行中的Mul元素
          mylist = [100, 200, 300, 400, 500]
          del mylist[1::2]
          print(mylist) # [100, 300, 500]

          19 一行打印圖案

          現(xiàn)在你不再需要使用for循環(huán)來打印相同的圖案。你可以使用 print 語句和星號(hào) (*) 在一行代碼中執(zhí)行相同的操作。

          # 在一行中打印圖案# 
          # 正常方式
          for x in range(3):
              print('??')
          # 輸出
          # ?? ?? ??
          #單行方式
          print('??' * 3) # ?? ?? ?? 
          print('??' * 2) # ?? ?? 
          print('??' * 1) # ??

          20 一行查找質(zhì)數(shù)

          此代碼段將向你展示如何編寫單行代碼來查找范圍內(nèi)的素?cái)?shù)。

          # 查找質(zhì)數(shù)
          print(list(filter(lambda a: all(a % b != 0 for b in range(2, a)),
                            range(2,20))))
          # 輸出
          # [2, 3, 5, 7, 11, 13, 17, 19]

          來源:python專欄

          本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
          打開APP,閱讀全文并永久保存 查看更多類似文章
          猜你喜歡
          類似文章
          極簡(jiǎn)主義的踐行者:一行python有哪些玩法?
          Python中注釋方式分為哪兩種?
          python注釋的寫法
          徹底理解python中的yield函數(shù)
          30 個(gè) Python 的最佳實(shí)踐、小貼士和技巧
          Python 三十大實(shí)踐、建議和技巧
          更多類似文章 >>
          生活服務(wù)
          分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
          綁定賬號(hào)成功
          后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
          如果VIP功能使用有故障,
          可點(diǎn)擊這里聯(lián)系客服!

          聯(lián)系客服