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

Python的51個“秘密”被曝光,GitHub獲2萬星

新聞 后端
Python,是一個設(shè)計優(yōu)美的解釋型高級語言,它提供了很多能讓程序員感到舒適的功能特性。

 [[268605]]

Python,是一個設(shè)計優(yōu)美的解釋型高級語言,它提供了很多能讓程序員感到舒適的功能特性。

但有的時候,Python一些特性導(dǎo)致的輸出結(jié)果,對于初學(xué)者就很難理解了。

一個解析51項堪稱是“秘密”的Python特性項目,在GitHub上徹底火了。

英文原版已經(jīng)拿到了近15000星,中文翻譯版也獲得了7500+星。

Python的51個“秘密”被曝光,GitHub獲2萬星
Python的51個“秘密”被曝光,GitHub獲2萬星

項目中的部分內(nèi)容,也許你聽說過,但依然可能會透露一些你所不知道的Python有趣特性。

我覺得這是學(xué)習(xí)編程語言內(nèi)部原理的好機會,而且我相信你也會從中獲得樂趣!

如果你是一位經(jīng)驗比較豐富的Python程序員,你可以試試能否一次就找到正確答案。

也許你對其中的一些例子比較熟悉,那這些案例能喚起你當(dāng)年踩坑時的甜蜜回憶。

這個項目的中文版全文大約2萬字,干貨多的快要溢出來了,大家可以先看一下目錄。

Python的51個“秘密”被曝光,GitHub獲2萬星

示例結(jié)構(gòu)

所有示例的結(jié)構(gòu)都如下所示:

> 一個精選的標(biāo)題

# 準(zhǔn)備代碼.

# 釋放魔法...

Output (Python version):

>>> 觸發(fā)語句

出乎意料的輸出結(jié)果

(可選): 對意外輸出結(jié)果的簡短描述。

說明:

簡要說明發(fā)生了什么以及為什么會發(fā)生。

如有必要,舉例說明

Output:

>>>觸發(fā)語句#一些讓魔法變得容易理解的例子

#一些正常的輸入

注意:所有的示例都在Python3.5.2版本的交互解釋器上測試過,如果不特別說明應(yīng)該適用于所有Python版本。

用法

我個人建議,最好依次閱讀下面的示例,并仔細閱讀設(shè)置例子最開始的代碼。

閱讀輸出結(jié)果

  • 確認(rèn)結(jié)果是否如你所料.

  • 確認(rèn)你是否知道這背后的原理

示例

微妙的字符串

