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

Python到底是強類型語言,還是弱類型語言?

開發 后端
很多讀者應該都熟悉動態類型與靜態類型,但是很多人也會把它們跟強弱類型混為一談,所以我們有必要先作一下概念上的澄清。

[[340125]]

1、動靜類型與強弱類型

很多讀者應該都熟悉動態類型與靜態類型,但是很多人也會把它們跟強弱類型混為一談,所以我們有必要先作一下概念上的澄清。

這兩組類型都是針對于編程語言而言的,但關注的核心問題不同。

對于“動靜類型”概念,它的核心問題是“什么時候知道一個變量是哪種類型”?

一般而言,在編譯期就確定變量類型的是靜態類型語言,在運行期才確定變量類型的則是動態類型語言。

例如,某些語言中定義函數“int func(int a){…}”,在編譯時就能確定知道它的參數和返回值是 int 類型,所以是靜態類型;而典型如 Python,定義函數時寫“def func(a):…”,并不知道參數和返回值的類型,只有到運行時調用函數,才最終確定參數和返回值的類型,所以是動態類型

對于“強弱類型”概念,它的核心問題是“不同類型的變量是否允許隱式轉化”?

一般而言,編譯器有很少(合理)隱式類型轉化的是強類型語言,有較多(過分)隱式類型轉化的是弱類型語言。

例如,Javascript 中的 "1000"+1會得到字符串“10001”,而 "1000"-1則會得到數字 999,也就是說,編譯器根據使用場合,對兩種不同類型的對象分別做了隱式的類型轉化,但是相似的寫法,在強類型語言中則會報類型出錯。(數字與字符串的轉化屬于過分的轉化,下文會再提到一些合理的轉化。)

按照以上的定義,有人將常見的編程語言畫了一張分類圖:

 

按強弱類型維度劃分,可以歸納出:

  • 強類型:Java、C#、Python、Ruby、Erlang(再加GO、Rust)……
  • 弱類型:C、C++、Javascript、Perl、PHP、VB……

2、過去的強弱類型概念

動靜類型的概念基本上被大家所認可,然而,強弱類型的概念在問答社區、技術論壇和學術討論上卻有很多的爭議。此處就不作羅列了。

為什么會有那么多爭議呢?

最主要的原因之一是有人把它與動靜類型混用了。

最明顯的一個例子就是 Guido van Rossum 在 2003 年參加的一個訪談,它的話題恰好是關于強弱類型的(Strong versus Weak Typing):

 

但是,他們談論的明顯只是動靜類型的區別。

訪談中還引述了 Java 之父 James Gosling 的話,從他的表述中也能看出,他說的“強弱類型”其實也是動靜類型的區分。

另外還有一個經典的例子,C 語言之父 Dennis Ritchie 曾經說 C 語言是一種“強類型但是弱檢查”的語言。如果對照成前文的定義,那他其實指的是“靜態類型弱類型”。

為什么這些大佬們會有混淆呢?

其實原因也很簡單,那就是在當時還沒有明確的動靜類型與強弱類型的概念之分!或者說,那時候的強弱類型指的就是動靜類型。

維基百科上給出了 1970 年代對強類型的定義,基本可以還原成前文提到的靜態類型:

In 1974, Liskov and Zilles defined a strongly-typed language as one in which "whenever an object is passed from a calling function to a called function, its type must be compatible with the type declared in the called function."[3] In 1977, Jackson wrote, "In a strongly typed language each data area will have a distinct type and each process will state its communication requirements in terms of these types."[4]

前面幾位編程語言之父應該就是持有類似的觀念。

不過,大佬們也意識到了當時的“強弱類型”概念并不充分準確,所以 Dennis Ritchie 才會說成“強類型但是弱檢查”,而且在訪談中,Guido 也特別強調了 Python 不應該被稱為弱類型,而應該說是運行時類型(runtime typing) 。

但是在那個早期年代,基本上強弱類型就等同于動靜類型,而這樣的想法至今仍在影響著很多人。

3、現在的強弱類型概念

早期對于編程語言的分類其實是混雜了動靜與強弱兩個維度,但是,它們并不是一一對應重合的關系,并不足以表達編程語言間的區別,因此就需要有更為明確/豐富的定義。

有人提出了“type safety”、“memory safety”等區分維度,也出現了靜態檢查類型和動態檢查類型,與強弱類型存在一定的交集。

