99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

Python實(shí)數(shù)模擬器:從數(shù)學(xué)概念到可視化教學(xué)工具的實(shí)現(xiàn)

Python實(shí)數(shù)模擬器:從數(shù)學(xué)概念到可視化教學(xué)工具的實(shí)現(xiàn) 1. 項(xiàng)目概述為什么我們需要一個(gè)“實(shí)數(shù)模擬器”在數(shù)學(xué)教學(xué)或者編程初學(xué)者的世界里“實(shí)數(shù)”這個(gè)概念既基礎(chǔ)又抽象。我們經(jīng)常在課本上看到它知道它包含了有理數(shù)和無理數(shù)知道它和數(shù)軸上的點(diǎn)一一對應(yīng)。但當(dāng)你真正想用代碼去“觸摸”它、去“操作”它時(shí)往往會(huì)發(fā)現(xiàn)一個(gè)尷尬的現(xiàn)實(shí)在標(biāo)準(zhǔn)的計(jì)算機(jī)編程中我們幾乎無法直接處理一個(gè)“完整”的實(shí)數(shù)。計(jì)算機(jī)內(nèi)存是有限的它擅長處理的是離散的、有限精度的近似值比如浮點(diǎn)數(shù)3.141592653589793但這只是圓周率π的一個(gè)近似而非π本身。這種理論與實(shí)踐的割裂常常讓學(xué)習(xí)者感到困惑。這個(gè)名為“【安安教具】-【數(shù)學(xué)】-【實(shí)數(shù)】模擬器”的Python小項(xiàng)目正是為了彌合這道鴻溝而生。它不是一個(gè)追求極致計(jì)算性能的科學(xué)計(jì)算庫而是一個(gè)教學(xué)演示工具。它的核心目標(biāo)是用可視化和交互的方式具象化地展示實(shí)數(shù)的核心性質(zhì)、運(yùn)算規(guī)則以及它如何在數(shù)軸上“安家落戶”。通過親手構(gòu)建這個(gè)模擬器你不僅能鞏固對實(shí)數(shù)系的理解更能深刻體會(huì)到計(jì)算機(jī)表示數(shù)學(xué)概念的局限性及其應(yīng)對方法這是一次從純數(shù)學(xué)思維到計(jì)算思維的有趣跨越。它適合誰呢如果你是數(shù)學(xué)愛好者想看看抽象的數(shù)學(xué)概念如何變成屏幕上可互動(dòng)的對象如果你是Python初學(xué)者在學(xué)完基礎(chǔ)語法后想找一個(gè)有深度、能串聯(lián)多個(gè)知識(shí)點(diǎn)的綜合小項(xiàng)目練手或者你是一位教育工作者正在尋找一種新穎的方式來向?qū)W生解釋實(shí)數(shù)——那么這個(gè)項(xiàng)目都將為你打開一扇新的大門。接下來我將帶你從設(shè)計(jì)思路到代碼實(shí)現(xiàn)完整地走一遍構(gòu)建實(shí)數(shù)模擬器的旅程其中會(huì)穿插大量我在實(shí)際編碼和教學(xué)應(yīng)用中踩過的坑和總結(jié)的技巧。2. 整體設(shè)計(jì)與核心思路拆解在動(dòng)手寫代碼之前我們必須想清楚一個(gè)模擬實(shí)數(shù)的程序到底要模擬什么又不能模擬什么直接去模擬一個(gè)“完全體”的實(shí)數(shù)比如一個(gè)無限不循環(huán)小數(shù)是徒勞的。因此我們的設(shè)計(jì)必須有所側(cè)重進(jìn)行合理的抽象和簡化。2.1 設(shè)計(jì)目標(biāo)與功能邊界劃定我們的模擬器將聚焦于實(shí)數(shù)的以下幾個(gè)可被計(jì)算和可視化的核心方面數(shù)的表示與分類能夠表示整數(shù)、有限小數(shù)、分?jǐn)?shù)有理數(shù)以及幾個(gè)經(jīng)典的無理數(shù)如√2, π, e的近似值。我們需要一個(gè)統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)來封裝一個(gè)“數(shù)”并標(biāo)記其類型。數(shù)軸可視化這是項(xiàng)目的靈魂。能夠在圖形界面上繪制一條數(shù)軸并將我們創(chuàng)建的“實(shí)數(shù)”對象作為點(diǎn)精準(zhǔn)地標(biāo)注在數(shù)軸上。這能直觀展示數(shù)的大小、數(shù)和數(shù)之間的相對位置關(guān)系。基本運(yùn)算與驗(yàn)證實(shí)現(xiàn)兩個(gè)實(shí)數(shù)的加、減、乘、除等基本運(yùn)算并將運(yùn)算結(jié)果同樣展示在數(shù)軸上。通過對比理論結(jié)果和計(jì)算機(jī)運(yùn)算結(jié)果可以直觀看到浮點(diǎn)數(shù)運(yùn)算可能帶來的微小誤差。稠密性與逼近演示這是實(shí)數(shù)的一個(gè)重要性質(zhì)——任意兩個(gè)不相等的實(shí)數(shù)之間都存在另一個(gè)實(shí)數(shù)。我們可以通過程序在給定的兩個(gè)數(shù)之間比如1和2不斷生成新的數(shù)如取中點(diǎn)來動(dòng)畫演示這種“稠密”的過程。功能邊界我們明確不追求模擬實(shí)數(shù)的“完備性”即極限運(yùn)算或進(jìn)行超高精度的符號(hào)計(jì)算。我們將使用Python的float雙精度浮點(diǎn)數(shù)作為主要計(jì)算載體并用decimal.Decimal進(jìn)行高精度演示對比。同時(shí)我們將使用matplotlib或tkinter這類庫來創(chuàng)建圖形界面因?yàn)榭梢暬墙虒W(xué)效果的關(guān)鍵。2.2 技術(shù)棧選型與理由核心語言Python。理由無需多言語法簡潔庫生態(tài)豐富特別適合快速構(gòu)建原型和教學(xué)演示。數(shù)值計(jì)算與表示float作為默認(rèn)的、通用的實(shí)數(shù)近似表示。幾乎所有計(jì)算都先基于它進(jìn)行效率高。fractions.Fraction用于精確表示有理數(shù)分?jǐn)?shù)。當(dāng)我們輸入“1/3”時(shí)用Fraction可以精確存儲(chǔ)為(1, 3)避免用float表示時(shí)的循環(huán)小數(shù)近似誤差。這是體現(xiàn)“模擬”思想的關(guān)鍵。decimal.Decimal用于需要高精度或固定精度的十進(jìn)制計(jì)算場景比如展示金融計(jì)算或?qū)Ρ雀↑c(diǎn)數(shù)誤差時(shí)。我們將用它作為“裁判”來審視float計(jì)算的誤差??梢暬瘞靘atplotlib。雖然tkinter也能畫圖但matplotlib在繪制數(shù)學(xué)圖形、坐標(biāo)系、散點(diǎn)圖方面功能更強(qiáng)大、更專業(yè)。它的pyplot接口非常簡單幾行代碼就能畫出漂亮的數(shù)軸和點(diǎn)。對于這個(gè)項(xiàng)目它是更優(yōu)選擇。交互性可選進(jìn)階matplotlib的widgets模塊如滑塊Slider、按鈕Button可以為我們提供基本的交互功能例如滑動(dòng)滑塊改變數(shù)值、點(diǎn)擊按鈕執(zhí)行運(yùn)算。這能極大提升演示的生動(dòng)性。注意選擇matplotlib而非游戲引擎如Pygame或Web框架是基于項(xiàng)目“數(shù)學(xué)教學(xué)演示”的定位。它輕量、直接產(chǎn)出的是靜態(tài)或簡單交互的圖表更符合學(xué)術(shù)場景的審美和需求。2.3 項(xiàng)目架構(gòu)藍(lán)圖在腦海中我們可以將項(xiàng)目分成幾個(gè)層次清晰的模塊核心數(shù)據(jù)模型 (RealNumber類)這是項(xiàng)目的基石。它負(fù)責(zé)封裝一個(gè)“數(shù)”。這個(gè)類內(nèi)部可能需要存儲(chǔ)多種表示形式如float值、Fraction對象、以及一個(gè)描述類型的字符串標(biāo)簽并提供將用戶輸入字符串如“5“ “-3.14“ “2/3“ “sqrt(2)“解析并初始化為對象的方法。運(yùn)算引擎為RealNumber類定義加、減、乘、除等魔術(shù)方法__add__,__sub__等使得我們可以用a b這樣自然的語法進(jìn)行運(yùn)算。運(yùn)算內(nèi)部需要處理不同類型數(shù)分?jǐn)?shù)、浮點(diǎn)數(shù)的混合計(jì)算并決定輸出結(jié)果的表示形式??梢暬刂破?(NumberLinePlotter類)這個(gè)類負(fù)責(zé)管理圖形窗口、繪制數(shù)軸、以及將RealNumber對象列表繪制到數(shù)軸上。它需要處理坐標(biāo)變換將數(shù)學(xué)值映射到像素位置、美觀的標(biāo)注在點(diǎn)旁邊顯示數(shù)值或標(biāo)簽以及交互事件的綁定。演示腳本與用例最后編寫一個(gè)主程序?qū)⒁陨夏K組合起來。創(chuàng)建一系列有代表性的實(shí)數(shù)對象如0, 1, -1, 0.5, 1/3, √2, π進(jìn)行運(yùn)算并調(diào)用繪圖器展示結(jié)果。還可以編寫專門的函數(shù)來演示“稠密性”比如遞歸地取中點(diǎn)并動(dòng)態(tài)添加到圖中。有了這個(gè)藍(lán)圖我們就可以開始動(dòng)手搭建了。下面我將深入每個(gè)模塊的細(xì)節(jié)。3. 核心模塊解析與實(shí)現(xiàn)細(xì)節(jié)3.1 構(gòu)建RealNumber類如何讓計(jì)算機(jī)“理解”一個(gè)數(shù)這是最核心的部分。我們的目標(biāo)是創(chuàng)建一個(gè)類它能智能地處理用戶輸入并以最合適的方式在內(nèi)部存儲(chǔ)這個(gè)數(shù)。from fractions import Fraction import math import decimal class RealNumber: 表示一個(gè)實(shí)數(shù)支持多種輸入格式和精確表示。 def __init__(self, value): 初始化一個(gè)實(shí)數(shù)對象。 參數(shù) value: 可以是整數(shù)、浮點(diǎn)數(shù)、字符串如 3/4, sqrt(2), pi或 fractions.Fraction 對象。 self.original_input value self._fraction None # 精確分?jǐn)?shù)表示如果可能 self._float None # 浮點(diǎn)數(shù)近似值 self.label # 用于顯示的標(biāo)簽如 π, √2 self.type unknown # 類型integer, rational, irrational_approx, float self._parse(value) def _parse(self, value): 解析輸入值確定其類型和內(nèi)部表示。 # 情況1已經(jīng)是 Fraction 或 int if isinstance(value, Fraction): self._fraction value self._float float(value) self.type rational self.label str(value) elif isinstance(value, int): self._fraction Fraction(value, 1) self._float float(value) self.type integer self.label str(value) # 情況2是 float elif isinstance(value, float): self._float value # 嘗試判斷這個(gè)浮點(diǎn)數(shù)是否恰好對應(yīng)一個(gè)簡單的分?jǐn)?shù)如0.5 - 1/2 # 這是一個(gè)近似判斷僅用于教學(xué)展示 try: # 使用 Fraction.from_float 并限制分母大小避免得到極其復(fù)雜的分?jǐn)?shù) frac Fraction(value).limit_denominator(1000) if abs(float(frac) - value) 1e-10: # 如果分?jǐn)?shù)轉(zhuǎn)換后非常接近 self._fraction frac self.type rational self.label str(frac) else: self.type float self.label f{value:.6g} # 用精簡格式顯示 except: self.type float self.label f{value:.6g} # 情況3是字符串 elif isinstance(value, str): value value.strip().lower() # 處理特殊常數(shù) if value pi or value π: self._float math.pi self.type irrational_approx self.label π elif value e: self._float math.e self.type irrational_approx self.label e elif value.startswith(sqrt(): try: num float(value[5:-1]) # 提取括號(hào)內(nèi)的數(shù)字 self._float math.sqrt(num) self.type irrational_approx self.label f√{num} except: raise ValueError(f無法解析平方根表達(dá)式: {value}) # 處理分?jǐn)?shù)形式如 2/3 elif / in value: try: num, denom map(int, value.split(/)) self._fraction Fraction(num, denom) self._float float(self._fraction) self.type rational self.label str(self._fraction) except: raise ValueError(f無法解析分?jǐn)?shù): {value}) # 處理普通數(shù)字字符串 else: try: # 先嘗試轉(zhuǎn)為整數(shù) int_val int(value) self.__init__(int_val) # 遞歸調(diào)用使用整數(shù)分支 except ValueError: try: # 再嘗試轉(zhuǎn)為浮點(diǎn)數(shù) float_val float(value) self.__init__(float_val) # 遞歸調(diào)用使用浮點(diǎn)數(shù)分支 except ValueError: raise ValueError(f無法識(shí)別的數(shù)字格式: {value}) else: raise TypeError(f不支持的類型: {type(value)}) property def float_value(self): 獲取該實(shí)數(shù)的浮點(diǎn)數(shù)近似值主要用于計(jì)算和繪圖。 if self._float is None and self._fraction is not None: self._float float(self._fraction) return self._float property def fraction_value(self): 獲取該實(shí)數(shù)的精確分?jǐn)?shù)表示如果存在否則返回None。 return self._fraction def __repr__(self): return fRealNumber({self.label}, type{self.type}, value≈{self.float_value:.10f}) def __str__(self): return self.label關(guān)鍵點(diǎn)解析與避坑指南多重內(nèi)部表示我們同時(shí)維護(hù)了_fraction和_float。對于分?jǐn)?shù)1/3_fraction存儲(chǔ)精確的Fraction(1,3)而_float存儲(chǔ)近似的0.333333...。這種設(shè)計(jì)讓我們既能進(jìn)行精確的符號(hào)推理在可能的情況下又能無縫接入需要浮點(diǎn)數(shù)的計(jì)算和繪圖流程。limit_denominator的妙用在將浮點(diǎn)數(shù)轉(zhuǎn)為分?jǐn)?shù)時(shí)Fraction(value)可能會(huì)產(chǎn)生一個(gè)分母巨大的分?jǐn)?shù)因?yàn)楦↑c(diǎn)數(shù)本身是二進(jìn)制的近似。.limit_denominator(1000)將分母限制在1000以內(nèi)找到最接近的、分母較小的分?jǐn)?shù)。這對于展示“這個(gè)小數(shù)可能是一個(gè)簡單分?jǐn)?shù)”非常有用但務(wù)必向使用者說明這只是一個(gè)教學(xué)意義上的近似匹配并非嚴(yán)格的數(shù)學(xué)等價(jià)。遞歸初始化在字符串解析的最后嘗試int()和float()轉(zhuǎn)換失敗后我們通過self.__init__(new_value)遞歸調(diào)用了初始化方法。這利用了已經(jīng)寫好的針對int和float的處理邏輯避免了代碼重復(fù)是一種清晰的寫法。property裝飾器我們將float_value和fraction_value定義為屬性。這意味著你可以像訪問屬性一樣使用num.float_value但實(shí)際上它背后執(zhí)行了一個(gè)方法。這樣做的好處是惰性求值只有在真正需要float_value時(shí)才從_fraction轉(zhuǎn)換計(jì)算如果之前沒算過的話提高了效率。3.2 實(shí)現(xiàn)運(yùn)算功能讓實(shí)數(shù)對象“活”起來有了RealNumber對象我們希望能像操作普通數(shù)字一樣對它們進(jìn)行運(yùn)算。這需要實(shí)現(xiàn)Python的魔術(shù)方法。class RealNumber: # ... 接上面的 __init__ 等代碼 ... def _get_operand_value(self, other): 統(tǒng)一獲取操作數(shù)的值用于計(jì)算。優(yōu)先使用分?jǐn)?shù)進(jìn)行精確計(jì)算。 if isinstance(other, RealNumber): # 如果兩個(gè)都是RealNumber且都有精確分?jǐn)?shù)則嘗試用分?jǐn)?shù)計(jì)算 if self.fraction_value is not None and other.fraction_value is not None: return (fraction, self.fraction_value, other.fraction_value) else: # 否則退化為浮點(diǎn)數(shù)計(jì)算 return (float, self.float_value, other.float_value) elif isinstance(other, (int, float, Fraction)): # 如果other是Python內(nèi)置數(shù)字類型也統(tǒng)一處理 other_real RealNumber(other) # 包裝成RealNumber return self._get_operand_value(other_real) else: raise TypeError(f不支持與 {type(other)} 類型進(jìn)行運(yùn)算) def __add__(self, other): op_type, val1, val2 self._get_operand_value(other) if op_type fraction: result_frac val1 val2 # 檢查結(jié)果是否仍為較簡單的分?jǐn)?shù)分母不太大 if result_frac.denominator 10000: return RealNumber(result_frac) # 其他情況返回浮點(diǎn)數(shù)結(jié)果的RealNumber result_float val1 val2 if op_type float else float(val1) float(val2) return RealNumber(result_float) def __sub__(self, other): op_type, val1, val2 self._get_operand_value(other) if op_type fraction: result_frac val1 - val2 if result_frac.denominator 10000: return RealNumber(result_frac) result_float val1 - val2 if op_type float else float(val1) - float(val2) return RealNumber(result_float) def __mul__(self, other): op_type, val1, val2 self._get_operand_value(other) if op_type fraction: result_frac val1 * val2 if result_frac.denominator 10000: return RealNumber(result_frac) result_float val1 * val2 if op_type float else float(val1) * float(val2) return RealNumber(result_float) def __truediv__(self, other): op_type, val1, val2 self._get_operand_value(other) if op_type fraction: # 分?jǐn)?shù)除法乘以倒數(shù) result_frac val1 / val2 # Fraction 支持除法 if result_frac.denominator 10000: return RealNumber(result_frac) result_float val1 / val2 if op_type float else float(val1) / float(val2) return RealNumber(result_float) # 實(shí)現(xiàn)反向運(yùn)算使得 5 RealNumber(2) 也能工作 def __radd__(self, other): return self other def __rsub__(self, other): return RealNumber(other) - self def __rmul__(self, other): return self * other def __rtruediv__(self, other): return RealNumber(other) / self # 比較運(yùn)算 def __eq__(self, other): # 注意實(shí)數(shù)的相等判斷是復(fù)雜的這里我們基于浮點(diǎn)數(shù)近似判斷并設(shè)置一個(gè)很小的容差 if not isinstance(other, RealNumber): other RealNumber(other) return abs(self.float_value - other.float_value) 1e-12 def __lt__(self, other): if not isinstance(other, RealNumber): other RealNumber(other) return self.float_value other.float_value # 同理可以定義 __le__, __gt__, __ge__運(yùn)算邏輯的精髓與取舍“精確優(yōu)先浮點(diǎn)兜底”策略在_get_operand_value方法中我們首先檢查兩個(gè)操作數(shù)是否都有精確的分?jǐn)?shù)表示。如果有我們就用Fraction進(jìn)行運(yùn)算這能保證像RealNumber(‘1/3‘) * 3得到精確的1而不是0.999999...。如果其中一個(gè)是無理數(shù)近似或普通浮點(diǎn)數(shù)則降級(jí)到浮點(diǎn)數(shù)運(yùn)算。這模擬了數(shù)學(xué)中“有理數(shù)運(yùn)算是封閉的但涉及無理數(shù)則需要近似”的思想。結(jié)果化簡判斷即使使用分?jǐn)?shù)運(yùn)算結(jié)果的分母也可能很大如1/97 1/89。我們設(shè)置了一個(gè)分母閾值如10000如果結(jié)果分?jǐn)?shù)“足夠簡單”我們就用分?jǐn)?shù)形式保存結(jié)果否則寧愿將其存儲(chǔ)為浮點(diǎn)數(shù)避免產(chǎn)生一個(gè)難以理解的復(fù)雜分?jǐn)?shù)對象。這個(gè)閾值可以根據(jù)教學(xué)需要調(diào)整。容差比較實(shí)數(shù)的相等判斷在計(jì)算機(jī)中是著名的難題。對于浮點(diǎn)數(shù)直接使用會(huì)因精度問題導(dǎo)致錯(cuò)誤。我們定義了__eq__采用判斷兩數(shù)差值的絕對值是否小于一個(gè)極小值如1e-12的方法。必須向使用者強(qiáng)調(diào)這是計(jì)算機(jī)處理實(shí)數(shù)相等性的通用方法但它是一個(gè)近似判斷并非嚴(yán)格的數(shù)學(xué)相等。3.3 創(chuàng)建可視化引擎繪制動(dòng)態(tài)數(shù)軸現(xiàn)在讓我們把數(shù)字畫出來。我們將使用matplotlib創(chuàng)建一個(gè)可交互的數(shù)軸。import matplotlib.pyplot as plt from matplotlib.widgets import Slider, Button import numpy as np class NumberLinePlotter: 數(shù)軸繪圖器負(fù)責(zé)創(chuàng)建圖形界面并繪制實(shí)數(shù)點(diǎn)。 def __init__(self, x_range(-5, 5), figsize(10, 2)): 初始化繪圖器。 x_range: 數(shù)軸顯示的范圍 (left, right) figsize: 圖形窗口大小 (width, height_inches) self.x_range x_range self.fig, self.ax plt.subplots(figsizefigsize) self.fig.subplots_adjust(bottom0.25) # 為底部控件留出空間 # 存儲(chǔ)當(dāng)前圖形上的所有繪圖元素點(diǎn)、線、文本的引用便于更新 self.plotted_points [] # 存儲(chǔ) (point_plot, label_text) 元組 self.number_objects [] # 存儲(chǔ)關(guān)聯(lián)的 RealNumber 對象 self._setup_axes() self._setup_widgets() def _setup_axes(self): 設(shè)置數(shù)軸樣式。 self.ax.clear() left, right self.x_range # 繪制數(shù)軸線 self.ax.hlines(0, left, right, colorsblack, linewidth2) # 設(shè)置坐標(biāo)軸范圍 self.ax.set_xlim(left, right) self.ax.set_ylim(-0.5, 0.5) # y軸范圍很小因?yàn)槲覀冎划嬕粭l線 # 隱藏y軸 self.ax.get_yaxis().set_visible(False) # 設(shè)置x軸刻度 tick_step max(1, (right - left) // 10) # 自適應(yīng)刻度間隔 ticks np.arange(np.ceil(left/tick_step)*tick_step, right, tick_step) self.ax.set_xticks(ticks) self.ax.grid(True, axisx, linestyle--, alpha0.5) self.ax.set_title(實(shí)數(shù)模擬器 - 數(shù)軸, fontsize14) def _setup_widgets(self): 設(shè)置交互控件可選進(jìn)階功能。 # 創(chuàng)建一個(gè)滑塊用于動(dòng)態(tài)調(diào)整數(shù)軸顯示范圍 ax_slider plt.axes([0.2, 0.1, 0.6, 0.03]) # [left, bottom, width, height] self.range_slider Slider(ax_slider, 縮放, 1, 20, valinit5, valstep1) # 滑塊回調(diào)函數(shù) def update_range(val): scale self.range_slider.val new_range (-scale, scale) self.x_range new_range self._setup_axes() # 重繪所有已存在的點(diǎn) for (point_plot, label_text), num_obj in zip(self.plotted_points, self.number_objects): x num_obj.float_value if new_range[0] x new_range[1]: point_plot.set_data([x], [0]) label_text.set_position((x, 0.05)) point_plot.set_visible(True) label_text.set_visible(True) else: # 如果點(diǎn)不在當(dāng)前視野內(nèi)隱藏它 point_plot.set_visible(False) label_text.set_visible(False) self.fig.canvas.draw_idle() self.range_slider.on_changed(update_range) # 添加一個(gè)重置按鈕 ax_reset plt.axes([0.8, 0.025, 0.1, 0.04]) self.reset_button Button(ax_reset, 重置) def reset(event): self.range_slider.set_val(5) self.clear_points() self.reset_button.on_clicked(reset) def plot_number(self, real_number, colorred, markero, label_offset0.05): 在數(shù)軸上繪制一個(gè)實(shí)數(shù)點(diǎn)。 real_number: RealNumber 對象 color: 點(diǎn)的顏色 marker: 點(diǎn)標(biāo)記形狀 label_offset: 標(biāo)簽在點(diǎn)上方的偏移量 x real_number.float_value y 0 # 繪制點(diǎn) point_plot, self.ax.plot(x, y, markermarker, markersize10, colorcolor, linestyle) # 添加標(biāo)簽 label_text self.ax.text(x, y label_offset, str(real_number), colorcolor, hacenter, vabottom, fontsize11) self.plotted_points.append((point_plot, label_text)) self.number_objects.append(real_number) # 如果點(diǎn)不在當(dāng)前視野內(nèi)自動(dòng)調(diào)整視野可選 # if not (self.x_range[0] x self.x_range[1]): # self.x_range (min(self.x_range[0], x-1), max(self.x_range[1], x1)) # self._setup_axes() self.fig.canvas.draw_idle() # 更新畫布 return point_plot, label_text def plot_numbers(self, numbers, colorsNone, **kwargs): 批量繪制多個(gè)實(shí)數(shù)點(diǎn)。 if colors is None: colors plt.cm.tab10(np.linspace(0, 1, len(numbers))) # 使用顏色映射 for num, color in zip(numbers, colors): self.plot_number(num, colorcolor, **kwargs) def clear_points(self): 清除數(shù)軸上所有的點(diǎn)和標(biāo)簽。 for point_plot, label_text in self.plotted_points: point_plot.remove() label_text.remove() self.plotted_points.clear() self.number_objects.clear() self._setup_axes() # 重置坐標(biāo)軸 self.fig.canvas.draw_idle() def show(self): 顯示圖形窗口。 plt.show()可視化技巧與細(xì)節(jié)把控坐標(biāo)軸美化_setup_axes方法做了幾件重要的事隱藏Y軸因?yàn)槲覀冎恍枰綌?shù)軸、設(shè)置合適的網(wǎng)格線、根據(jù)視圖范圍動(dòng)態(tài)計(jì)算刻度間隔。這保證了數(shù)軸在不同縮放級(jí)別下都清晰可讀。對象管理plotted_points和number_objects兩個(gè)列表至關(guān)重要。它們保存了繪圖對象點(diǎn)、文本和背后數(shù)據(jù)對象RealNumber的關(guān)聯(lián)。當(dāng)我們需要更新視圖如縮放后重新定位點(diǎn)或清除圖形時(shí)可以通過這些引用直接操作圖形元素這是實(shí)現(xiàn)動(dòng)態(tài)交互的基礎(chǔ)。交互控件的集成滑塊(Slider)和按鈕(Button)的添加是可選但強(qiáng)烈推薦的進(jìn)階功能。它讓靜態(tài)的演示變成了動(dòng)態(tài)的探索工具。注意控件坐標(biāo)[left, bottom, width, height]是相對于整個(gè)圖形的比例范圍0~1需要反復(fù)調(diào)整才能擺到合適位置。性能考量在update_range回調(diào)函數(shù)中我們遍歷所有已繪制的點(diǎn)檢查其是否在新視野內(nèi)并設(shè)置可見性(set_visible)而不是刪除再重建。這對于點(diǎn)數(shù)量較多時(shí)的性能更友好。draw_idle()方法確保在所有更新完成后才重繪畫布避免頻繁刷新導(dǎo)致的卡頓。4. 項(xiàng)目整合與高級(jí)演示案例現(xiàn)在我們把所有模塊組合起來并編寫幾個(gè)有趣的演示案例。4.1 基礎(chǔ)演示創(chuàng)建數(shù)與可視化def basic_demo(): 基礎(chǔ)演示創(chuàng)建各種類型的實(shí)數(shù)并繪制在數(shù)軸上。 plotter NumberLinePlotter(x_range(-2, 5)) # 創(chuàng)建不同類型的實(shí)數(shù) numbers [ RealNumber(0), # 整數(shù) RealNumber(1), RealNumber(-1), RealNumber(0.5), # 有限小數(shù)會(huì)被識(shí)別為分?jǐn)?shù)1/2 RealNumber(0.33333), # 小數(shù)近似為分?jǐn)?shù) 33333/100000 RealNumber(2/3), # 分?jǐn)?shù) RealNumber(pi), # 無理數(shù) π RealNumber(sqrt(2)), # 無理數(shù) √2 RealNumber(e), # 無理數(shù) e ] print(創(chuàng)建的數(shù)對象) for num in numbers: print(f {num} - {repr(num)}) # 批量繪制并分配不同顏色 plotter.plot_numbers(numbers) # 進(jìn)行一些運(yùn)算并繪制結(jié)果 a RealNumber(1/3) b RealNumber(0.5) c a b d RealNumber(sqrt(2)) * RealNumber(2) print(f\n運(yùn)算演示) print(f {a}  {c} (類型: {c.type})) print(f √2 * 2 bextvpl (類型: {d.type})) # 用特殊標(biāo)記繪制運(yùn)算結(jié)果 plotter.plot_number(c, colorgreen, markers, label_offset0.1) # 綠色方塊 plotter.plot_number(d, colorpurple, marker^, label_offset0.1) # 紫色三角 plotter.show() if __name__ __main__: basic_demo()運(yùn)行這個(gè)腳本你會(huì)看到一個(gè)從-2到5的數(shù)軸上面標(biāo)記了0, 1, -1, 0.5, 1/3, π, √2, e等點(diǎn)以及運(yùn)算結(jié)果5/6和2√2。控制臺(tái)會(huì)輸出每個(gè)數(shù)的內(nèi)部表示直觀展示其類型。4.2 核心演示實(shí)數(shù)的稠密性這個(gè)演示能生動(dòng)展示實(shí)數(shù)“無限稠密”的特性。def density_demo(steps5): 稠密性演示在任意兩個(gè)實(shí)數(shù)之間不斷取中點(diǎn)可視化“無限可分”的概念。 steps: 遞歸取中點(diǎn)的次數(shù) plotter NumberLinePlotter(x_range(0, 1)) # 起始區(qū)間 [0, 1] left RealNumber(0) right RealNumber(1) interval_points [(left, right)] # 存儲(chǔ)每一層要處理的區(qū)間 plotter.plot_number(left, colorblue) plotter.plot_number(right, colorblue) colors plt.cm.plasma(np.linspace(0.2, 0.8, steps)) # 為每一層分配不同顏色 for i in range(steps): new_interval_points [] color colors[i] for l, r in interval_points: # 計(jì)算中點(diǎn) midpoint (l r) / RealNumber(2) # 繪制中點(diǎn) plotter.plot_number(midpoint, colorcolor, marker., markersize8 (steps-i)*2) # 將新生成的兩個(gè)子區(qū)間加入下一輪處理列表 new_interval_points.append((l, midpoint)) new_interval_points.append((midpoint, r)) interval_points new_interval_points print(f第 {i1} 層新增了 {len(new_interval_points)} 個(gè)中點(diǎn)。) plotter.ax.set_title(f實(shí)數(shù)稠密性演示 (遞歸取中點(diǎn) {steps} 次), fontsize14) plotter.show()運(yùn)行density_demo(6)你會(huì)看到在0和1之間第一次取中點(diǎn)得到0.5第二次在(0,0.5)和(0.5,1)中分別取中點(diǎn)得到0.25和0.75以此類推。圖形上會(huì)呈現(xiàn)出不斷“分裂”的效果非常直觀地展示了無論區(qū)間多小我們總能找到新的點(diǎn)中點(diǎn)在其中。4.3 誤差分析演示浮點(diǎn)數(shù)的陷阱這個(gè)演示對于理解計(jì)算機(jī)的局限性至關(guān)重要。def float_error_demo(): 浮點(diǎn)數(shù)運(yùn)算誤差演示。 import decimal print( 浮點(diǎn)數(shù)精度誤差演示 \n) # 案例1經(jīng)典 0.1 0.2 a_float 0.1 0.2 a_decimal decimal.Decimal(0.1) decimal.Decimal(0.2) print(f用 float 計(jì)算: 0.1 0.2 {a_float}) print(f用 Decimal 計(jì)算: 0.1 0.2 {a_decimal}) print(f兩者差值: {abs(decimal.Decimal(str(a_float)) - a_decimal)}\n) # 用我們的 RealNumber 演示 r1 RealNumber(0.1) r2 RealNumber(0.2) r_sum r1 r2 print(fRealNumber(0.1) RealNumber(0.2) {r_sum}) print(f 內(nèi)部 float 值: {r_sum.float_value:.30f}) # 顯示更多小數(shù)位 print(f 判斷是否等于 0.3: {r_sum RealNumber(0.3)} (使用了容差比較)\n) # 案例2分?jǐn)?shù)運(yùn)算的精確性 r3 RealNumber(1/3) r4 RealNumber(1/6) r_sum2 r3 r4 print(fRealNumber(1/3) RealNumber(1/6) {r_sum2}) print(f 內(nèi)部表示: {r_sum2.fraction_value} (精確分?jǐn)?shù))) print(f 對應(yīng)的 float: {r_sum2.float_value:.30f}\n) # 可視化對比 plotter NumberLinePlotter(x_range(0.299, 0.301), figsize(10, 3)) # 放大看 exact_point RealNumber(0.3) float_point RealNumber(a_float) plotter.plot_number(exact_point, colorgreen, marker|, markersize20, label_offset0.15) plotter.ax.text(exact_point.float_value, 0.15, 精確值 0.3, colorgreen, hacenter) plotter.plot_number(float_point, colorred, marker|, markersize20, label_offset-0.15) plotter.ax.text(float_point.float_value, -0.15, f浮點(diǎn)結(jié)果 {a_float:.18f}, colorred, hacenter) plotter.ax.set_title(0.1 0.2 的浮點(diǎn)數(shù)誤差可視化極度放大, fontsize12) plotter.show()這個(gè)演示會(huì)先在控制臺(tái)輸出數(shù)值對比然后展示一個(gè)極度放大的數(shù)軸視圖。你會(huì)發(fā)現(xiàn)理論上應(yīng)該完全重合的“精確值0.3”和“0.10.2的浮點(diǎn)結(jié)果”是兩個(gè)不同的點(diǎn)。這個(gè)微小的差距就是浮點(diǎn)數(shù)表示誤差的直觀體現(xiàn)。5. 常見問題、調(diào)試技巧與項(xiàng)目擴(kuò)展在實(shí)際編寫和運(yùn)行這個(gè)項(xiàng)目的過程中你可能會(huì)遇到一些典型問題。這里是我總結(jié)的排坑指南。5.1 常見問題速查表問題現(xiàn)象可能原因解決方案導(dǎo)入matplotlib時(shí)報(bào)錯(cuò)或無法顯示圖形1. 未安裝matplotlib。2. 在無圖形界面的服務(wù)器或某些IDE后臺(tái)運(yùn)行。1. 運(yùn)行pip install matplotlib安裝。2. 嘗試在代碼開頭加import matplotlib; matplotlib.use(TkAgg)指定后端或使用plt.savefig(output.png)保存圖片而非plt.show()。分?jǐn)?shù)運(yùn)算結(jié)果變成了一個(gè)非常復(fù)雜的分?jǐn)?shù)如分母極大對浮點(diǎn)數(shù)直接使用Fraction()構(gòu)造函數(shù)沒有限制分母。在RealNumber._parse方法中對浮點(diǎn)數(shù)初始化時(shí)使用Fraction(value).limit_denominator(max_denominator)來限制分母大小獲得一個(gè)“近似的最簡分?jǐn)?shù)”。數(shù)軸上的點(diǎn)標(biāo)簽重疊在一起多個(gè)點(diǎn)的數(shù)值非常接近導(dǎo)致文本標(biāo)注重疊。1. 調(diào)整plot_number中的label_offset參數(shù)為不同點(diǎn)設(shè)置不同的垂直偏移。2. 使用更智能的標(biāo)注庫如adjustText但會(huì)增加復(fù)雜度。3. 教學(xué)演示時(shí)可以手動(dòng)錯(cuò)開幾個(gè)關(guān)鍵點(diǎn)的標(biāo)簽位置。交互滑塊拖動(dòng)時(shí)圖形卡頓或閃爍每次滑塊回調(diào)都清空并重繪整個(gè)圖形 (self.ax.clear())。采用“更新元素屬性”而非“重建”的策略。如我們代碼所示只更新點(diǎn)的坐標(biāo)和可見性而不是清除重畫。確保使用draw_idle()而非draw()。RealNumber(‘1/3‘) * 3結(jié)果不是精確的1而是0.999999...運(yùn)算過程中某個(gè)環(huán)節(jié)丟失了分?jǐn)?shù)表示降級(jí)為了浮點(diǎn)數(shù)計(jì)算。檢查__mul__等方法中的邏輯。確保當(dāng)兩個(gè)操作數(shù)都有fraction_value時(shí)優(yōu)先使用分?jǐn)?shù)運(yùn)算。并檢查結(jié)果分?jǐn)?shù)的分母是否超過了閾值導(dǎo)致被轉(zhuǎn)換成了浮點(diǎn)數(shù)。自定義無理數(shù)如‘sqrt(3)‘無法解析_parse方法中只處理了‘sqrt(‘開頭的字符串且內(nèi)部邏輯可能不健壯。擴(kuò)展_parse方法使用更強(qiáng)大的解析庫如sympy或ast或編寫更嚴(yán)謹(jǐn)?shù)恼齽t表達(dá)式來處理更復(fù)雜的數(shù)學(xué)表達(dá)式字符串。5.2 調(diào)試心得與技巧善用__repr__我們在RealNumber類中定義了詳細(xì)的__repr__方法。在調(diào)試時(shí)直接打印對象print(r)和打印其表示print(repr(r))效果不同。后者會(huì)顯示內(nèi)部類型和近似值是調(diào)試的利器。分離邏輯與界面RealNumber類只負(fù)責(zé)數(shù)據(jù)表示和運(yùn)算NumberLinePlotter類只負(fù)責(zé)繪圖。這種分離使得你可以單獨(dú)測試核心邏輯例如在無圖形環(huán)境的終端里測試運(yùn)算是否正確而不必依賴GUI。編寫單元測試unittest來驗(yàn)證RealNumber的運(yùn)算會(huì)是一個(gè)好習(xí)慣??刂瓶梢暬瘡?fù)雜度在教學(xué)演示中一次不要展示太多點(diǎn)比如超過20個(gè)否則界面會(huì)顯得雜亂。對于稠密性演示可以通過控制遞歸層數(shù) (steps) 或動(dòng)態(tài)添加/移除點(diǎn)來管理。理解浮點(diǎn)誤差的本質(zhì)在誤差分析演示中關(guān)鍵是要理解0.1這個(gè)十進(jìn)制數(shù)在二進(jìn)制下是一個(gè)無限循環(huán)小數(shù)無法被float精確表示。使用decimal.Decimal時(shí)必須用字符串初始化Decimal(‘0.1‘)而不是浮點(diǎn)數(shù)Decimal(0.1)否則誤差在初始化時(shí)就引入了。5.3 項(xiàng)目擴(kuò)展方向這個(gè)基礎(chǔ)框架有很大的擴(kuò)展?jié)摿χС指噙\(yùn)算和函數(shù)為RealNumber類添加乘方 (__pow__)、開方等方法。甚至可以集成math模塊中的函數(shù)如sin,log等返回新的RealNumber對象必然是無理數(shù)近似類型。增強(qiáng)表達(dá)式解析引入sympy庫使得RealNumber可以解析和計(jì)算像‘2*pi sqrt(3)/4‘這樣的復(fù)雜符號(hào)表達(dá)式并能進(jìn)行簡單的符號(hào)化簡。歷史記錄與動(dòng)畫讓NumberLinePlotter記錄每次繪圖操作并實(shí)現(xiàn)“回放”功能動(dòng)態(tài)展示數(shù)的創(chuàng)建和運(yùn)算過程形成一個(gè)小動(dòng)畫。集合與區(qū)間操作實(shí)現(xiàn)RealSet類用來表示區(qū)間的并、交、差并在數(shù)軸上用不同顏色的線段或區(qū)域進(jìn)行可視化。Web應(yīng)用化使用Plotly Dash或Streamlit框架將整個(gè)項(xiàng)目轉(zhuǎn)化為一個(gè)交互式Web應(yīng)用方便在線分享和教學(xué)。構(gòu)建這個(gè)實(shí)數(shù)模擬器的過程是一次將抽象數(shù)學(xué)思維、編程設(shè)計(jì)和可視化表達(dá)緊密結(jié)合的實(shí)踐。它沒有解決工程上的高性能計(jì)算問題但它清晰地揭示了計(jì)算機(jī)如何表示和處理連續(xù)數(shù)學(xué)概念的本質(zhì)——一種在精確與近似、離散與連續(xù)之間精巧的平衡。當(dāng)你拖動(dòng)滑塊觀察數(shù)軸的縮放當(dāng)你看到兩個(gè)理應(yīng)相等的點(diǎn)之間那微小的縫隙時(shí)你對“實(shí)數(shù)”和“計(jì)算”的理解或許會(huì)比讀十頁教科書更加深刻。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99色热综合| 久久婷婷五月综合激情国产| 国产精品色色| 婷婷欧美激情| 六月丁香成人| 国产9色在线/日韩| 亚洲av无码影院| 丁香五月手机在线| www.wuyuetian啪啪| 激情五月天视频| 99热久久这里只有精品| 久久99久久久久久| www久久艹| 久久性爱网| 开心五月婷婷激情| 五月丁香婷婷基地| 爱婷婷都市激情| 天天操夜夜啊| wwwss在线观看| 好大好粗嗯啊-一级黄色大片免费观看-成人AV | 激情婷婷六月天| 色青青视频| 91爱啪啪| 99操视频| 色婷婷五月天亚洲 | 人人插9| 色色99| 婷婷五月天在线综合| 激情网五夜婷婷| 26uuu偷拍亚洲欧洲综合| 熟女人妻一区二区三区免费看| 五月丁香六月激情综合| 五月天婷婷社区| 婷婷五月丁香婷婷| 偷拍九九热| 久久久99久久| 欧美日韩99| 婷婷久久亚洲| 五月婷婷六月丁香综合在线| 欧美日本另类| 日韩综合天堂| 九九99精品视频在线观看| 九九99热| www.丁香五月| 1000部毛片A片免费观看| 欧美va视频| 人妻久久久久久久 | 狠狠干激情五月| www.色婷婷| 色青五月天| 伊人大蕉香| av在线婷婷| 蜜桃人妻无码AV天堂三区| 久久婷婷五月天懂色| 天天日 天天草| 热思思| 激情综合五月色丁香婷婷| 丁香五月天在线直播观看| 女人露出p毛视频www网站| 亚洲综合视频在线| 森林影视大全,最好看的2019年视频| 六月五月丁香五月欧美| 韩日另类| 在线观看欧美3区| 九月婷婷人人操人人舔人人爱| 精品国产乱码久久久久久免费| 五月天婷婷激情| 综合激情五月天| 五月丁香成人网| 五月开心网| 欧美精品XXXXBBBB| 大香蕉娱乐| 欧美激情伊人| 日本在线免费中文com.| 天天摸天天舔天天天天爽| 婷婷午夜天| 精品人妻久久久久久| 亚洲无码色| www.婷婷.com| 最新无毒无码AV| 97操男人的天堂| 五月丁香婷婷成人版| 色色色色色色色色色色色色色97| 色噜噜伊人| 五月婷婷五月天天| AV色婷婷| 伊人九热| 婷婷五月激情五月激情| 婷婷综合丁香| 久热人妻| 丁香桃色网| 97福利视频| 无码人妻丰满熟妇奶水区码| 91在线日本| 亚洲 综合中文| 99性爱精品| 丁香五月天视频| 五月天天天色| 狠狠情色| 婷婷丁香五月综合激情小说| 热久久99热欧美国产亚洲| 婷婷五月花| 色婷婷第四色| www..com色爱| 五月婷久久| 日本啪啪视频HD| av线电影| 99成人精品视频| 久久婷婷综合网| 人妻丰满精品一区二区A片| 9久热在线精品| 91人人网| 99视频精品全部观看10| 99干日日干| 99久在线精品99re5热视频| 六月婷婷五月丁香| 九九热黄色| 久久五月综合| 久草婷婷在线| 激情影院免费视频婷婷五月天| 天天色丁香| 99操九九网| 成人短视频在线| 欧美性爱5月天天天看| 97色啪| 国产精品久久久久9999小说 | 最新高清无码专区| 人人色婷婷五月天| 婷婷综合| 天天开心天天色| 天天久| 精品夜夜澡人妻无码AV| 五月丁香六月欧美综合| 99热66| 天天色图| 大香蕉婷婷| 亚洲成人无码免费| 天天干天天日天天操| 无码一区精品一区视频| 久久这里只有国产视频| 亚洲岛国电影| 伊人五月成人| 在线91日韩| 俺去也在线官网| 九九久久综合| 丁香五色月婷婷网| 中文字幕在线aⅴ免费观看| 丁香六月开心| 伊人在线视频| 久久机热思思热| 夜夜操加勒比| 婷婷色基地| 大香蕉久久综合网| www.狠狠| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 色狠狠图片| 色久综合| 色五月婷婷内射| 天堂美国久久| 国产精品色婷婷99久久精品| 日韩一级片| 日本一级特黄大片AAAAA级| www.91AV.COM| 99色网站| 久久久五月婷婷| 日韩青青| 色七七九九| 91婷婷色| 精品夜夜澡人妻无码AV| 99热在线观看这里只有精品| www,超碰| 大香蕉久操| 五月色欧洲| 99综合色色色| 色香蕉影院| 久久这里都是精品免费| 97色 五月天丁香| 婷婷五月天综合中文| 玖玖婷婷免费| 亚洲AV成人片无码网站| 九九热这里只有精品12| 99免费在线视频| 婷婷伊人综合中文字幕| 久久99热 这里有精品| 99婷五月| 91日韩在线| 他改变了拜占庭| 国产乱人偷精品人妻A片| 丁香五月在线视频黑人| 久99综合婷婷| 另类丁香五月天区图| 婷婷色情六月| WWW,色五月| 97色精品视频 | 综合激情啪啪| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 五月色情婷婷| 久久九色| www.夜夜操| 丁香五月在线人妻| 色www.con| AV性爱网| 精品99在线| 日日色五月天| 99操逼| 2050人人操免费工开爱 | 粉嫩av懂色av蜜臀av熟妇| 婷婷综合视频| 亚洲中文字幕AV| 人人操超踫| 五月丁香激情怕怕| 大香蕉人人网| 99久久婷婷国产综合精品电影| 97色色综合| 99热欧| 亚洲人人操| 99热免费| 色情综合| 综合网天天| 久久成人人妻| 亚洲婷婷成人五月天| 伊人五月婷婷| 色婷婷偷拍| 春色激情| 成人五月丁香花| 97狠狠色| 超碰免费人妻| 婷婷永久在线| 99超级碰碰| 人人舔天天| 色婷操逼| 久久久www| 禁片二区| 久久精品日| 婷婷影院A成人| 激情婷婷| 天天做天天爽| 婷婷久久大香蕉| 97视频久久| 色噜噜狠噜噜视频| 五月激情天| 色播五月婷婷五月| 99久在线精品99re8热| 狠狠狠狠狠狠狠狠草| 亚洲成人免费电影| 蜜臀AV在线成人| 久久3p| 1769在线观看欧美国产| 丁香五月婷婷高清| 青青999| 婷婷婷久久| av中文字幕免费观看| 人人爱操| 久久性爱99国产| 99网| 啪啪色激情五月天| 亚洲人妻电影| 激情五月综合网最新| 麻豆精品| 五月婷婷啪| 色色色五月婷婷| 国产成人av在线播放| 91狠狠色色丁香婷婷综合久久| WWW·色色色·COM| 激情丁香五月天综合| 九九成人精品免费视频| 色五月天综合| 亚洲激情五月| 夜夜爽天天干| 亚洲网站观看视频| 99热色婷婷| 久久婷婷国产| 99热热九九| 人人干天天操五月丁香| 五月激情综合美女久久| 超碰日日操| 涩五月婷婷| 激情综合婷婷| 91九色 熟| 99碰在线视频| 青青草a在线| 丁香五月婷婷丫| 亚洲人人操BD| 大香蕉五月天婷婷| 综合色五月亭亭| 91丨九色丨老熟女激情| 色综合久久天天综合网| 色婷婷香蕉丁丁网| 亚洲综合1024| 91色呦哟| 91玖玖| 婷婷丁香午夜综合影视| 五月丁香性| 91婷婷在线| 精品无码久久久久久久久| 国产精品成av人在线视午夜片| www.五月婷| 91人人爽狠狠狠| 99高级会所久久| 丁香五月婷婷骚视屏| 中文成人在线| 新激情五月天| jiqingtaose五月天| 五月天婷婷激情春色小说| 丁香五月婷婷五月| 久久婷婷五月综合色丁香花| 性爱综合网| 国内精品玖玖| 五月天综合在线| 中文字幕av久久爽| 天天色五月| 久久在线大香蕉| 国产欧美精品AAAAAA片| 婷香五月| 五月婷婷亚洲| 超热久碰.com| 综合色色婷婷| 天天插天天插| 思思热天天看| 97香蕉久久超级碰碰高清版| 日日操无码| 九九色精品| 欧美人妻一区二区| 久久久久9久无码视频| 久久久8| 99re最新地址| 五月婷婷爽爽爽| 激情综合婷婷| 99热爱爱干干日| 丁香av网| 天天做天天爱天天玩夜夜爽| 国产精品久久久久久喷浆| 色狠狠999综合| 97婷婷五月天| 色五月丁香六月资源站| 国产 亚洲 在线| 夜夜操天天干| 日本操B片| 丁香五月天激情综合网| 强壮的公次次弄得我高潮A片日本 | 99久久99视频| WWW免费视频碰碰碰碰| 中文字幕视频色婷婷| www久久久| 婷婷97碰碰| 九九激情| 五月天天久久香| 99热有精品在线观看| 激情网 五月天| 婷婷五月婷婷| 色色色777| 99操逼| 婷婷丁香社区| 97人人操| 另类激情五月天。| 丁香激情五月| 六月婷婷亚洲| 好大好粗嗯啊-一级黄色大片免费观看-成人AV| 亚洲麻豆乱码国产2028| 色吧网综合| 秋霞三及片| 亚洲AV在线免费看| 九九99久久| 色噜久| 激情都市丁香婷婷| 9l视频自拍九色9l视频自拍九色9l社区 | 日本九九网| 97AV人人插人人操| www.五月婷婷| 开心五月婷婷六月丁香| 大香蕉久久综合网| 天天操天天操天天操天天操天天操| 一起操 91N.com| 丁香婷婷视频在线| 久99久在线| 天天爽天天| 色婷五月天亚洲| 无人区码一码二码三码医生系列| 色婷婷成人| 黄久久久| 激情AV| 久久96热| 亚洲天堂啪啪| 国外亚洲成AV人片在线观看| 思思国产99| 天天操五月天| 激情五月天色色| 婷婷丁香五月六月激情| 1024成人在线观看| 99热免费| 婷婷五月天国产| 99日本黄站| www.激情| 色婷婷色99国产综合精品| 色婷婷操逼| 亚洲视频在线观看| 激情AV在线| 亚洲视频丁香网va| www.五月婷婷.com| 123日本不卡在线| 色婷另类| 美国天天日天天操| 欧美婷婷| 一起肏在线视频| 九九AV| 日韩九九| 五月丁香六月婷婷色| 丁香六月婷婷社区| 九九99九九精品免费 | 99re免费精品视频| 色五月婷婷婷婷| 丁香婷婷综合激情五月色| 九九热免费视频| 九九99一区| 亚洲操操| 久99久视频免费观看| 婷婷成人五月天| 色噜噜狠狠插综合| 狠狠干激情五月| 97狠狠色| 丁香五月大香蕉AV| 亚洲岛国电影| 国产高潮A片羞羞视频涩涩| 26uuu成人网| 99成人网站| 丁香五月激情网| 色婷婷8| 夜夜爽天天干| 久久人人九九| 亚洲第一综合| 色五月综合在线| xx综合网| 77799热| 五月天婷婷爱| 狠狠九九婷婷韩| 黄色网址五月婷婷| 国产高清av黄色看片| 伊人五月天在线| 夜夜操狠狠操| 日本狠狠色| 久热只有这里精品| 激情 婷婷 丁香五月天| 亚洲婷婷丁香五月天激情小说| 日韩欧美成人片| 九九成年视频| 91 久热| 国产69久久久欧美黑人A片| 五月婷婷综合激情网| 99re思思久久| 热99AV网站| 日日操,夜夜爽| 五月天自拍网| 色情五月天首页| 六月亚洲婷婷6月中文字幕| 99色色| 婷婷五月天毛片| 啪啪视频99| 97色射| 五月天丁香色色| 久久精品一区二区三区四区| 熟妇内谢69XXXXXA片| 另类专区在线观看| 伊人综合网站| 伊人婷婷福利网| 无码激情AAAAA片-区区| 久热re视频在线观看网站| 在线视频区| 日本精品人妻无码77777| 亚洲乱码日产精品BD| 激情五月婷婷| 丁香六月丁香婷婷激情 | 五月婷久草| 伊人激情网| 大香蕉伊然在亚洲90| 国产九月婷婷| 色婷婷四色| 中文字幕成人影视| 大香蕉婷婷| 狠狠操.com| 五月丁香婷婷综合激情基地| 狠狠五月天激情| 丁香五月婷婷激情蜜桃| 色色综合激情| 婷婷五月天激情网| www.lchjjc.com| 人人操婷婷| 超碰国产在线观看| 人妻狠狠操| 五月婷婷伊人网| 五月天激情.com| 久久美女五月天| 欧美日韩成人免费在线| 欧美激情综合色综合啪啪五月| 无码激情AAAAA片-区区| 久久中国毛毛片爱久久| 成人短视频在线观看| 五月天激日本色情在线| 日日舔夜夜操| 99热地址| 五月色婷丁香| 97五月天婷婷午夜| 狠狠色丁香| 99久久6| 日韩AV免费看| 丁香婷婷五月六月久久| 五月天色五月天| 欧美α√| 天天日天天插| 六月婷婷综合久久| 久久精品小视频| 天天做天天爽| 色网五月婷婷| 91天天操天天干天天射| 开心五月激情婷婷| 99只有精品| 夜夜AVV| 99热99在线| 丁香激情五月少妇| 777影视理论片大全在线观看| 9久9久9久女女女九九九一九| 熟女网站久久| 五月天停停成人网| 91啪啪视频| 色婷婷性爱| 色五月丁香一区在线| 精品丁香五月天在线播放| 99热这里只有精品8| 操逼五月天| 国产永久一二一起草| 丁香五月天婷婷激情| 99热国品| 思思视频这里是精品| 婷婷五月天影视首页| 国产精品99久久久久久久女警| 91色在线 | 日韩| 欧美色小说婷婷| 五月天婷婷激情小说电影| 91九九热| 五月天婷婷高清无码| 五月天播播| 大伊香蕉玖玖爱| 欧美综合五月丁香五月天| 婷婷六月丁香五月| 色婷婷久久久| 日本在线视频www色| 丁香五月天社区婷婷| 另类丁香五月天区图| 久久久这里有精品| 操碰91| 五月天丁香婷| 色婷婷a v| 草综合14| 五月天大香蕉AV| 97色色在线视频| 日韩黄在免| 天干天天干天天天天天| 狠狠综合网| 精品久久二6| 91欧美| 九九综合九九| 五月激情六月宗合| 一级片sese片.COM| 婷婷伊人綜合中文字幕| 色色自拍视频网站| 极品人妻VIDEOSSS人妻| henhencao国产在线| 亚洲无码99| 怡红院院在线导航网| 婷婷五月激情综合| 少妇口诉沐足视频播放器网址| 五月综合色| 97色五月天| 91 欧美| 色婷婷在线视频综合| 色五月综合激情网| 婷婷五月丁香伊人| 丁香久久久| 人妻视频在线| 精热在线综合网| 无码少妇高潮喷水A片免费| 婷婷国产日本欧美| 久久激情四射| 热久国产| 成人五月天在线视频在线观看| 亚洲亚洲人成综合网络| 开心五月天激情网站| 激情五月婷婷色色| 高清不卡一区| 激情五月综合ì香亚洲| 欧美碰碰| 99碰碰| 激情5月婷婷狠狠干| 天天操天天干天天射| 99久在线精品99re8热| 人人干女人| 久热只有精品| 情婷婷五月天| 狠狠丁香| 久久婷婷五月天大香蕉| 91精品久久久久久久久| 婷婷久久婷婷色五月| 五月伊人91| 激情亭亭五月| 丁香五月另类小说在线阅读| 婷婷五月综合免费在线| 久久久网站| 色九月激情综合网| 亭亭五月基地在线| 国自产拍偷拍精品啪啪一区二区| 久色婷婷200| 91九色首页| 热日韩欧美| 色色色婷婷五月| 婷婷的五月天另类视频| 色婷亚洲五月丁香| 少妇高潮呻吟A片免费看软件| 狠狠操狠狠做| 秋霞免费三级片| 就爱日五月天| 97人人射| 久草狼人| 天天干天天叉| ,99视频久久| 黄色91在线观看| 天天日天天爽| 狠狠爱激情网| 99热免| 婷婷5月色| 97碰碰电影| 免费观看全黄做爰的视频 | 亚洲综合激情五月久久| 亚洲视频色婷婷| 激情综合激情五月| 五月天无码| 五月婷婷九| 桃色五月婷婷| 亚洲精品字幕在线观看| 亚洲啪啪啪啪| 免费视频无码| 五月婷婷色激情| 丁香五月天色| 日韩黄黄| 九艹在线| 色婷婷AⅤ| 色五月色综合| 天堂无码人妻精品AV一区| 丁香五月色五月| 婷婷五月天堂一本在线| 深爱激情av| 这里只有在线精品| 婷婷综合激情五月中文字幕| 五月丁香啪啪网| 色色日本欧美| 免费观看日韩成人av| 国产黄大片在线观看画质优化| 久久五月婷| 香蕉人在线香蕉人在线 | 大陆肏屄视频| 97婷婷五月| 狠狠干五码| 婷婷涩五月天综合| 欧美婷婷五月| 美女妹子后射视频网站在线观看| 五月开心激情网| 色久免费| va亚洲中文在线| 激情综合网激情五月丁香| 六月天无码网址| 五月丁香在线国产| 六月婷婷狠狠做| 天天干-天天日| 五月天色婷婷视频| 日日操,夜夜爽| 99热这里只有精品 搜| 久热视频这里只有精品68| 襙逼网| 热99re| 丁香激情婷婷网| 丁香婷婷激情网站| 五月婷婷香| 婷婷五月花| 色婷| 色久综合| 在线播放 精品| 爆乳熟女-区二区三区| 丁香五月婷婷高清| 91久久九久久九久久九久久九久久| 婷婷刺激综合| 97人人草| 亚洲看av的网站| 久久精品亚洲一级牲爱综合| 九九热最新| 丁香五月香蕉| 欧洲第一无人区观看| 日韩乱轮AV| 月色色综合婷婷网| 97碰碰人人| 色五月丁香激情视频| 九九热视频思思| 激情视频综合| 五月丁香亭亭| 婷婷中文字暮| 人妻AV在线| 这里只有免费的精品| 久久婷婷视频| 免费AV播放| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 丁香六月激情蜜桃| 色婷婷激情四射视频| 亚洲热视频在线| 欧美日韩二区在线| 丁香九月综合| 操嫩逼电影| 婷婷五月天AV在线| 国产精品VIDEOSSEX久久发布| 97碰91| 五月激情视频| 人人看人人摸人人| 色情五月丁香| 亚洲黄网在线| www.婷婷| 五月丁香在线观看| 成人无码髙潮喷水A片| 97在线/日本| 五月天色狠狠| 国产九九一区二区三区| 久热在线中文字幕色999舞| 九伊人网| 国产精品色一哟哟| 中文字幕成人| 久久精品天| 丁香五月婷婷成人色区| 亭亭色网| 婷婷九九色| www.婷婷网| 99精品久久久久| 嫩草免费视频| 大波美女VA网站| 国产综合色婷婷精品久久| 99久久97| 色人五月婷婷| 亚洲综合激情五月久久| 操逼巨乳91| 丁香五月在线观看完整版| 丁香五月天激情综合| 日本黄色在线观看| 婷婷.com| 婷婷五月五月丁香| 激情婷婷综合| 久热这里只有| 草一草avb| 激情深爱五月天| 国产jd1024基地手机看国产| 激情99。| 久久丁香五月天| 大香蕉婷婷丁香天堂AV| 天天干天天干天天干| 在线播放 精品| 五月婷婷熟女| 国产精品A成V人在线播放| 玖热精品综合视频| www.超碰在线| 九九热中文| 青青草轻轻操| 日本一级一片免费视频| 狠狠穞A片一區二區三區| 91人人看| 五月婷婷免费在线观看视频| 婷婷六月成人| 岛国AV网站| 中文字幕精品推荐免费在线观| 亚洲VA在线| 免费黄网不卡AV| 狠狠色婷婷丁香六月| 能看的av| 丁香伊人综合| 激情5月婷婷| 国产片色| 九九色情网五月天| jiZZdr| 啪啪夜久久| 超碰免费99| 99日韩| 狠狠操狠狠操AV| 人妻性爱av网站| 激情久久久| 日韩六十路91性交电影| 欧美成人AAA片一区国产精品| 五月婷婷色丁香| AV中文网| 俺也去在线视频 | 新激情婷婷| 丁香六月婷婷综合在线| 变天就操逼婷婷五月| 日本婷色| 99碰碰| 欧美肉大捧一进一出免费视频| 就爱干 在线| 草榴视频黄色网| 噜噜狠狠色| 四虎成人精品永久免费AV九九| 色婷婷亚洲精品天天综| 欧美激情xxxXX| 色9999综合久久| 综合啪啪| 激情五月黄色小说| 婷婷香蕉精品| 99在线视频免费| 丁香五月在线伊人| 九久九精品| 97热精品| 六月婷婷狠狠| 97人人操人人操人人操人人| 六月撸婷婷| 在线视频色五月| 六月婷婷色色网| 亚洲免费观看高清完整版AV线| 秋霞性爱AV| 国产高清av黄色看片| 成年人丁香五月| 亚洲艹网| 色婷亚洲| 国产精品一区在线观看你懂的| 天天射综合网夜夜操| 色婷婷天堂| 熟妇人妻中文字幕无码老熟妇| 九九热只有精品| 天天爽夜夜爽夜夜爽精品| 九九色婷| 五月丁香啪啪综合| 日日插日日干| 婷婷五月综合婷婷| 五月丁香最新| 国产亚洲精品AAAAAAA片| 极品人妻VideOssS人妻| 99在线视频免费| 99热线观看9| 久热婷婷综合| 色婷婷五月综合| 激情五月丁香综合网站| 五月天AV大香蕉| 五月婷婷开心丁香| 激情五月天久久丁香| 激情五月瑟瑟| 少妇伦子伦精品无吗| 激情爱爱网站| 五月婷婷啪啪网| 天天色图| 991自拍视频| 一起草AV| 亚洲精品99| 日日干干天天干| a九九热www| 色五月丁香A欧美com | 这里只有精品免费视频| 色婷婷五月天堂资源| 91色色色18| 丁香五月婷婷av影院| 91偷拍视频| 人人干人人看| 久久婷婷婷婷伊人| 九九热亚洲中文在线观看免费| www.色情五月天.com| 五月丁香网站| 大香蕉久艹| 丁香五月天社区| 天天日,天天射,天天舔| 天天婷婷操| 另类视频在线| 色综合色五月| 激情视频综合| 另类丁香综合| 五月色激情综合网| 丁香九月色| 狠狠色色色| 超碰日韩人妻在线| 精品一二三区久久AAA片| 超碰AV在线| 五月天com| 久草五月| 亚洲中文乱字字幕在线永久| 二色AV| 丁香五月欧美激情| 啪啪 综合网| 99热1| 亚洲婷婷91丁香| 国产精品成人AV在线| 色五月丁香婷婷久草| 亚洲激情五月天| 这里只有精彩视频| 99只有精品| 天天做天天爽| 亚洲色夜| 久操热线| 五月丁香激情综合| 欧美交换配乱吟粗大25P| 婷婷六月色| www.狠狠操| 国产69久久久欧美黑人A片| 鲁鲁色五月| 久久这里只有精品视频15| 91丁香色五月| 婷婷激情图片| 丁香五月成人婷婷| 五月天综合激情网| 色婷五月| 风流少妇A片一区二区蜜桃| 国产精品人人做人人爽人人添| 无码少妇高潮喷水A片免费| 任你躁XXXXX麻豆精品| 丁香花社区av| 婷五月天六| 五月天狠狠色| 天天色综和网| 开心五月丁香啪| 六月丁香激情网| 狠狠狠狠狠狠色| 色情婷婷五月天| 色欲一区二区三区精品A片| 久久您您综合网| 99在线视频女女视频| 97操操操| 色综合色欲综合天天免费| 国产成人va在线| 能看的av| 五月丁香婷婷啪啪| 激情综合视频| 9久热在线视频精品| 免费视频舔| 开心五月婷婷99| 91久久色| 精品亚洲国产成AV人片传媒| 色播激情| 日本啪啪天堂| 甈你aaaaa| 99热精品99| 日日夜夜干| 91综合视频在线| 亚洲性受XXXX五月丁香| 99热99干| 婷婷丁香五月亚洲| 色99最新网址| 亚洲永久四色| 夜丁香五月婷婷| 亚洲激情在线| 五月婷婷久久爱| 婷婷激情五月综合| 99热中文字幕久久| 91啪啪| 五月激情久久| 久鲁鲁色网 | 五月婷狠狠| 激情五月天婷婷| 79色色色色| 思思热在线观看| 丁香六月婷婷社区| 婷婷久久国产视频| 天天操婷婷| 九九热视频精品999| 色亚洲无码| 99在线观看精品视频| 国产精品99久久久久久久女警| 超碰人人操| 99热这里只有精品无码| www.主妇. com| 天天插天天爽| 丁香,开心成人,久久| 婷婷伊人綜合中文字幕小说| 久久99热这里只有精品| 国产又粗又大又爽又黄| 久久在这里99| 天天爱天天做天天操| 日本强伦片中文字幕免费看| 丁香五月激情啪啪| 黄色一级影片| 91人人爽人人操| 婷婷五月开心中文字幕在线| 思思热视频在线| 棕合影院色色| 丁香五月婷婷视频| 丁香影院五月综合| 蜜乳A√| 欧美在线干| 99热老网站| 色五月天丁香婷婷| 六月综合婷婷开心伊人| 丁香六月婷婷姐网| 丁香伍月婷电影全集| oumeisesewang| AVDV久久| 九九精品网站| www.久久久.com| 夜夜躁婷婷AV| 婷婷在线视频| 99热销国产这里有精品| 色播播五月| 色欲色香综合网站| 九九激情视频| 亚洲成人综合网在线免费观看| 人人爽人人爽人人爽人人爽| 少妇性BBB搡BBB爽爽爽电影| 日韩好吊操| 大香蕉久| 婷婷在线操| 中文字幕乱码亚洲精品一区| 第二色AⅤ| 天天插天天插| 色999五月色| 99视频这里有精品| 日日射天天射| 九九热狼人| 五月丁香婷婷激情视频| 9l视频自拍九色9l黑人| 婷婷99狠狠躁| 在线视频激情网站| 丁香五月网址| 五月天婷婷色在线视频免费观看 | 丁香五月综合| 3p日韩网站视频| 婷婷D区| 色色 9| 久久精品五月| 99热综合网| 另类视频一区| 精品一二三区久久AAA片| 无码G高清天| 日本久久九| 久热这里只有| 丁香九月婷婷综合| 色墦五月丁香| 狠狠狠狠狠操| www.久久久久久久久久久| 玖玖在线视| 五月天激情综合网站| 色www久视频| 丁香桃色网| 欧美六月| 国精产品一区一区三区免费视频| 婷婷色欧美激情| 2020日日干| 91精品丝袜久久久久久| 色五月天激情| 日本一级特黄大片AAAAA级| 亚洲日日日| 深爱五月中文字幕| 欧美婷婷丁香五月| 思思热99热| 五月丁香另类网| 爆乳熟女一区二区三区爆乳| 激情深爱五月天| 丁香欧美| 日本久热| 激情98色婷婷五| 久9视频免费播放| 婷婷久久国产视频| 丁香五月天天| 99视频在线| 99热九九热| 国产99美少妇| 99ri国产精品| 五月丁香婷婷综合| 色五月综合在线| 深爱五月婷婷开心中文字幕| 色约约视频一区二区三区四区五区| 色色丁香婷婷| 99热只有这里才是精品| 五月婷婷五月天| 国产激情一区| 丁香五月天电影| 亚州操人在线视频| 五月丁香婷婷无码A∨| 人人看人人97| 日本少妇裸体做爰高潮片| 欧美乱码国产一级A片| 五月婷综合性中心| 99色干| 日韩三级视频一区二区| 99操视频| 久热99热| 99精品22| 人人爱天天摸摸天天爱| 97干网站| 青草青草久9视频在线视频| 日日干日日| 一起草Av| 五月天色丁香| 精品久久久久久久久久久久人妻| 久久99精品九九久久久婷婷| AV六月丁香| 97在线观视频免费观看| 色色网站| 久久伦乱| 色色网站| 综合五月天婷婷色| 综合久色五月| 成人五月天综合网| 九九这里是免费的视频5| 五月天大香蕉视频| 大香蕉色婷婷伊人在线| 国产激情视频在线观看| 日韩另类| 182TV大香蕉| 丁香六月婷婷色XXXXX| 最新亚洲色色网| 久久黄色免费视频| 99五月丁香丁| 色色色干| 国产精品99久久久久久猫咪| 中文字幕高清av| 色婷婷激情Av久久久| 无码激情AAAAA片-区区| 色五月av| 九九热视频精品| www狠狠| 久久停停超碰| 碰碰91| 色色五月天丁香| 伊人玖玖精品| 激情婷婷五月天| 99亚洲视频| 激情五月天社区| 久久久久人妻精品| 国产色色视频| 色五月av| 五月天精品| 男女免费视频999| 91超级碰在线视频| 9久久婷婷国产综合精品性色| 九九色色| 4399在线日本A片| 亚州色婷婷| 婷婷香五月天| 激情六月婷婷| 天天操夜夜操| 高清资源站日A美A欧亚…| 中文字幕一色哟哟哟哟| 婷婷丁香91综合| 丁香五月激情啪啪综合| 五月婷婷综合色啪首页| 丁香婷婷午夜| 9l视频自拍9l九色9l成人| www.henhenl| 五月丁香美女视频| 99热思思在线观看| 99re26视频| 丁香五月六月婷婷怡红院| 天天操婷婷| 99热综合在线| 亚洲综合激情五月久久| 精品色色| www.金莲av| 丁香五月综合无码趴趴| www.婷婷五月天| WWW色综合| 2w在线视频| 婷婷国产成人| 欧美日韩99| 亚洲亚洲人成综合网络| 影音先锋五月天婷婷丁香在线观看| 狠爱婷色| 色色色99| 五月天激情中文字幕| 久久婷婷综合五月趴| 五月丁香啪综合| 超碰九色| 丁香99| 91美女被操| 色欲五月天| 综合在线色婷婷| 在线只有精品| 六月丁香AV| 九热视频| 伊人久久丁香婷婷六月五月综合| 开心婷婷中文字幕| 99热综合| 五月天堂色色| WWW.激情| 色久丁香五| 天天爽天天| 91丨九色丨老农村| 日日日日做夜夜夜夜无码| 第四色首页| 婷婷综合五月| 色五月综合97| 草操AV在线| 亚洲综合五月天| 午夜天堂一区人妻| 99色五月| 小视频一区| 色色婷婷五月| 丁香五月欧美婷婷| 另类小说五月天| 开心婷婷五月天激情网| 涩五月婷婷| 亚洲AV另类| 天天爽,天天操。| 欧美日韩成人免费在线| 久久色六月| 6月丁香婷婷| 日韩aaaaa| 91操人人操| 色999亚洲人成色| 色五月天综合网| 青草青草视频2免费观看| 久综合| 日韩在线五月天婷婷| 色色丁香| 97碰在线| 亚洲色五月天| 色色五月婷婷狠狠| 久青青久| 91成人电影| 综合激情九月婷婷,激情综合婷婷中文字 | 九九无码| 激情五月天婷婷视频| 99久久婷婷五月综合| 97色五月婷婷在线| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 婷婷爱五月天| 五月天婷婷狂暴白浆| 久热只有这里有精品| 欧美性爱一区| 亚洲天堂AV综合网| 五月丁香婷婷激情在线| 九九精品免费| 欧美色99| 夜夜爽天天爽| 婷婷五月天大香蕉在线视频观看| 五月花成人网| 婷婷久久大香蕉| 丁香六月综合激情| 欧美大香蕉视频| 五月亭大香蕉| 欧美激情综合五月色丁香| 天天狠狠综合精区| 激情婷婷综合| 婷婷综合五月天| 超碰免费在线| 91婷婷| 伊人网碰碰| 麻豆雪千夏| 玖玖色资源| 五月天激情视频| 五月婷婷丁香网| 五月婷婷第四色| 欧在线一区| 开心五月天激情网站| WWW、99热| 六月色丁香中文字幕| 伊人久久丁香狠狠婷婷综合香蕉 | 99操| AA丁香综合激情| 人妻自慰在线| 婷婷伊人网| 99精品这里只有免费视频| 久久综合九九| 开心久久爱五月天| 香蕉人妻AV久久久久天天| 亚洲色欲欧美一区二区三区| 开心五月色婷婷综合开心网| 激情啪啪五月天| 色婷婷成人做爰A片免费看网站| 色9色| 国产性av| 国产VA亚洲VA96| 在线视频激情网站|