1.

  1. >>> a = "some_string" 
  2. >>> id(a) 
  3. 140420665652016 
  4. >>> id("some" + "_" + "string"# 注意兩個的id值是相同的. 
  5. 140420665652016 

2.

  1. >>> a = "wtf" 
  2. >>> b = "wtf" 
  3. >>> a is b 
  4. True 
  5.  
  6. >>> a = "wtf!" 
  7. >>> b = "wtf!" 
  8. >>> a is b 
  9. False 
  10.  
  11. >>> a, b = "wtf!""wtf!" 
  12. >>> a is b 
  13. True 

3.

  1. >>> 'a' * 20 is 'aaaaaaaaaaaaaaaaaaaa' 
  2. True 
  3. >>> 'a' * 21 is 'aaaaaaaaaaaaaaaaaaaaa' 
  4. False 

說明:

這些行為是由于 Cpython 在編譯優(yōu)化時,某些情況下會嘗試使用已經(jīng)存在的不可變對象,而不是每次都創(chuàng)建一個新對象。(這種行為被稱作字符串的駐留[string interning])

發(fā)生駐留之后,許多變量可能指向內(nèi)存中的相同字符串對象。(從而節(jié)省內(nèi)存)

在上面的代碼中,字符串是隱式駐留的。何時發(fā)生隱式駐留則取決于具體的實現(xiàn)。這里有一些方法可以用來猜測字符串是否會被駐留:

所有長度為 0 和長度為 1 的字符串都被駐留。

字符串在編譯時被實現(xiàn)。('wtf' 將被駐留, 但是 ''.join(['w', 't', 'f'] 將不會被駐留)

字符串中只包含字母,數(shù)字或下劃線時將會駐留。所以 'wtf!' 由于包含!而未被駐留。可以在這里找CPython對此規(guī)則的實現(xiàn)。

Python的51個“秘密”被曝光,GitHub獲2萬星

當(dāng)在同一行將 a 和 b 的值設(shè)置為 "wtf!" 的時候, Python 解釋器會創(chuàng)建一個新對象, 然后同時引用第二個變量。

如果你在不同的行上進行賦值操作, 它就不會“知道”已經(jīng)有一個 wtf! 對象 (因為 "wtf!" 不是按照上面提到的方式被隱式駐留的)。

它是一種編譯器優(yōu)化,特別適用于交互式環(huán)境。

常量折疊(constant folding) 是 Python 中的一種窺孔優(yōu)化(peephole optimization) 技術(shù)。

這意味著在編譯時表達式 'a'*20 會被替換為 'aaaaaaaaaaaaaaaaaaaa' 以減少運行時的時鐘周期。

只有長度小于 20 的字符串才會發(fā)生常量折疊。(為啥? 想象一下由于表達式'a'*10**10 而生成的 .pyc 文件的大小)相關(guān)的源碼:

https://github.com/python/cpython/blob/3.6/Python/peephole.c#L288

是時候來點蛋糕了!

1.

  1. some_dict = {} 
  2. some_dict[5.5] = "Ruby" 
  3. some_dict[5.0] = "JavaScript" 
  4. some_dict[5] = "Python" 
  5.  
  6. Output: 
  7.  
  8. >>> some_dict[5.5
  9. "Ruby" 
  10. >>> some_dict[5.0
  11. "Python" 
  12. >>> some_dict[5
  13. "Python" 
  14.  
  15. "Python" 消除了 "JavaScript" 的存在? 

說明:

Python 字典通過檢查鍵值是否相等和比較哈希值來確定兩個鍵是否相同。

具有相同值的不可變對象在Python中始終具有相同的哈希值。

  1. >>> 5 == 5.0 
  2. True 
  3. >>> hash(5) == hash(5.0
  4. True 

注意: 具有不同值的對象也可能具有相同的哈希值(哈希沖突)。

當(dāng)執(zhí)行 some_dict[5] = "Python" 語句時, 因為Python將 5 和 5.0 識別為 some_dict 的同一個鍵, 所以已有值 "JavaScript" 就被 "Python" 覆蓋了。

到處返回!

  1. def some_func(): 
  2. try
  3. return 'from_try' 
  4. finally
  5. return 'from_finally' 
  6.  
  7. Output: 
  8.  
  9. >>> some_func() 
  10.  
  11. 'from_finally' 

說明:

當(dāng)在 "try...finally" 語句的 try 中執(zhí)行 return, break 或 continue 后, finally 子句依然會執(zhí)行。

函數(shù)的返回值由最后執(zhí)行的 return 語句決定。

由于 finally 子句一定會執(zhí)行, 所以 finally 子句中的 return 將始終是最后執(zhí)行的語句。

本質(zhì)上,我們都一樣

  1. class WTF: 
  2. pass 
  3.  
  4. Output: 
  5.  
  6. >>> WTF() == WTF() # 兩個不同的對象應(yīng)該不相等 
  7.  
  8. False 
  9.  
  10. >>> WTF() is WTF() # 也不相同 
  11.  
  12. False 
  13.  
  14. >>> hash(WTF()) == hash(WTF()) # 哈希值也應(yīng)該不同 
  15.  
  16. True 
  17.  
  18. >>> id(WTF()) == id(WTF()) 
  19.  
  20. True 

說明:

當(dāng)調(diào)用 id 函數(shù)時, Python 創(chuàng)建了一個 WTF 類的對象并傳給 id 函數(shù)。

然后 id 函數(shù)獲取其id值 (也就是內(nèi)存地址), 然后丟棄該對象. 該對象就被銷毀了。

當(dāng)我們連續(xù)兩次進行這個操作時, Python會將相同的內(nèi)存地址分配給第二個對象。 因為 (在CPython中) id 函數(shù)使用對象的內(nèi)存地址作為對象的id值, 所以兩個對象的id值是相同的。

綜上, 對象的id值僅僅在對象的生命周期內(nèi)唯一。在對象被銷毀之后, 或被創(chuàng)建之前, 其他對象可以具有相同的id值。

那為什么 is 操作的結(jié)果為 False 呢? 讓我們看看這段代碼:

  1. class WTF(object): 
  2. def __init__(self): print("I"
  3. def __del__(self): print("D"
  4.  
  5. Output: 
  6.  
  7. >>> WTF() is WTF() 
  8. False 
  9. >>> id(WTF()) == id(WTF()) 
  10. True 

正如你所看到的, 對象銷毀的順序是造成所有不同之處的原因。

為什么?

  1. some_string = "wtf" 
  2. some_dict = {} 
  3. for i, some_dict[i] in enumerate(some_string): 
  4. pass 
  5.  
  6. Output: 
  7.  
  8. >>> some_dict # 創(chuàng)建了索引字典. 
  9. {0'w'1't'2'f'

說明:

Python 語法 中對 for 的定義是:

  1. for_stmt: 'for' exprlist 'in' testlist ':' suite ['else' ':' suite] 

其中 exprlist 指分配目標(biāo). 這意味著對可迭代對象中的每一項都會執(zhí)行類似 {exprlist} = {next_value} 的操作。

一個有趣的例子說明了這一點:

  1. for i in range(4): 
  2. print(i) 
  3. i = 10 
  4.  
  5. Output: 
  6.  
  7. 0 
  8. 1 
  9. 2 
  10. 3 

你可曾覺得這個循環(huán)只會運行一次?

說明:

由于循環(huán)在Python中工作方式, 賦值語句 i = 10 并不會影響迭代循環(huán), 在每次迭代開始之前, 迭代器(這里指 range(4)) 生成的下一個元素就被解包并賦值給目標(biāo)列表的變量(這里指 i)了。

在每次迭代中, enumerate(some_string) 函數(shù)就生成一個新值 i (計數(shù)器增加) 并從 some_string 中獲取一個字符。

然后將字典 some_dict 鍵 i (剛剛分配的) 的值設(shè)為該字符。本例中循環(huán)的展開可以簡化為:

  1. >>> i, some_dict[i] = (0'w'
  2. >>> i, some_dict[i] = (1't'
  3. >>> i, some_dict[i] = (2'f'
  4. >>> some_dict 

執(zhí)行時機差異

1.

  1. array = [1815
  2. g = (x for x in array if array.count(x) > 0
  3. array = [2822
  4.  
  5. Output: 
  6.  
  7. >>> print(list(g)) 
  8. [8

2.

  1. array_1 = [1,2,3,4
  2. g1 = (x for x in array_1) 
  3. array_1 = [1,2,3,4,5
  4.  
  5. array_2 = [1,2,3,4
  6. g2 = (x for x in array_2) 
  7. array_2[:] = [1,2,3,4,5
  8.  
  9. Output: 
  10.  
  11. >>> print(list(g1)) 
  12. [1,2,3,4
  13.  
  14. >>> print(list(g2)) 
  15. [1,2,3,4,5

說明:

在生成器表達式中, in 子句在聲明時執(zhí)行, 而條件子句則是在運行時執(zhí)行。

所以在運行前, array 已經(jīng)被重新賦值為 [2, 8, 22], 因此對于之前的 1, 8 和 15, 只有 count(8) 的結(jié)果是大于 0 的, 所以生成器只會生成 8。

第二部分中 g1 和 g2 的輸出差異則是由于變量 array_1 和 array_2 被重新賦值的方式導(dǎo)致的。

在第一種情況下, array_1 被綁定到新對象 [1,2,3,4,5], 因為 in 子句是在聲明時被執(zhí)行的,所以它仍然引用舊對象 [1,2,3,4](并沒有被銷毀)。

在第二種情況下, 對 array_2 的切片賦值將相同的舊對象 [1,2,3,4] 原地更新為 [1,2,3,4,5]。

因此 g2 和 array_2 仍然引用同一個對象(這個對象現(xiàn)在已經(jīng)更新為 [1,2,3,4,5])。

本文內(nèi)容來自中文版項目,項目全文2萬多字,以及海量代碼。

因為篇幅原因,小七就只為大家展示這6個案例了,更多案例大家可以在項目中查看。

項目作者:Satwik Kansal

英文版項目名稱:wtfpython

中文版作者:慕晨

中文項目名稱:wtfpython-cn

因為平臺規(guī)定,無法放鏈接。大家可以自行搜索。

 

責(zé)任編輯:張燕妮 來源: 頭條科技
相關(guān)推薦

2021-05-17 09:44:34

程序員技能開發(fā)者

2025-08-18 09:06:51

2025-01-06 08:50:00

GitHub開源項目

2023-07-28 14:26:06

特斯拉駕駛

2022-08-04 18:58:18

Github惡意軟件攻擊

2019-08-09 18:08:13

程序員技能開發(fā)者

2021-08-18 15:49:10

FBI恐怖分子信息泄露

2019-04-28 09:36:11

GitHub代碼開發(fā)者

2022-05-19 16:36:13

信息泄露隱私

2021-09-14 10:42:00

數(shù)據(jù)安全可穿戴設(shè)備網(wǎng)絡(luò)安全

2022-03-31 18:41:10

數(shù)據(jù)泄露

2021-08-09 15:56:43

機器學(xué)習(xí)人工智能計算機

2024-03-04 19:14:15

2025-04-23 10:56:52

2024-08-28 16:11:07

2024-04-08 11:28:14

2020-07-02 15:00:28

GitHub代碼開發(fā)者

2020-05-19 14:27:10

GitHubPythonAI算法

2020-08-12 15:19:05

GitHub代碼開發(fā)者

2021-02-03 09:41:27

春節(jié)電腦程序員
點贊
收藏

51CTO技術(shù)棧公眾號

一区二区三区免费在线观看视频 | 久久久久久人妻一区二区三区| jizz国产视频| 99re国产精品| 色妞欧美日韩在线| www.四虎精品| 电影一区二区| 亚洲午夜久久久久久久久电影网| 久久久婷婷一区二区三区不卡| 中文字幕一区二区三区四区免费看| 91精品国产91久久综合| 日韩av一卡二卡| 天天操狠狠操夜夜操| av手机在线观看| 久久久久亚洲蜜桃| 99在线观看| 日韩国产亚洲欧美| 欧美三级第一页| 在线播放国产精品| 欧美在线一级片| 91视频亚洲| 91激情在线视频| 国产av国片精品| 麻豆91在线| 国产日韩欧美综合一区| 国产乱码精品一区二区三区中文 | 国产不卡在线一区| 国产精品99久久久久久人| 久久久久国产精品夜夜夜夜夜| 青青草原综合久久大伊人精品 | 尤物精品在线| 久久亚洲精品中文字幕冲田杏梨| 中文字幕第4页| 精品精品国产毛片在线看| 欧美一区二区三区男人的天堂| 国产精品乱码久久久久| 超碰中文在线| 一区二区不卡在线播放| 91香蕉视频网址| av在线女优影院| 国产视频一区二区在线| 久久免费看av| 少妇性bbb搡bbb爽爽爽欧美| 成人小视频免费在线观看| 亚洲一区二区中文字幕| 一级黄在线观看| 开心九九激情九九欧美日韩精美视频电影 | 老熟妻内射精品一区| 精品午夜久久| 尤物yw午夜国产精品视频明星| 国产精品毛片一区二区| 最新亚洲精品| 亚洲欧美国产日韩天堂区| 亚洲国产综合视频| 神马久久av| 亚洲精品视频播放| 亚洲AV无码片久久精品| 成人区精品一区二区婷婷| 伊人亚洲福利一区二区三区| 亚洲天堂岛国片| 日韩av免费大片| 日韩在线观看免费av| 亚洲一二三四五六区| 国产精品久久观看| 久久中文精品视频| 免费中文字幕在线观看| 亚洲另类视频| 日本高清久久天堂| 亚洲午夜无码久久久久| 精品夜夜嗨av一区二区三区| 91美女片黄在线观| 亚洲欧美高清视频| 91蝌蚪porny| 婷婷四房综合激情五月| 老司机99精品99| 亚洲一区二区三区四区五区黄 | 日韩一二区视频| 欧美aaa免费| 精品av在线播放| 北条麻妃av高潮尖叫在线观看| 国产精品原创视频| 日韩一区二区精品葵司在线| v天堂中文在线| 国产欧美亚洲精品a| 久久精品人人做人人爽| 亚洲国产精一区二区三区性色| 亚洲伊人观看| 国产日韩精品视频| 国产 日韩 欧美 精品| 久久久九九九九| 日本久久高清视频| 日韩脚交footjobhdboots| 欧美日韩在线亚洲一区蜜芽| 精产国品一区二区三区| 沈樵精品国产成av片| 久久久久北条麻妃免费看| 日韩精品国产一区二区| 日韩av在线发布| www.av一区视频| 番号在线播放| 亚洲国产视频a| 69久久久久久| 羞羞答答一区二区| 久久国产精品偷| 91视频久久久| 国产凹凸在线观看一区二区| 天天久久人人| 极品在线视频| 777欧美精品| 一级黄色性视频| 亚洲福利久久| 亚洲free嫩bbb| 黄色在线观看网| 亚洲国产成人porn| 五月天婷婷在线观看视频| 你懂的一区二区三区| 久久久久久com| 国产精品呻吟久久| 日本一区二区三区久久久久久久久不| 日韩专区第三页| а中文在线天堂| 国产黄色小视频在线观看| 国产福利视频一区二区三区| 日韩一区二区电影在线观看| √最新版天堂资源网在线| 在线播放视频一区| 天天操天天舔天天射| 99精品免费视频| 97国产超碰| 天堂аⅴ在线地址8| 高潮白浆女日韩av免费看| 亚洲成人精品在线播放| 91精品动漫在线观看| 国产玖玖精品视频| 国产精品一区二区三区四区色| 午夜精品免费在线观看| 亚洲成人激情小说| 亚洲色图网站| 成人亲热视频网站| 免费av在线网址| 欧美精品乱码久久久久久按摩| 中文字幕黄色网址| 日韩电影在线免费观看| 日本成人看片网址| 美女色狠狠久久| 一区国产精品视频| 亚洲永久精品一区| 国产欧美一区二区精品久导航| 国产午夜福利视频在线观看| 欧美精品国产白浆久久久久| 性视频1819p久久| 图片区 小说区 区 亚洲五月| 亚洲五码中文字幕| 日韩av手机在线播放| 国产精品入口| 日本一区视频在线播放| 福利一区二区三区视频在线观看| 中文字幕亚洲字幕| 国产女人高潮毛片| 一区二区激情视频| 精品国产一区在线| 久久精品91| 亚洲欧洲免费无码| 精品99re| 97精品视频在线播放| 视频二区在线| 欧美日韩精品一区视频| 18岁成人毛片| av福利精品导航| wwwxxx黄色片| 四季av在线一区二区三区| 91丝袜美腿美女视频网站| 四虎影视成人| 亚洲天堂成人在线| 国产伦理一区二区| 亚洲国产精品自拍| 精品无人区无码乱码毛片国产| 久久精品久久99精品久久| 国产911在线观看| 香蕉久久精品日日躁夜夜躁| 国产精品精品视频| 色呦呦久久久| 亚洲视频在线观看| 国产黄色大片网站| 欧美日韩中国免费专区在线看| 久久中文字幕精品| 丁香网亚洲国际| 四季av一区二区| 欧美1区2区| 日本一区二区精品视频| 精品三级国产| 日本欧美一二三区| 99在线播放| 亚洲欧美国产精品专区久久| 国产高清不卡视频| 91国模大尺度私拍在线视频| 国产高潮国产高潮久久久91| 久久精品亚洲精品国产欧美| 99中文字幕在线| 久久性天堂网| 人人妻人人澡人人爽欧美一区 | 日韩av电影免费播放| 婷婷成人av| 欧美综合一区第一页| 呦呦在线视频| 在线日韩第一页| 亚洲日本国产精品| 日韩欧美一区中文| 中文字幕人妻互换av久久 | 无码人妻丰满熟妇区bbbbxxxx| 亚洲婷婷综合久久一本伊一区| 国产麻豆天美果冻无码视频| 国产剧情一区二区| 美女黄色片视频| 国产精品嫩草99av在线| 丰满人妻一区二区三区53号| 成人精品天堂一区二区三区| 美女黄毛**国产精品啪啪| 亚洲一区二区电影| 成人h视频在线| 国产三级一区| 日本久久久久久久| 三级在线看中文字幕完整版| 欧美丰满少妇xxxxx| 精产国品自在线www| 中文字幕在线精品| 成人好色电影| 亚洲人成自拍网站| 日韩av免费观影| 亚洲加勒比久久88色综合| 性一交一乱一色一视频麻豆| 欧美高清视频www夜色资源网| 91黑人精品一区二区三区| 精品日本高清在线播放| 国产一级理论片| 亚洲黄网站在线观看| 亚洲成人生活片| 亚洲主播在线播放| 黄色一级片在线| 亚洲精品视频免费观看| www.99re7| 亚洲欧美日韩国产综合在线| 国产午夜精品理论片| 国产精品久久久久四虎| 国产精品麻豆一区| 国产精品电影一区二区三区| 精品一区二区三孕妇视频| 中文字幕av一区二区三区高| 奇米网一区二区| 日韩理论片一区二区| 成人免费精品动漫网站| 亚洲精品免费看| 欧美日韩国产精品综合| 性久久久久久久久久久久| 国产精品6666| 一道本成人在线| 亚洲精品91天天久久人人| 欧美午夜寂寞影院| 国产精品视频第一页| 日韩欧美一区在线| 内射无码专区久久亚洲| 亚洲精品视频在线播放| 成人精品一区二区| 蜜臀久久99精品久久久无需会员 | 性生活一级大片| 粉嫩av一区二区三区粉嫩| 亚洲av成人片色在线观看高潮| 91麻豆精品在线观看| 欧美黄色高清视频| 亚洲欧美日韩成人高清在线一区| 欧美三级小视频| 五月天一区二区| 中国一区二区视频| 4438亚洲最大| 色综合久久久久久| 一区二区欧美久久| 任你弄在线视频免费观看| 97视频免费观看| 久久精品xxxxx| 岛国视频一区免费观看| 久久av免费看| 日韩视频一二三| 欧美在线综合| 99精品视频免费版的特色功能| 99久久免费视频.com| 超碰人人人人人人人| 夜夜嗨av一区二区三区网页 | 老**午夜毛片一区二区三区| 五月激情五月婷婷| 成人av一区二区三区| 精品亚洲aⅴ无码一区二区三区| 亚洲黄色片在线观看| 亚洲 欧美 中文字幕| 日韩一区二区三免费高清| 黄色网址在线播放| 欧美极品少妇全裸体| 亚洲电影有码| 国产一区二区不卡视频在线观看| 成人同人动漫免费观看 | 亚洲妇女成熟| 亚洲综合在线中文字幕| 视频精品在线观看| 成人午夜视频在线观看免费| 蜜臀av性久久久久蜜臀aⅴ流畅| 亚洲天堂av网站| 亚洲色图20p| 欧美国产一级片| 亚洲国产精品久久| 18在线观看的| 国产美女久久精品香蕉69| 欧美一级一片| 日韩极品视频在线观看| 久久国产婷婷国产香蕉| 播金莲一级淫片aaaaaaa| 亚洲自拍偷拍网站| 国产精品久久久久久免费播放| 亚洲码在线观看| 91超碰免费在线| 国产成人精品自拍| 中文字幕乱码亚洲无线精品一区| 91热这里只有精品| 久久久久国产成人精品亚洲午夜| 日韩欧美国产亚洲| 精品国产凹凸成av人网站| 免费a在线看| 成人a在线视频| 99久精品视频在线观看视频| 手机看片福利日韩| 久久久久久久久久久99999| 免费日韩一级片| 亚洲精品成人久久电影| 国产极品在线观看| 国产精品日韩一区二区| 欧美日韩网址| 波多野结衣电影免费观看| 亚洲乱码中文字幕| www.亚洲欧美| 欧美人成在线视频| 精品亚洲a∨一区二区三区18| a级网站在线观看| 国内精品国产成人| 私库av在线播放| 91精品在线观看入口| 顶级网黄在线播放| 亚洲在线第一页| 午夜精品国产| 欧美一级大片免费看| 亚洲在线成人精品| 成人午夜免费福利| 91豆花精品一区| 四虎5151久久欧美毛片| 亚洲色欲综合一区二区三区| 26uuu亚洲| 狠狠躁夜夜躁人人爽视频| 中文字幕日韩在线播放| 免费日韩成人| 国产91视频一区| 99亚偷拍自图区亚洲| 日批视频免费在线观看| 在线视频欧美日韩精品| 自拍偷拍亚洲| 日韩精品一区二区免费| 99re在线精品| 波多野结衣在线观看一区| 日韩网站在线观看| 日韩在线观看一区二区三区| 僵尸世界大战2 在线播放| 久久午夜电影网| 国产又粗又大又爽| 欧美精品videos另类日本| 亚洲女娇小黑人粗硬| 美女网站色免费| 洋洋成人永久网站入口| 人成免费电影一二三区在线观看| 国产精品成人一区| 亚洲最新av| 手机在线看片日韩| 欧美日韩一区二区电影| 午夜激情在线| 欧美二区三区在线| 精品亚洲国产成人av制服丝袜| 日韩aaaaaa| 色婷婷久久一区二区| 免费观看亚洲视频大全| 69堂免费视频| 亚洲视频一区在线| 艳母动漫在线看| 成人免费黄色网| 性欧美暴力猛交另类hd| 伊人在线视频观看| 亚洲男女自偷自拍图片另类| 中文字幕日本一区| 红桃av在线播放| 亚洲综合在线第一页| 国产片在线观看| av免费精品一区二区三区| 久久亚洲影院| jizz国产免费| 久久视频在线直播| 神马电影久久|