直到出現 2004 年的一篇集大成的學術論文《Type Systems》(出自微軟研究院,作者 Luca Cardelli),專門研究編程語言的不同類型系統:

論文中對于強弱檢查(也即強弱類型)有一個簡短的歸納如下:

 

  • Strongly checked language: A language where no forbidden errors can occur at run time (depending on the definition of forbidden error).
  • Weakly checked language: A language that is statically checked but provides no clear guarantee of absence of execution errors.

其關鍵則是程序對于 untrapped errors 的檢查強度,在某些實際已出錯的地方,弱類型程序并不作捕獲處理,例如 C 語言的一些指針計算和轉換,而《C 程序員十誡》的前幾個都是弱類型導致的問題。

 

論文對于這些概念的定義還是比較抽象的,由于未捕獲的錯誤(untrapped errors)大多是由于隱式類型轉換所致,所以又演化出了第一節中的定義,以隱式類型轉換作為判斷標準。

如今將“對隱式類型轉換的容忍度”作為強弱類型的分類標準,已經是很多人的共識(雖然不夠全面,而且有一些不同的聲音)。

例如,維基百科就把隱式類型轉換作為弱類型的主要特點之一:

A weakly typed language has looser typing rules and may produce unpredictable results or may perform implicit type conversion at runtime.

例如,以 Python 為例,社區的主流看法認為它是強類型語言,而判斷的標準也是看隱式類型轉換。

例子有很多,比如 Python 官方的 wiki,它專門回答了Why is Python a dynamic language and also a strongly typed language ,給出了 4 個答案,為 Python 的“動態強類型”定性:

 

再比如,在《流暢的Python》第11章的雜談中,也專門提到了強弱類型的分類。(它的用語是“很少隱式類型轉換”,算是比較嚴謹的,但是也錯誤地把 C++ 歸為了強類型。)

4、Python 是不是強類型語言?

關于“Python 是否屬于強類型”話題,在主流觀點之外,還存在著不少誤解的看法。

一方面的原因有些人混用了強弱類型與動靜類型,這有歷史的原因,前面已經分析了。

另外還有一個同樣重要的原因,即有人把弱類型等同于“完全沒有隱式類型轉換”了,這種想法并不對。

事實上,強弱類型的概念中包含著部分相對主義的含義,強類型語言中也可能有隱式類型轉換。

比如,Rust 語言為了實現“內存安全”的設計哲學,設計了很強大的類型系統,但是它里面也有隱式類型轉換(自動解引用)。

問題在于:怎么樣的隱式類型轉換是在合理范圍內的?以及,某些表面的隱式類型轉換,是否真的是隱式類型轉換?

回到 Python 的例子,我們可以分析幾種典型的用法。

比如,"test"*3這種字符串“乘法”運算,雖然是兩種類型的操作,但是并不涉及隱式類型轉換轉化。

比如,x=10; x="test"先后給一個變量不同類型的賦值,表面上看 x 的類型變化了,用 type(x) 可以判斷出不同,但是,Python 中的類型是跟值綁定的(右值綁定),并不是跟變量綁定的。

變量 x 準確地說只是變量名,是綁定到實際變量上的一個標簽,它沒有類型。type(x) 判斷出的并不是 x 本身的類型,而是 x 指向的對象的類型,就像內置函數 id(x) 算出的也不是 x 本身的地址,而是實際的對象的地址。

比如,1 + True這種數字與布爾類型的加法運算,也沒有發生隱式類型轉換。因為 Python 中的布爾類型其實是整型的子類,是同一種類型!(如果有疑問,可查閱 PEP-285)

再比如,整數/布爾值與浮點數相加,在 Python 中也不需要作顯式類型轉換。但是,它的實現過程其實是用了數字的__add__()方法,Python 中一切皆對象,數字對象也有自己的方法。(其它語言可不一定)

也就是說,數字間的算術運算操作,其實是一個函數調用的過程,跟其它語言中的算術運算有著本質的區別。

另外,不同的數字類型雖然在計算機存儲層面有很大差異,但在人類眼中,它們是同一種類型(寬泛地分),所以就算發生了隱式類型轉換,在邏輯上也是可以接受的。

最后,還有一個例子,即 Python 在 if/while 之后的真值判斷,我之前分析過它的實現原理,它會把其它類型的對象轉化成布爾類型的值。

