精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Python高能小技巧:用海象操作符減少重復代碼

開發 后端
賦值表達式(assignment expression)是Python 3.8新引入的語法,它會用到海象操作符(walrus operator)。這種寫法可以解決某些持續已久的代碼重復問題。a = b是一條普通的賦值語句,讀作a equals b,而a := b則是賦值表達式,讀作a walrus b。

 a = b是一條普通的賦值語句,讀作a equals b,而a := b則是賦值表達式,讀作a walrus b。這個符號為什么叫walrus呢?因為把:=順時針旋轉90°之后,冒號就是海象的一雙眼睛,等號就是它的一對獠牙。

 

[[391256]]

 

這種表達式很有用,可以在普通的賦值語句無法應用的場合實現賦值,例如可以用在條件表達式的if語句里面。賦值表達式的值,就是賦給海象操作符左側那個標識符的值。

舉個例子。如果有一筐新鮮水果要給果汁店做食材,那我們就可以這樣定義其中的內容:

 

  1. fresh_fruit = { 
  2.     'apple': 10, 
  3.     'banana': 8, 
  4.     'lemon': 5, 

 

顧客點檸檬汁之前,我們先得確認現在還有沒有檸檬可以榨汁。所以,要先查出檸檬的數量,然后用if語句判斷它是不是非零的值。

 

  1. def make_lemonade(count): 
  2.     print(f'Making {count} lemons into lemonade'
  3.  
  4. def out_of_stock(): 
  5.     print('Out of stock!'
  6.  
  7. count = fresh_fruit.get('lemon', 0) 
  8. if count
  9.     make_lemonade(count
  10. else
  11.     out_of_stock() 

 

這段代碼看上去雖然簡單,但還是顯得有點兒松散,因為count變量雖然定義在整個if/else結構之上,然而只有if語句才會用到它,else塊根本就不需要使用這個變量。所以,這種寫法讓人誤以為count是個重要的變量,if和else都要用到它,但實際上并非如此。

我們在Python里面經常要先獲取某個值,然后判斷它是否非零,如果是就執行某段代碼。對于這種用法,我們以前總是要通過各種技巧,來避免count這樣的變量重復出現在代碼之中,這些技巧有時會讓代碼變得比較難懂。Python引入賦值表達式正是為了解決這樣的問題。下面改用海象操作符來寫:

 

  1. if count := fresh_fruit.get('lemon', 0): 
  2.     make_lemonade(count
  3. else
  4.     out_of_stock() 

 

新代碼雖然只省了一行,但讀起來卻清晰很多,因為這種寫法明確體現出count變量只與if塊有關。這個賦值表達式先把:=右邊的值賦給左邊的count變量,然后對自身求值,也就是把變量的值當成整個表達式的值。

由于表達式緊跟著if,程序會根據它的值是否非零來決定該不該執行if塊。這種先賦值再判斷的做法,正是海象操作符想要表達的意思。

檸檬汁效力強,所以只需要一顆檸檬就能做完這份訂單,這意味著程序只需判斷非零即可。如果客人點的是蘋果汁,那就至少得用四個蘋果才行。按照傳統的寫法,要先從fresh_fruit這個字典里面查出蘋果(apple)的數量(count),然后在if語句里,根據這個數量構造條件表達式(count >= 4)。

 

  1. def make_cider(count): 
  2.     print(f'Making cider with {count} apples'
  3.  
  4. count = fresh_fruit.get('apple', 0) 
  5. if count >= 4: 
  6.     make_cider(count
  7. else
  8.     out_of_stock() 

 

這段代碼與剛才那個檸檬汁的例子一樣,也過分突出了count變量的意義。下面改用海象操作符,把代碼寫得更清晰一些。

 

  1. if (count := fresh_fruit.get('apple', 0)) >= 4: 
  2.     make_cider(count
  3. else
  4.     out_of_stock() 

 

與剛才那個例子一樣,修改之后的代碼也比原來少了一行。但是這次,我們還要注意另外一個現象:賦值表達式本身是放在一對括號里面的。為什么要這樣做呢?因為我們要在if語句里面把這個表達式的結果跟4這個值相比較。

剛才檸檬汁的例子沒有加括號,因為那時只憑賦值表達式本身的值就能決定if/else的走向:只要表達式的值不是0,程序就進入if分支。但是這次不行,這次要把這個賦值表達式放在更大的表達式里面,所以必須用括號把它括起來。當然,在沒有必要加括號的情況下,還是盡量別加括號比較好。

還有一種類似的邏輯也會出現剛才說的重復代碼,這指的是:我們要根據情況給某個變量賦予不同的值,緊接著要用這個變量做參數來調用某個函數。

例如,若顧客要點香蕉冰沙,那我們首先得把香蕉切成好幾份,然后用其中的兩份來制作這道冰沙。如果不夠兩份,那就拋出香蕉不足(OutOfBananas)異常。下面用傳統的寫法實現這種邏輯:

 

  1. def slice_bananas(count): 
  2.     print(f'Slicing {count} bananas'
  3.     return count * 4 
  4.  
  5. class OutOfBananas(Exception): 
  6.     pass 
  7.  
  8. def make_smoothies(count): 
  9.     print(f'Making a smoothies with {count} banana slices'
  10.  
  11. pieces = 0 
  12. count = fresh_fruit.get('banana', 0) 
  13. if count >= 2: 
  14.     pieces = slice_bananas(count
  15.  
  16. try: 
  17.     smoothies = make_smoothies(pieces) 
  18. except OutOfBananas: 
  19.     out_of_stock() 

 

還有一種傳統的寫法也很常見,就是把if/else結構上方那條pieces = 0的賦值語句移動到else塊中。

 

  1. count = fresh_fruit.get('banana', 0) 
  2. if count >= 2: 
  3.     pieces = slice_bananas(count
  4. else
  5.     pieces = 0 
  6.  
  7. try: 
  8.     smoothies = make_smoothies(pieces) 
  9. except OutOfBananas: 
  10.     out_of_stock() 

 

這種寫法看上去稍微有點兒怪,因為if與else這兩個分支都給pieces變量定義了初始值。根據Python的作用域規則,這種分別定義變量初始值的寫法是成立的。雖說成立,但這樣寫看起來比較別扭,所以很多人喜歡用第一種寫法,也就是在進入if/else結構之前,先把pieces的初始值給設置好。

改用海象操作符來實現,可以少寫一行代碼,而且能夠壓低count變量的地位,讓它只出現在if塊里,這樣我們就能更清楚地意識到pieces變量才是整段代碼的重點。

 

  1. pieces = 0 
  2. if (count := fresh_fruit.get('banana', 0)) >= 2: 
  3.     pieces = slice_bananas(count
  4.  
  5. try: 
  6.     smoothies = make_smoothies(pieces) 
  7. except OutOfBananas: 
  8.     out_of_stock() 

 

對于在if與else分支里面分別定義pieces變量的寫法來說,海象操作符也能讓代碼變得清晰,因為這次不用再把count變量放到整個if/else塊的上方了。

 

  1. if (count := fresh_fruit.get('banana', 0)) >= 2: 
  2.     pieces = slice_bananas(count
  3. else
  4.     pieces = 0 
  5.  
  6. try: 
  7.     smoothies = make_smoothies(pieces) 
  8. except OutOfBananas: 
  9.     out_of_stock() 

 

Python新手經常會遇到這樣一種困難,就是找不到好辦法來實現switch/case結構。最接近這種結構的做法是在if/else結構里面繼續嵌套if/else結構,或者使用if/elif/else結構。

例如,我們想按照一定的順序自動給客人制作飲品,這樣就不用點餐了。下面這段邏輯先判斷能不能做香蕉冰沙,如果不能,就做蘋果汁,還不行,就做檸檬汁:

 

  1. count = fresh_fruit.get('banana', 0) 
  2. if count >= 2: 
  3.     pieces = slice_bananas(count
  4.     to_enjoy = make_smoothies(pieces) 
  5. else
  6.     count = fresh_fruit.get('apple', 0) 
  7.     if count >= 4: 
  8.         to_enjoy = make_cider(count
  9.     else
  10.         count = fresh_fruit.get('lemon', 0) 
  11.         if count
  12.             to_enjoy = make_lemonade(count
  13.         else
  14.             to_enjoy = 'Nothing' 

 

這種難看的寫法其實在Python代碼里特別常見。幸好現在有了海象操作符,讓我們能夠輕松地模擬出很接近switch/case的方案。

 

  1. if (count := fresh_fruit.get('banana', 0)) >= 2: 
  2.     pieces = slice_bananas(count
  3.     to_enjoy = make_smoothies(pieces) 
  4. elif (count := fresh_fruit.get('apple', 0)) >= 4: 
  5.     to_enjoy = make_cider(count
  6. elif count := fresh_fruit.get('lemon', 0): 
  7.     to_enjoy = make_lemonade(count
  8. else
  9.     to_enjoy = 'Nothing' 

 

這個版本只比原來短五行,但是看起來卻清晰得多,因為嵌套深度與縮進層數都變少了。只要碰到剛才那種難看的結構,我們就應該考慮能不能改用海象操作符來寫。

Python新手還會遇到一個困難,就是缺少do/while循環結構。例如,我們要把新來的水果做成果汁并且裝到瓶子里面,直到水果用完為止。下面先用普通的while循環來實現:

 

  1. FRUIT_TO_PICK = [ 
  2.     {'apple': 1, 'banana': 3}, 
  3.     {'lemon': 2, 'lime': 5}, 
  4.     {'orange': 3, 'melon': 2}, 
  5.  
  6. def pick_fruit(): 
  7.     if FRUIT_TO_PICK: 
  8.         return FRUIT_TO_PICK.pop(0) 
  9.     else
  10.         return [] 
  11.  
  12. def make_juice(fruit, count): 
  13.     return [(fruit, count)] 
  14.  
  15. bottles = [] 
  16. fresh_fruit = pick_fruit() 
  17. while fresh_fruit: 
  18.     for fruit, count in fresh_fruit.items(): 
  19.         batch = make_juice(fruit, count
  20.         bottles.extend(batch) 
  21.     fresh_fruit = pick_fruit() 
  22.  
  23. print(bottles) 

 

這種寫法必須把fresh_fruit = pick_fruit()寫兩次,第一次是在進入while循環之前,因為我們要給fresh_fruit設定初始值,第二次是在while循環體的末尾,因為我們得把下一輪需要處理的水果列表填充到fresh_fruit里面。

如果想復用這行代碼,可以考慮loop-and-a-half 模式。這個模式雖然能消除重復,但是會讓while循環看起來很笨,因為它成了無限循環,程序只能通過break語句跳出這個循環。

 

  1. FRUIT_TO_PICK = [ 
  2.     {'apple': 1, 'banana': 3}, 
  3.     {'lemon': 2, 'lime': 5}, 
  4.     {'orange': 3, 'melon': 2}, 
  5.  
  6. bottles = [] 
  7. while True:                     # Loop 
  8.     fresh_fruit = pick_fruit() 
  9.     if not fresh_fruit:         # And a half 
  10.         break 
  11.     for fruit, count in fresh_fruit.items(): 
  12.         batch = make_juice(fruit, count
  13.         bottles.extend(batch) 
  14.  
  15. print(bottles) 

 

有了海象操作符,就不需要使用loop-and-a-half模式了,我們可以在每輪循環的開頭給fresh_fruit變量賦值,并根據變量的值來決定要不要繼續循環。這個寫法簡單易讀,所以應該成為首選方案。

 

  1. FRUIT_TO_PICK = [ 
  2.     {'apple': 1, 'banana': 3}, 
  3.     {'lemon': 2, 'lime': 5}, 
  4.     {'orange': 3, 'melon': 2}, 
  5.  
  6. bottles = [] 
  7. while fresh_fruit := pick_fruit(): 
  8.     for fruit, count in fresh_fruit.items(): 
  9.         batch = make_juice(fruit, count
  10.         bottles.extend(batch) 
  11.  
  12. print(bottles) 

 

在其他一些場合,賦值表達式也能縮減重復代碼。總之,如果某個表達式或賦值操作多次出現在一組代碼里面,那就可以考慮用賦值表達式把這段代碼改得簡單一些。

要點

  • 賦值表達式通過海象操作符(:=)給變量賦值,并且讓這個值成為這條表達式的結果,于是,我們可以利用這項特性來縮減代碼。
  • 如果賦值表達式是大表達式里的一部分,就得用一對括號把它括起來。
  • 雖說Python不支持switch/case與do/while結構,但可以利用賦值表達式清晰地模擬出這種邏輯。

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2021-10-31 18:59:55

Python操作符用法

2022-07-05 07:47:13

Python海象運算符

2020-03-03 15:42:33

Python字典合并代碼

2010-07-14 14:55:07

Perl操作符

2009-08-19 17:26:28

C# 操作符

2010-02-23 11:18:25

Python 操作符

2021-03-18 22:11:23

Python字符開發

2010-07-19 11:00:24

Perl操作符

2011-04-08 16:26:14

JavaScript

2010-07-14 14:30:31

Perl操作符

2009-07-21 09:31:00

Scala操作符

2009-09-15 17:16:58

LINQ查詢操作符

2009-09-16 09:09:23

Linq Contai

2010-07-14 14:18:51

Perl操作符

2012-02-06 09:13:23

LINQ

2010-01-28 11:16:28

C++操作符

2021-10-09 13:48:11

操作符Python運算符

2009-07-22 07:45:00

Scala代碼重復

2017-01-03 16:12:13

RxJava操作符Android

2016-12-28 09:54:50

AndroidRxJava操作符
點贊
收藏

51CTO技術棧公眾號

国产一区二区主播在线| 三级视频在线播放| 欧美日韩亚洲国产精品| 亚洲精品黄网在线观看| 99久久激情视频| 美女隐私在线观看| 99久免费精品视频在线观看| 国产精品毛片a∨一区二区三区|国| 久久成人小视频| 色天下一区二区三区| 7777精品伊人久久久大香线蕉完整版 | 久久精品国产91精品亚洲| 精品1卡二卡三卡四卡老狼| 91精品美女| 亚洲18女电影在线观看| 亚洲春色在线| 五月婷婷在线播放| 国产在线播放一区三区四| 欧美在线视频网| 国内偷拍精品视频| 日韩av有码| 日韩国产欧美精品在线| 免费欧美一级片| 91在线成人| 欧美性猛交xxxx乱大交3| 特级黄色录像片| av在线电影免费观看| 波多野洁衣一区| 97av自拍| 国产普通话bbwbbwbbw| 日韩国产精品久久久| 91精品国产高清久久久久久91| 免费一级黄色录像| 中国av一区| 亚洲精品电影在线| 亚洲少妇中文字幕| 亚洲日本一区二区三区在线| 欧美日本一区二区三区四区| 国产精品天天av精麻传媒| 欧美少妇网站| 五月激情丁香一区二区三区| 青草网在线观看| 亚洲制服国产| 一区二区三区在线播放| a级片一区二区| av黄色在线观看| 国产欧美久久久精品影院| 麻豆av一区二区三区久久| 午夜国产在线观看| 91小视频免费看| 欧美韩国日本精品一区二区三区| 天堂av资源在线| 91女人视频在线观看| 精品91免费| 日本一区高清| 国产亚洲制服色| 色姑娘综合网| 成人影院免费观看| 国产精品嫩草99a| 在线视频福利一区| a级影片在线| 亚洲一区二区三区自拍| 日韩日韩日韩日韩日韩| 天堂资源在线| 在线看日韩精品电影| 69久久久久久| 国产精品一区三区在线观看| 91精品免费在线观看| 中文字幕 欧美 日韩| 日韩中文字幕在线一区| 日韩成人在线观看| 亚洲精品色午夜无码专区日韩| 欧美中文一区二区| 久久国产色av| av黄色在线看| 免费看欧美女人艹b| 91免费精品国偷自产在线| 国产xxxx孕妇| 91视视频在线观看入口直接观看www | 69精品无码成人久久久久久| 欧美丝袜一区| 蜜臀久久99精品久久久久久宅男| 久久久久亚洲av片无码下载蜜桃 | 日韩视频免费在线播放| 亚洲伊人精品酒店| 亚洲国产精品字幕| 国产三级在线观看完整版| 亚洲精品一区二区妖精| 久久免费国产视频| 五月激情丁香网| 国产精品一区二区三区四区 | 日韩精品首页| 欧美激情精品久久久久久大尺度| 天天做天天爱夜夜爽| 另类小说欧美激情| 精品一区二区久久久久久久网站| 一广人看www在线观看免费视频| 亚洲一区二区在线视频| 狠狠热免费视频| www.神马久久| 日韩在线中文字| www.国产成人| 国产精品91一区二区| 人偷久久久久久久偷女厕| 4438x成人网全国最大| 色综合天天综合色综合av| 成人亚洲免费视频| 久久成人av| 欧美精品videossex性护士| 正在播放木下凛凛xv99| 成人免费观看av| 中文字幕精品一区日韩| 国模套图日韩精品一区二区| 日韩视频中午一区| 99自拍偷拍视频| 久久不射网站| 国产专区一区二区三区| gogogogo高清视频在线| 欧美又粗又大又爽| 97人妻精品一区二区免费| 国模 一区 二区 三区| 成人情趣片在线观看免费| 免费国产在线观看| 午夜激情久久久| 熟妇无码乱子成人精品| 网友自拍区视频精品| 欧美黑人巨大xxx极品| 国产又粗又猛又爽又黄视频| 久久久www成人免费毛片麻豆 | 国内偷拍精品视频| 精品一区二区久久| 亚洲高清视频一区二区| 日韩不卡免费高清视频| 精品视频中文字幕| www.国产色| 久久亚洲欧美国产精品乐播| 免费超爽大片黄| 伊人久久影院| 欧美大胆a视频| www.av网站| 亚洲欧美偷拍另类a∨色屁股| 亚洲第一狼人区| 日韩国产一区二区| 国产美女久久精品香蕉69| 高清日韩av电影| 欧美三级韩国三级日本三斤| 欧美人与性囗牲恔配| 日韩精品色哟哟| 亚洲成人精品电影在线观看| 电影久久久久久| 一区二区三区四区视频| 羞羞色院91蜜桃| 国产精品白丝在线| 国内自拍第二页| 欧美在线亚洲| 国产在线精品日韩| 成人影院网站| 中日韩午夜理伦电影免费| 亚洲在线观看av| 亚洲女人****多毛耸耸8| 在线观看国产一级片| 欧美国产美女| 91精品黄色| 九九精品调教| 亚洲第一区第一页| 最新中文字幕一区| 国产精品免费观看视频| 五月天开心婷婷| 国产字幕视频一区二区| 欧美成人第一区| 日韩制服一区| 欧美精品在线免费| 日本中文字幕电影在线观看 | 日本少妇激三级做爰在线| 国语精品一区| 欧美日韩国产综合在线| 国内欧美日韩| 久久久综合免费视频| 天堂а√在线8种子蜜桃视频| 在线一区二区三区做爰视频网站| 日韩国产第一页| av动漫一区二区| 在线观看国产一级片| 国产一区日韩一区| 日韩精彩视频| 99国产精品久久一区二区三区| 欧美最猛性xxxxx免费| 亚洲成人三级| 日韩成人中文字幕| 国产精品久久免费| 狠狠操狠狠色综合网| 九九热视频在线免费观看| 成人av在线网| 亚洲av无日韩毛片久久| 国产精品久久久久9999高清| 一区二区三区四区五区视频| 国产精品对白| 国产一区在线播放| 涩涩在线视频| 欧美成人免费小视频| 国产视频精品久久| 精品裸体舞一区二区三区| 久久午夜鲁丝片| 午夜国产不卡在线观看视频| 波多野结衣喷潮| 国产婷婷色一区二区三区 | 7777精品| 96精品久久久久中文字幕| 日本综合字幕| 91高清在线免费观看| 影音先锋中文在线视频| 中文字幕久热精品视频在线| 午夜视频福利在线| 亚洲成人动漫在线播放| 国产福利第一页| 欧美日韩中文字幕一区| 五月天婷婷导航| 午夜精品久久久久影视| 精品人妻伦九区久久aaa片| 欧美激情一区二区三区四区| 波多野结衣先锋影音| 丁香婷婷综合网| 奇米777在线视频| 麻豆精品视频在线观看视频| 少妇性l交大片| 丝袜诱惑制服诱惑色一区在线观看 | av在线不卡免费看| 亚洲激情在线看| 老司机一区二区三区| 免费在线观看视频a| 欧美日韩国产高清| 久久久青草青青国产亚洲免观| 高清在线观看免费| 亚洲一级电影| 男人天堂a在线| 国模大胆一区二区三区| 黄色一级大片免费| 女人香蕉久久**毛片精品| av磁力番号网| 一个色综合网| 天天综合五月天| 亚洲精品国产成人影院| 青青草原国产免费| 欧美国产一区二区三区激情无套| 亚洲日本一区二区三区在线不卡 | 亚洲精品一区二区三区不| 欧美一区,二区| 亚洲国产精品久久久久秋霞蜜臀| 亚洲AV无码一区二区三区性| 欧美sm极限捆绑bd| 欧美 日韩 国产 精品| 亚洲福利视频网| 欧美欧美欧美| 色阁综合伊人av| 国产美女av在线| 欧美极品欧美精品欧美视频 | 国产区在线观看| 欧美激情一二区| 黄色18在线观看| 日本成熟性欧美| www.26天天久久天堂| 成人免费高清完整版在线观看| 国产精品亚洲四区在线观看| 成人免费在线看片| 任你弄精品视频免费观看| 日本一区二区三区免费观看| 日韩成人三级| 国产乱子伦精品视频| 亚洲精品三级| 中文字幕视频在线免费观看| 极品少妇一区二区三区精品视频 | 日本女优爱爱视频| 蜜臀久久久久久久| 少妇欧美激情一区二区三区| 成人午夜免费av| 国产精品国产三级国产专业不 | 亚洲最新在线视频| 成人免费看片| 欧美在线性爱视频| 亚洲人成777| 精品久久sese| 国产电影一区二区在线观看| 国产毛片久久久久久国产毛片| 鲁大师影院一区二区三区| 91 在线视频观看| 成人免费的视频| 国产精品国产三级国产专业不| 亚洲美女屁股眼交| 欧美一区二区三区网站| 日韩一区二区麻豆国产| 九色视频网站在线观看| 欧美大片在线影院| 久久精品黄色| 麻豆久久久av免费| 欧美aa国产视频| 亚洲成人福利在线观看| 成人深夜在线观看| 色婷婷粉嫩av| 色av一区二区| 日日躁夜夜躁白天躁晚上躁91| 色狠狠av一区二区三区香蕉蜜桃| free性护士videos欧美| 91久久嫩草影院一区二区| 四虎5151久久欧美毛片| 成人午夜免费剧场| 日本麻豆一区二区三区视频| 国产精品一区二区无码对白| ...av二区三区久久精品| 天堂网中文字幕| 337p日本欧洲亚洲大胆精品 | 午夜影院免费体验区| 欧美成人亚洲成人| 日韩五码电影| 天堂av一区二区| 蜜桃av一区| 国产男女猛烈无遮挡a片漫画| 一区二区三区中文免费| 91麻豆一区二区| 最新的欧美黄色| 外国电影一区二区| 日韩三级在线播放| 麻豆久久精品| 香蕉视频黄色在线观看| 亚洲国产欧美日韩另类综合| www.国产免费| 欧美激情精品久久久久| 日韩在线网址| 国产亚洲精品久久久久久久| 国产一区二区三区在线观看免费视频 | 亚洲精品欧美二区三区中文字幕| 亚洲精品91天天久久人人| 日韩精品免费视频| 免费成人在线电影| 国内精品久久国产| aa亚洲婷婷| 三级电影在线看| 精品日本高清在线播放| 午夜av免费观看| 日本精品va在线观看| 欧美理伦片在线播放| 777精品久无码人妻蜜桃| av不卡一区二区三区| 成人精品在线看| 亚洲欧美三级伦理| 国产一区二区精品调教| 亚洲一区三区视频在线观看| 另类综合日韩欧美亚洲| 一区二区国产精品精华液| 91精品国产综合久久久久久 | 四虎国产精品免费观看| 性生活免费在线观看| 综合电影一区二区三区 | 在线免费观看国产精品| 亚洲性夜色噜噜噜7777| 草民电影神马电影一区二区| 亚洲激情一区二区三区| 久久国产三级精品| 国产探花在线播放| 亚洲第一视频网| 男人皇宫亚洲男人2020| 在线视频欧美一区| 国产成人午夜精品影院观看视频| 国产精品1000| 亚洲天堂视频在线观看| 亚洲综合资源| 国产真实老熟女无套内射| 99re66热这里只有精品3直播 | 日韩在线一卡二卡| 精品国产亚洲在线| 免费亚洲电影| 穿情趣内衣被c到高潮视频| 成人97人人超碰人人99| 无码视频在线观看| xvideos成人免费中文版| 51vv免费精品视频一区二区| 99精品视频播放| 1区2区3区精品视频| 人人妻人人澡人人爽久久av| 国产精品99一区| 欧美日韩国产免费观看| 亚洲av无码国产精品麻豆天美| 欧美美女激情18p| 男人久久天堂| 无码人妻精品一区二区三区99v| heyzo一本久久综合| 91国产精品一区| 国产91精品不卡视频| 91精品国产自产拍在线观看蜜| 中国一级特黄录像播放| 欧美日韩亚洲综合| 91资源在线观看| 青青草影院在线观看| 久久这里只有精品首页| 国产成a人亚洲精v品无码| 97视频在线看| 午夜日韩电影| 亚洲高潮女人毛茸茸| 亚洲娇小xxxx欧美娇小| 国产成人免费av一区二区午夜| 国产激情在线观看视频|