但是,它實際上也只是函數調用的結果(__bool__() 和 __len__()),是通過計算而得出的合理結果,并不屬于隱式的強制類型轉換,不在 untrapped errors 的范疇里。

所以,嚴格來說,前面 5 個例子中都沒有發生類型轉換。 浮點數和真值判斷的例子,直觀上看是發生了類型轉換,但它們其實是 Python 的特性,是可控的、符合預期的、并沒有對原有類型造成破壞。

退一步講,若放寬“隱式類型轉換”的含義,認為后兩個例子發生了隱式類型轉換,但是,它們是通過嚴謹的函數調用過程實現的,也不會出現 forbidden errors,所以還是屬于強檢查類型。

5、其它相關的問題前文對概念的含義以及 Python 中的表現,作了細致的分析。接下來,為了邏輯與話題的完整性,我們還需要回答幾個小問題:

(1)能否以“隱式類型轉換”作為強弱類型的分類依據?

明確的分類定義應該以《Type Systems》為準,它有一套針對不同 error 的分類,強弱類型其實是對于 forbidden errors 的處理分類。隱式類型轉換是其明顯的特征,但并不是全部,也不是唯一的判斷依據。

本文為了方便理解,使用這個主要特征來劃分強弱類型,但是要強調,強類型不是沒有隱式類型轉換,而是可能有很少且合理的隱式類型轉換。

(2)假如有其它解釋器令 Python 支持廣泛的隱式類型轉換,那 Python 還是強類型語言么?

語言的標準規范就像是法律,而解釋器是執法者。如果有錯誤的執法解釋,那法律還是那個法律,應該改掉錯誤的執法行為;如果是法律本身有問題(造成了解釋歧義和矛盾,或者該廢棄),那就應該修改法律,保證它的確定性(要么是強類型,要么是弱類型)。

(3)為什么說 Javascript 是弱類型?

因為它的隱式類型轉換非常多、非常復雜、非常過分!比如,Javascript 中123 + null結果為 123,123 + {}結果為字符串“123[object Object]”。

另外,它的雙等號“==”除了有基本的比較操作,還可能發生多重的隱式類型轉換,例如true==['2']判斷出的結果為 false,而true==['1']的結果是 true,還有[]==![]和[undefined]==false的結果都為 true……

(4)C++ 是不是弱類型語言?

前文提到《流暢的Python》中將 C++ 歸為強類型,但實際上它應該被歸為弱類型。C++ 的類型轉換是個非常復雜的話題,@櫻雨樓 小姐姐曾寫過一個系列文章做了系統論述,文章地址:如何攻克 C++ 中復雜的類型轉換?、詳解 C++ 的隱式類型轉換與函數重載!、誰說 C++ 的強制類型轉換很難懂?

6、小結強弱類型概念在網上有比較多的爭議,不僅在 Python 是如此,在 C/C++ 之類的語言更甚。

其實在學術上,這個概念早已有明確的定義,而且事實上也被很多人所接納。

那些反對的聲音大多是因為概念混用,因為他們忽略了另一種對語言進行分類的維度;同時,還有一部分值得注意的原因,即不能認為強類型等于“完全無隱式類型轉換”或“只要沒有xxx隱式類型轉換”。

本文介紹了社區中對 Python 的主流分類,同時對幾類疑似隱式類型轉換的用法進行了分析,論證出它是一種強類型語言。

作者簡介 

豌豆花下貓,生于廣東畢業于武大,現為蘇漂程序員,有一些極客思維,也有一些人文情懷,有一些溫度,還有一些態度。

本文轉載自微信公眾號「 Python貓」,可以通過以下二維碼關注。轉載本文請聯系 Python貓公眾號。

 

 

責任編輯:武曉燕 來源: Python貓
相關推薦

2024-07-09 08:00:48

C#var?關鍵字

2021-11-05 12:40:43

Python類型語言代碼

2018-09-26 14:17:00

編程語言JavaPython

2018-10-09 15:26:19

JavaPython語言

2022-04-10 19:26:07

TypeScript類型語法

2015-04-21 09:20:40

SwfitObject—C

2009-09-28 09:32:01

編譯語言C#

2017-08-09 08:43:02

公有云趨勢聲勢

2011-09-05 10:30:51

重構代碼庫業務模型

2021-09-01 23:29:37

Golang語言gRPC

2024-03-28 13:13:00

Htmx前端開發框架

2014-11-17 10:03:23

OpenStack

2020-07-30 13:22:19

語言Android大數據

2023-03-29 08:24:46

Rune類型開源項目

2023-10-10 16:03:48

數字化信息化

2022-08-18 23:13:25

零信任安全勒索軟件

2021-12-09 20:16:26

無線核心網傳輸

2020-08-31 19:19:27

TCPUDP視屏面試

2014-06-05 14:46:05

設計設計師

2010-02-02 16:22:37

Python動態類型語
點贊
收藏

51CTO技術棧公眾號

国产免费视频传媒| 国产日韩在线精品av| 亚洲一区二区三区综合| 最新日韩三级| 亚洲欧美另类在线| 国产欧美丝袜| 中文字幕 国产| 国产尤物精品| 亚洲女人天堂网| 欧美一级特黄aaa| 免费高潮视频95在线观看网站| 欧美国产精品久久| 国产综合 伊人色| 一级片在线免费观看视频| 极品尤物久久久av免费看| 在线看日韩欧美| 成人做爰www看视频软件 | 裸体女人亚洲精品一区| 好吊色视频一区二区三区| 国产91欧美| 欧美日韩国产色视频| 致1999电视剧免费观看策驰影院| 午夜视频福利在线| 亚洲妇熟xxxx妇色黄| 国产高潮免费视频| av首页在线观看| 欧美1区视频| 国产+成+人+亚洲欧洲自线| 在线日韩第一页| 国产十八熟妇av成人一区| 日韩精品第二页| 91成人国产精品| 视频一区视频二区中文| 久久日韩精品一区二区五区| 国产精品免费一区二区三区都可以 | 亚洲r级在线视频| 亚洲制服中文| 国产私人尤物无码不卡| 99re在线视频这里只有精品| 日本在线播放一区二区三区| 欧美另类女人| 91精品国产欧美日韩| 免费看国产黄色片| 亚洲a∨无码无在线观看| 樱花草涩涩www在线播放| 一区二区久久久久久| 亚洲一区三区视频在线观看| 岛国大片在线观看| 91美女在线视频| 久久精品国产一区二区三区日韩| 亚洲国产www| 国产精品一二三在| 97se在线视频| 午夜精品久久久久久久99| 国产综合一区二区| 成人中文字幕在线观看| 国产一区二区在线播放视频| 精品一区二区三区的国产在线播放| 国产精品免费久久久| 国产免费www| 日韩国产欧美三级| 国产精品视频免费观看www| 亚洲视屏在线观看| 另类小说一区二区三区| 国产日韩欧美中文| 国产成人精品一区二区无码呦| 国产专区综合网| 97人人香蕉| 手机看片福利在线| 91免费观看国产| 亚洲高清视频一区| 国产原创视频在线观看| 亚洲精品视频在线| 大陆av在线播放| 日韩欧美精品一区二区三区| 色播五月激情综合网| 国产九九热视频| 日韩视频在线直播| 亚洲第一免费播放区| 女~淫辱の触手3d动漫| 成人在线视频免费观看| 免费97视频在线精品国自产拍| 久久久精品人妻一区二区三区四 | 日韩一区中文| 日韩精品中文字幕一区 | 国产精品丝袜久久久久久app| 一区二区不卡在线| 狂野欧美性猛交xxxxx视频| 黑人欧美xxxx| 亚洲天堂av免费在线观看| 激情视频一区二区| 精品人妻一区二区三区潮喷在线 | 免费一区二区三区在线观看| 国产精品成人3p一区二区三区| 日韩色视频在线观看| 精品国产aⅴ一区二区三区东京热| 日本一区二区三不卡| 999视频在线观看| 国产一级一级国产| 国产精品综合一区二区| 久久精品丝袜高跟鞋| 色视频在线免费观看| 亚洲高清免费观看| 久热精品在线播放| 日本妇女一区| 大胆欧美人体视频| 秋霞av一区二区三区| 国产成人啪午夜精品网站男同| 欧美黑人3p| 欧美黑人xx片| 欧美欧美午夜aⅴ在线观看| www.四虎在线| 天天影视欧美综合在线观看| 777午夜精品福利在线观看| 国产精品毛片一区二区在线看舒淇 | 干日本少妇首页| 欧美不卡在线观看| 中文字幕久热精品视频在线| 免费毛片一区二区三区| 国产专区综合网| 日韩在线三区| 亚洲天堂资源| 亚洲成人黄色网址| 朝桐光av在线| 美女精品一区二区| 日本不卡高清视频一区| 牛牛精品一区二区| 精品福利一区二区三区| 国产三级国产精品国产国在线观看| 久久久精品网| 女同一区二区| 电影一区二区三区| 亚洲精品久久久久国产| 国产1区2区3区4区| 激情综合色播五月| 伊人婷婷久久| 色8久久久久| 色偷偷888欧美精品久久久| 天天干天天操天天操| 久久综合九色综合久久久精品综合 | 在线播放日韩| 国产精品福利视频| 欧美aaa免费| 精品免费一区二区三区| 欧美黑人一级片| 国产精品18久久久久久久久久久久| 一区二区不卡视频| 国产麻豆精品| 欧美成人免费一级人片100| 国产视频在线免费观看| 亚洲欧美经典视频| 久久aaaa片一区二区| 一区二区中文字| 91免费观看| 成人超碰在线| 亚洲精品国产电影| 国产性猛交╳xxx乱大交| 久久女同性恋中文字幕| 亚洲精品中文字幕无码蜜桃| 国产成人一区| 国产精品香蕉国产| 好操啊在线观看免费视频| 欧美一区二区视频免费观看| 欧美又粗又大又长| 成人精品一区二区三区四区| 亚洲精品无码国产| 日韩极品少妇| 国产精品久久久久久久久久三级| 色哟哟免费在线观看| 9191成人精品久久| 国产真实乱偷精品视频| kk眼镜猥琐国模调教系列一区二区 | 91精品国产一区二区三区动漫| 99热国产在线| 亚洲国产日韩精品在线| 午夜一级黄色片| 亚洲天堂福利av| 黄色国产在线视频| 首页亚洲欧美制服丝腿| 国产系列第一页| 动漫视频在线一区| 国产成人精品一区二区在线| sm国产在线调教视频| 亚洲国产私拍精品国模在线观看| 国产免费一区二区三区四区五区 | 亚洲精品视频中文字幕| 中日韩在线观看视频| 亚洲女同一区二区| 成人免费av片| 国产综合一区二区| 精品99在线视频| 亚洲电影影音先锋| 女女同性女同一区二区三区91| 国产欧美在线观看免费| 久久久久成人精品| 成人动漫在线播放| 精品成人a区在线观看| 又骚又黄的视频| 亚洲成av人片在线| 日本女人性生活视频| a级高清视频欧美日韩| 亚洲欧美在线精品| 激情婷婷久久| 国产又粗又爽又黄的视频| 卡通动漫精品一区二区三区| 国产视频999| 亚洲精品福利电影| 久久99精品国产99久久6尤物| 六十路在线观看| 精品国产一区二区三区四区四 | 久久免费视频精品| 亚洲国产精品精华液2区45| 性感美女一区二区三区| 久久99九九99精品| 久久久久久久久久久久久国产精品 | 99re这里只有精品首页| 四川一级毛毛片| 麻豆免费看一区二区三区| 精品这里只有精品| 欧美日韩少妇| 日本黄色播放器| 日韩精品1区| 欧美久久久久久| 精品网站aaa| 99视频免费观看| 亚州精品国产| 国产精品最新在线观看| 欧美成人精品一区二区男人小说| 高清一区二区三区四区五区| 超碰人人在线| 精品国模在线视频| 粉嫩av一区| 亚洲人av在线影院| 日韩三级电影网| 亚洲国产欧美在线成人app| 黄色一级a毛片| 日韩欧美的一区二区| 国产熟女一区二区三区四区| 欧美色手机在线观看| 特级毛片www| 精品免费在线视频| 久久午夜免费视频| 亚洲va国产va欧美va观看| 久热这里只有精品在线| 一区二区欧美视频| 青娱乐国产盛宴| 亚洲一区自拍偷拍| 久久久久久久久久久久久久久久久| 亚洲精品你懂的| 天美传媒免费在线观看| 中文字幕视频一区| 永久免费看片直接| 亚洲激情图片小说视频| 深夜福利影院在线观看| 亚洲在线视频一区| 久热这里只有精品在线| 精品久久久久久久久久ntr影视| www.国产成人| 色综合色狠狠天天综合色| 无码人妻熟妇av又粗又大| 欧美性受极品xxxx喷水| 在线亚洲欧美日韩| 欧美一区二区视频观看视频| 精品国自产拍在线观看| 亚洲第一国产精品| 日韩欧美亚洲系列| 国产一区二区日韩| 超碰在线网址| 久久久久久12| 老司机2019福利精品视频导航 | 日韩精品成人在线观看| 俄罗斯精品一区二区三区| 日韩aaa久久蜜桃av| 色一情一区二区三区四区| 久久久久久久久99精品大| 少妇大叫太大太粗太爽了a片小说| 在线日韩中文| 三年中国国语在线播放免费| 精品无人区卡一卡二卡三乱码免费卡| 久久久久久久久久久影视| www.一区二区| 又嫩又硬又黄又爽的视频| 亚洲资源中文字幕| 一级片在线免费播放| 日韩一区二区三区精品视频| 无码国产精品高潮久久99| 色视频www在线播放国产成人| 国内老司机av在线| 国产精品久久久久久久午夜| 天堂av一区| 日本精品视频一区| 欧美69wwwcom| 免费黄色一级网站| 国产成人无遮挡在线视频| 精品人伦一区二区| 亚洲一区二区三区四区五区中文| 日韩综合在线观看| 欧美α欧美αv大片| 国产片在线观看| 欧美国产在线电影| 国产精品美女午夜爽爽| 激情视频一区二区| 欧美影院一区| 网站一区二区三区| 成人高清免费观看| a在线视频播放观看免费观看| 色一情一伦一子一伦一区| 亚洲av无码乱码国产精品久久| 亚洲人成网站999久久久综合| 亚洲制服国产| 国产精品无码专区在线观看| 天天躁日日躁成人字幕aⅴ| 国产免费xxx| 美女视频一区在线观看| 亚洲av无码成人精品国产| 亚洲国产一区二区三区青草影视| 一级黄色大片免费| 亚洲三级 欧美三级| av女在线播放| 99电影网电视剧在线观看| 日韩精品欧美| 久久午夜夜伦鲁鲁一区二区| av电影天堂一区二区在线| 久操免费在线视频| 91精品久久久久久久99蜜桃| 国产免费视频在线| 日本最新高清不卡中文字幕| 超碰97久久国产精品牛牛| 久久久99精品视频| 极品尤物av久久免费看| 国产三级短视频| 色猫猫国产区一区二在线视频| 欧美一级性视频| 久久久久亚洲精品成人网小说| 久久gogo国模啪啪裸体| 国产精品亚洲天堂| 精一区二区三区| 懂色av蜜臀av粉嫩av永久| 欧美男女性生活在线直播观看| av大全在线免费看| 国产精品美女视频网站| 成人在线免费观看91| 手机版av在线| 中文字幕亚洲电影| 国产三级漂亮女教师| 久久影院免费观看| 亚洲图色一区二区三区| av日韩在线看| 9久草视频在线视频精品| 国产大片aaa| 日韩精品视频中文在线观看| 波多野一区二区| 欧美高清视频一区| 三级亚洲高清视频| 天堂网av2018| 91精品在线免费| 免费不卡av| 精品视频一区二区| 视频在线观看国产精品| 黄色片网站免费| 欧美精品久久一区| 污污网站在线观看| 好吊色欧美一区二区三区视频| 99国产精品视频免费观看一公开| av网站免费在线播放| 欧美在线短视频| 国产二区三区在线| 国产精品夜夜夜一区二区三区尤| 国产一区二区三区的电影| 波多野在线播放| 91麻豆精品国产91久久久使用方法| 亚洲奶水xxxx哺乳期| 麻豆精品传媒视频| 久久精品国产精品青草| 久久国产免费观看| 亚洲午夜未满十八勿入免费观看全集| 韩国理伦片久久电影网| 成人av在线播放观看| 久久免费看少妇高潮| 91片黄在线观看喷潮| 国外成人性视频| 欧美日韩激情在线一区二区三区| 日本精品一区在线| 福利二区91精品bt7086| 日本在线免费播放| 黑人巨大精品欧美一区二区小视频| 日韩激情中文字幕| 久久久久久天堂| 国产亚洲人成a一在线v站| 日韩精品三级| 99蜜桃臀久久久欧美精品网站| 亚洲色图20p| 欧美成人片在线| 69堂成人精品视频免费| 久久激情中文| 久久久99精品| www.久久色.com| 妖精视频一区二区三区| 亚洲熟女乱综合一区二区| 日本福利一区二区|