{"id":7958,"date":"2026-07-30T10:42:58","date_gmt":"2026-07-30T02:42:58","guid":{"rendered":"https:\/\/www.xinyixx.com\/?p=7958"},"modified":"2026-07-30T10:42:58","modified_gmt":"2026-07-30T02:42:58","slug":"claude","status":"publish","type":"post","link":"https:\/\/www.xinyixx.com\/index.php\/2026\/07\/30\/claude\/","title":{"rendered":"\u6bd4\u8f83\u4e00\u4e0bclaude\u7684\u4e24\u79cd\u6700\u5f3a\u6a21\u578b\uff0c\u5e76\u4ee5\u4e00\u4e2a\u9879\u76ee\u4e0edeepseek\u6d4b\u8bd5\u7f16\u7a0b\u80fd\u529b"},"content":{"rendered":"<p class=\"wp-block-paragraph\">\u4f17\u6240\u5468\u77e5\uff0cclaude\u53d1\u5e03\u4e86\u6700\u65b0\u7684opus5\u6a21\u578b\uff0c\u4e0b\u8868\u5219\u662f\u4e24\u8005\u7684\u5bf9\u6bd4\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">\u7279\u6027<\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>Claude Fable 5<\/strong><\/th><th class=\"has-text-align-left\" data-align=\"left\"><strong>Claude Opus 5<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>\u5b9a\u4f4d<\/strong><\/td><td>\u6700\u5f3a\u6027\u80fd\u7684\u65d7\u8230\u6a21\u578b<\/td><td>\u9ad8\u6027\u4ef7\u6bd4\u7684\u5148\u8fdb\u6a21\u578b<a href=\"https:\/\/36kr.com\/p\/3911060757043073\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/td><\/tr><tr><td><strong>\u53d1\u5e03\u65e5\u671f<\/strong><\/td><td>2026\u5e746\u67089\u65e5<\/td><td>2026\u5e747\u670824\u65e5<\/td><\/tr><tr><td><strong>\u5b9a\u4ef7 (\u8f93\u5165\/\u8f93\u51fa)<\/strong><\/td><td><strong>$10 \/ $50<\/strong>&nbsp;\u6bcf\u767e\u4e07Token<\/td><td><strong>$5 \/ $25<\/strong>&nbsp;\u6bcf\u767e\u4e07Token<\/td><\/tr><tr><td><strong>\u76ee\u6807\u7528\u6237<\/strong><\/td><td>API\u3001\u4f01\u4e1a\u5ba2\u6237\uff0c\u5904\u7406\u6700\u590d\u6742\u4efb\u52a1<a href=\"https:\/\/36kr.com\/p\/3911060757043073\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/td><td>\u6240\u6709\u7528\u6237\uff08Max\/Pro\u7684\u9ed8\u8ba4\u6700\u5f3a\u6a21\u578b\uff09<a href=\"https:\/\/36kr.com\/p\/3911060757043073\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a><\/td><\/tr><tr><td><strong>\u6838\u5fc3\u4f18\u52bf<\/strong><\/td><td>\u5904\u7406\u8de8\u8d8a\u591a\u5929\u7684\u3001\u6781\u5ea6\u590d\u6742\u7684\u81ea\u4e3b\u9879\u76ee<\/td><td>\u5728\u591a\u6570\u4efb\u52a1\u4e0a\u63a5\u8fd1Fable 5\u7684\u6027\u80fd\uff0c\u6210\u672c\u4ec5\u4e3a\u4e00\u534a<\/td><\/tr><tr><td><strong>\u9002\u7528\u573a\u666f<\/strong><\/td><td>\u5927\u578b\u4ee3\u7801\u5e93\u8fc1\u79fb\u3001\u957f\u671f\u81ea\u4e3b\u667a\u80fd\u4f53\u3001\u524d\u6cbf\u7814\u7a76<\/td><td>\u65e5\u5e38\u529e\u516c\u3001\u901a\u7528\u7f16\u7a0b\u3001\u77e5\u8bc6\u5de5\u4f5c\u3001\u667a\u80fd\u4f53\u641c\u7d22<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u7b80\u5355\u6765\u8bf4\uff0c<strong>Fable 5\u662f\u8ffd\u6c42\u6781\u81f4\u6027\u80fd\u7684\u201c\u5929\u82b1\u677f\u201d\uff0c\u800cOpus 5\u662f\u517c\u987e\u9876\u7ea7\u6027\u80fd\u4e0e\u4e00\u534a\u4ef7\u683c\u7684\u201c\u6027\u4ef7\u6bd4\u4e4b\u738b\u201d<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5c3d\u7ba1Fable 5\u5b9a\u4f4d\u66f4\u9ad8\uff0c\u4f46\u5728\u4e00\u4e9b\u5173\u952e\u57fa\u51c6\u6d4b\u8bd5\u4e2d\uff0cOpus 5\u51ed\u501f\u5176\u4f18\u5316\uff0c\u8868\u73b0\u751a\u81f3\u66f4\u4e3a\u4f18\u5f02\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Opus 5\u9886\u5148\u7684\u9886\u57df<\/strong>\uff1a\n<ul class=\"wp-block-list\">\n<li><strong>\u8f6f\u4ef6\u5de5\u7a0b\u4e0e\u7f16\u7a0b<\/strong>\uff1a\u5728&nbsp;<strong>Frontier-Bench v0.1<\/strong>&nbsp;(43.3% vs 33.7%) \u548c&nbsp;<strong>SWE-bench Verified<\/strong>&nbsp;(96.0% vs 95.0%) \u4e0a\u5f97\u5206\u66f4\u9ad8<a href=\"https:\/\/www.datacamp.com\/zh\/blog\/claude-opus-5-vs-claude-fable-5\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a>\u3002<\/li>\n\n\n\n<li><strong>\u77e5\u8bc6\u5de5\u4f5c<\/strong>\uff1a\u5728&nbsp;<strong>GDPval-AA v2<\/strong>&nbsp;\u6d4b\u8bd5\u4e2d\uff0cElo\u5f97\u5206\uff081861\uff09\u9886\u5148\u4e8eFable 5\uff081747\uff09<a href=\"https:\/\/www.datacamp.com\/zh\/blog\/claude-opus-5-vs-claude-fable-5\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a>\u3002<\/li>\n\n\n\n<li><strong>\u667a\u80fd\u4f53\u4efb\u52a1<\/strong>\uff1a\u5728\u9700\u8981\u4e3b\u52a8\u641c\u7d22\u3001\u8c03\u7528\u5de5\u5177\u548c\u9a8c\u8bc1\u7ed3\u679c\u7684\u4efb\u52a1\u4e0a\u8868\u73b0\u66f4\u51fa\u8272<a href=\"https:\/\/36kr.com\/p\/3911060757043073\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a>\u3002<\/li>\n\n\n\n<li><strong>\u7efc\u5408\u667a\u80fd<\/strong>\uff1a\u5728\u7b2c\u4e09\u65b9\u673a\u6784Artificial Analysis\u76849\u9879\u7efc\u5408\u6d4b\u8bd5\u4e2d\uff0c\u4ee561\u5206\u5fae\u5f31\u9886\u5148Fable 5\u768460\u5206\u3002<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Fable 5\u4fdd\u6301\u4f18\u52bf\u7684\u9886\u57df<\/strong>\uff1a\n<ul class=\"wp-block-list\">\n<li><strong>\u590d\u6742\u7f16\u7801<\/strong>\uff1a\u5728&nbsp;<strong>SWE-bench Pro<\/strong>&nbsp;\u4e0a\u4ee580.3%\u7684\u6210\u7ee9\u7565\u80dcOpus 5\u768479.2%<a href=\"https:\/\/www.datacamp.com\/zh\/blog\/claude-opus-5-vs-claude-fable-5\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a>\u3002<\/li>\n\n\n\n<li><strong>\u7eaf\u6a21\u578b\u80fd\u529b<\/strong>\uff1a\u5728\u4e0d\u501f\u52a9\u5916\u90e8\u5de5\u5177\u7684\u60c5\u51b5\u4e0b\uff0c\u5904\u7406\u6cd5\u5f8b\u95ee\u9898\u3001\u591a\u5b66\u79d1\u63a8\u7406\u7b49\u4efb\u52a1\u65f6\uff0c\u5c55\u73b0\u51fa\u66f4\u5f3a\u7684\u201c\u7eaf\u6a21\u578b\u201d\u5b9e\u529b<a href=\"https:\/\/me.pcmag.com\/en\/ai\/37745\/claude-opus-5-is-here-tops-fable-5-on-agentic-search-anthropic-says\" target=\"_blank\" rel=\"noreferrer noopener\"><\/a>\u3002<\/li>\n\n\n\n<li><strong>\u9ad8\u98ce\u9669\u4efb\u52a1<\/strong>\uff1a\u5728\u8fdb\u653b\u6027\u7f51\u7edc\u5b89\u5168\u6f0f\u6d1e\u6316\u6398\u7b49\u4efb\u52a1\u4e0a\uff0c\u80fd\u529b\u8fdc\u8d85Opus 5<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u503c\u5f97\u6ce8\u610f\u7684\u662f\uff0c<strong>Claude Opus 5 \u5bf9\u514d\u8d39\u7528\u6237\u4e0d\u53ef\u7528\u3002<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0b\u9762\u6211\u4ee5\u7ecf\u5178\u6e38\u620f\u9a6c\u91cc\u5965\u533b\u751f\uff0c\u7ed9\u76f8\u540c\u7684\u63d0\u793a\u8bcd\uff0c\u6a2a\u5411\u5bf9\u6bd4\u4e00\u4e0bclaude\u4e0edeepseek\u7684\u7f16\u7a0b\u80fd\u529b\uff1a<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><noscript><img decoding=\"async\" width=\"474\" height=\"371\" src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-13.png\" alt class=\"wp-image-7966\" srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-13.png 474w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-13-300x235.png 300w\" sizes=\"(max-width: 474px) 100vw, 474px\"><\/noscript><img decoding=\"async\" width=\"474\" height=\"371\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20474%20371%22%3E%3C%2Fsvg%3E\" alt class=\"wp-image-7966 lazyload\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20474%20371%22%3E%3C%2Fsvg%3E 474w\" sizes=\"(max-width: 474px) 100vw, 474px\" data-srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-13.png 474w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-13-300x235.png 300w\" data-src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-13.png\"><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u4e24\u4e2a\u95ee\u9898\u5747\u662f<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">\u6df1\u523b\u5206\u6790\u9a6c\u91cc\u5965\u533b\u751f\u8fd9\u4e2a\u6e38\u620f\uff0c\u5199\u4e00\u4e2a\u4ea7\u54c1\u5206\u6790\u7684\u6587\u6863<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u6839\u636e\u8fd9\u4e2a\u5206\u6790\uff0c\u7528python\u5199\u4e00\u4e2aexe\u6e38\u620f\u8f6f\u4ef6\u6765\u5b9e\u73b0\u8be5\u529f\u80fd\u548c\u6548\u679c<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd9\u662fdeepseek\u7684\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"805\" height=\"644\" src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-7.png\" alt class=\"wp-image-7959\" srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-7.png 805w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-7-300x240.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-7-768x614.png 768w\" sizes=\"(max-width: 805px) 100vw, 805px\"><\/noscript><img decoding=\"async\" width=\"805\" height=\"644\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20805%20644%22%3E%3C%2Fsvg%3E\" alt class=\"wp-image-7959 lazyload\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20805%20644%22%3E%3C%2Fsvg%3E 805w\" sizes=\"(max-width: 805px) 100vw, 805px\" data-srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-7.png 805w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-7-300x240.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-7-768x614.png 768w\" data-src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-7.png\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u6839\u636e\u4e0a\u9762\u7684\u5206\u6790\u6587\u6863\u5199\u7684python\u6e90\u7801\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import pygame\nimport random\nimport sys\n\n# \u521d\u59cb\u5316 Pygame\npygame.init()\n\n# ---------------------------- \u6e38\u620f\u5e38\u91cf ----------------------------\n# \u7f51\u683c\u5c3a\u5bf8 (\u7ecf\u5178 8x16)\nGRID_WIDTH = 8\nGRID_HEIGHT = 16\nCELL_SIZE = 30  # \u50cf\u7d20\n\n# \u7a97\u53e3\u5c3a\u5bf8 (\u5de6\u8fb9\u754c\u7559\u767d\u7528\u4e8e\u663e\u793a\u836f\u54c1\u74f6, \u53f3\u4fa7\u7559\u767d\u663e\u793a\u4fe1\u606f)\nMARGIN_LEFT = 30\nMARGIN_TOP = 30\nWINDOW_WIDTH = MARGIN_LEFT + GRID_WIDTH * CELL_SIZE + 200\nWINDOW_HEIGHT = MARGIN_TOP + GRID_HEIGHT * CELL_SIZE + 30\n\n# \u989c\u8272\u6620\u5c04 (0=\u7a7a, 1=\u7ea2, 2=\u9ec4, 3=\u84dd)\nCOLORS = {\n    0: (20, 20, 30),  # \u9ed1\u8272\u80cc\u666f\n    1: (255, 60, 60),  # \u7ea2\u8272\u75c5\u6bd2\n    2: (255, 235, 60),  # \u9ec4\u8272\u75c5\u6bd2\n    3: (60, 180, 255),  # \u84dd\u8272\u75c5\u6bd2\n    4: (200, 200, 200)  # \u80f6\u56ca\u767d\u8272\u8fb9\u6846\n}\n\n# \u6e38\u620f\u901f\u5ea6 (\u5e27\u6570\u95f4\u9694, \u6570\u503c\u8d8a\u5927\u4e0b\u843d\u8d8a\u6162)\nBASE_SPEED = 30\nSPEED_LEVELS = {1: 30, 2: 25, 3: 20, 4: 15, 5: 10, 6: 6, 7: 4, 8: 2}\n\n\n# ---------------------------- \u6e38\u620f\u7c7b ----------------------------\nclass DrMarioGame:\n    def __init__(self):\n        self.screen = pygame.display.set_mode((WINDOW_WIDTH, WINDOW_HEIGHT))\n        pygame.display.set_caption(\"\u9a6c\u91cc\u5965\u533b\u751f - Python\u7248\")\n        self.clock = pygame.time.Clock()\n        self.font = pygame.font.SysFont(\"simhei\", 20, bold=True)\n\n        self.reset_game()\n\n    def reset_game(self):\n        \"\"\"\u91cd\u7f6e\u6e38\u620f\u72b6\u6001\"\"\"\n        # \u26a0\ufe0f \u6240\u6709\u5c5e\u6027\u5fc5\u987b\u5728\u8fd9\u65f6\u5b9a\u4e49\uff0c\u56e0\u4e3a _spawn_capsule \u4f1a\u7528\u5230\u5b83\u4eec\n        self.game_over = False\n        self.win = False\n        self.score = 0\n        self.level = 1\n        self.lines_cleared = 0\n        self.fall_counter = 0\n        self.current_capsule = None\n        self.clearing_cells = &#91;]\n        self.clear_timer = 0\n\n        # \u7f51\u683c\u6570\u636e\n        self.grid = &#91;&#91;0 for _ in range(GRID_WIDTH)] for _ in range(GRID_HEIGHT)]\n\n        # \u751f\u6210\u75c5\u6bd2 (\u968f\u673a\u5206\u5e03\u5728\u5e95\u90e8 8 \u884c)\n        self.virus_count = 0\n        for r in range(8, GRID_HEIGHT):\n            for c in range(GRID_WIDTH):\n                if random.random() &lt; 0.70:\n                    color = random.choice(&#91;1, 2, 3])\n                    self.grid&#91;r]&#91;c] = color\n                    self.virus_count += 1\n\n        if self.virus_count &lt; 15:\n            for _ in range(20):\n                r = random.randint(8, GRID_HEIGHT - 1)\n                c = random.randint(0, GRID_WIDTH - 1)\n                if self.grid&#91;r]&#91;c] == 0:\n                    self.grid&#91;r]&#91;c] = random.choice(&#91;1, 2, 3])\n                    self.virus_count += 1\n\n        # \u751f\u6210\u7b2c\u4e00\u4e2a\u80f6\u56ca\n        self.next_colors = self._generate_capsule_colors()\n        self._spawn_capsule()  # \u6b64\u65f6 self.game_over \u7b49\u5df2\u7ecf\u5b9a\u4e49\u597d\u4e86\n\n    def _generate_capsule_colors(self):\n        \"\"\"\u751f\u6210\u80f6\u56ca\u7684\u4e24\u4e2a\u989c\u8272 (\u7ea2\u9ec4\u84dd\u968f\u673a\u7ec4\u5408)\"\"\"\n        c1 = random.choice(&#91;1, 2, 3])\n        c2 = random.choice(&#91;1, 2, 3])\n        # \u907f\u514d\u751f\u6210\u4e24\u4e2a\u5b8c\u5168\u4e00\u6837\u7684\u989c\u8272 (\u8ba9\u6e38\u620f\u66f4\u6709\u7b56\u7565\u6027)\n        while c2 == c1:\n            c2 = random.choice(&#91;1, 2, 3])\n        return &#91;c1, c2]\n\n    def _spawn_capsule(self):\n        \"\"\"\u5728\u9876\u90e8\u4e2d\u95f4\u751f\u6210\u65b0\u80f6\u56ca\"\"\"\n        if self.game_over or self.win:\n            return\n\n        colors = self.next_colors\n        self.next_colors = self._generate_capsule_colors()\n\n        # \u521d\u59cb\u4f4d\u7f6e: \u7b2c0\u884c, \u7b2c3\u5217\u548c\u7b2c4\u5217 (\u6c34\u5e73\u653e\u7f6e)\n        c1 = (0, 3, colors&#91;0])\n        c2 = (0, 4, colors&#91;1])\n        self.current_capsule = &#91;c1, c2]\n\n        # \u68c0\u6d4b\u662f\u5426\u78b0\u649e (\u751f\u6210\u5373\u6b7b)\n        if self._check_collision(self.current_capsule):\n            self.game_over = True\n            self.current_capsule = None\n\n    def _check_collision(self, capsule_parts):\n        \"\"\"\u68c0\u6d4b\u80f6\u56ca\u662f\u5426\u4e0e\u8fb9\u754c\u6216\u5df2\u6709\u65b9\u5757\u91cd\u53e0\"\"\"\n        for r, c, color in capsule_parts:\n            if c &lt; 0 or c &gt;= GRID_WIDTH or r &gt;= GRID_HEIGHT:\n                return True\n            if r &gt;= 0 and self.grid&#91;r]&#91;c] != 0:\n                return True\n        return False\n\n    def _rotate_capsule(self):\n        \"\"\"\u65cb\u8f6c\u80f6\u56ca (\u987a\u65f6\u9488\u65cb\u8f6c, \u4ee5\u7b2c\u4e00\u4e2a\u5757\u4e3a\u8f74\u5fc3)\"\"\"\n        if not self.current_capsule or self.game_over or self.win:\n            return\n\n        # \u83b7\u53d6\u8f74\u5fc3 (\u7b2c\u4e00\u4e2a\u5757)\n        r0, c0, color0 = self.current_capsule&#91;0]\n        r1, c1, color1 = self.current_capsule&#91;1]\n\n        # \u8ba1\u7b97\u76f8\u5bf9\u4f4d\u7f6e\n        dr = r1 - r0\n        dc = c1 - c0\n\n        # \u987a\u65f6\u9488\u65cb\u8f6c: (dr, dc) -&gt; (dc, -dr)\n        new_dr = dc\n        new_dc = -dr\n        new_r1 = r0 + new_dr\n        new_c1 = c0 + new_dc\n\n        new_capsule = &#91;(r0, c0, color0), (new_r1, new_c1, color1)]\n\n        # \u5982\u679c\u65cb\u8f6c\u540e\u4e0d\u78b0\u649e, \u5219\u5e94\u7528\n        if not self._check_collision(new_capsule):\n            self.current_capsule = new_capsule\n\n    def _move_capsule(self, dc):\n        \"\"\"\u5de6\u53f3\u79fb\u52a8\u80f6\u56ca\"\"\"\n        if not self.current_capsule or self.game_over or self.win:\n            return\n\n        new_capsule = &#91;(r, c + dc, color) for r, c, color in self.current_capsule]\n        if not self._check_collision(new_capsule):\n            self.current_capsule = new_capsule\n\n    def _drop_capsule(self):\n        \"\"\"\u786c\u964d: \u76f4\u63a5\u843d\u5230\u5e95\"\"\"\n        if not self.current_capsule or self.game_over or self.win:\n            return\n        while not self._check_collision(&#91;(r + 1, c, color) for r, c, color in self.current_capsule]):\n            self.current_capsule = &#91;(r + 1, c, color) for r, c, color in self.current_capsule]\n        self._lock_capsule()\n\n    def _move_down(self):\n        \"\"\"\u4e0b\u843d\u4e00\u683c (\u7531\u8ba1\u65f6\u5668\u8c03\u7528)\"\"\"\n        if not self.current_capsule or self.game_over or self.win:\n            return\n\n        new_capsule = &#91;(r + 1, c, color) for r, c, color in self.current_capsule]\n        if not self._check_collision(new_capsule):\n            self.current_capsule = new_capsule\n        else:\n            self._lock_capsule()\n\n    def _lock_capsule(self):\n        \"\"\"\u5c06\u80f6\u56ca\u56fa\u5b9a\u5230\u7f51\u683c, \u7136\u540e\u89e6\u53d1\u6d88\u9664\u68c0\u6d4b\"\"\"\n        if not self.current_capsule:\n            return\n\n        for r, c, color in self.current_capsule:\n            if 0 &lt;= r &lt; GRID_HEIGHT and 0 &lt;= c &lt; GRID_WIDTH:\n                self.grid&#91;r]&#91;c] = color\n\n        self.current_capsule = None\n\n        # \u6267\u884c\u6d88\u9664\u548c\u8fde\u9501\n        self._clear_matches()\n\n    def _clear_matches(self):\n        \"\"\"\u6d88\u9664\u6240\u67094\u8fde\u4ee5\u4e0a\u7684\u540c\u8272\u5757 (\u5305\u542b\u8fde\u9501)\"\"\"\n        cleared_any = False\n\n        while True:\n            to_clear = set()\n\n            # 1. \u6c34\u5e73\u626b\u63cf (\u68c0\u67e5\u6bcf\u884c\u8fde\u7eed4\u4e2a\u540c\u8272)\n            for r in range(GRID_HEIGHT):\n                c = 0\n                while c &lt; GRID_WIDTH:\n                    if self.grid&#91;r]&#91;c] == 0:\n                        c += 1\n                        continue\n                    color = self.grid&#91;r]&#91;c]\n                    count = 0\n                    # \u5411\u53f3\u6570\n                    while c + count &lt; GRID_WIDTH and self.grid&#91;r]&#91;c + count] == color:\n                        count += 1\n                    if count &gt;= 4:\n                        for i in range(count):\n                            to_clear.add((r, c + i))\n                    c += count if count &gt; 1 else 1\n\n            # 2. \u5782\u76f4\u626b\u63cf (\u68c0\u67e5\u6bcf\u5217\u8fde\u7eed4\u4e2a\u540c\u8272)\n            for c in range(GRID_WIDTH):\n                r = 0\n                while r &lt; GRID_HEIGHT:\n                    if self.grid&#91;r]&#91;c] == 0:\n                        r += 1\n                        continue\n                    color = self.grid&#91;r]&#91;c]\n                    count = 0\n                    while r + count &lt; GRID_HEIGHT and self.grid&#91;r + count]&#91;c] == color:\n                        count += 1\n                    if count &gt;= 4:\n                        for i in range(count):\n                            to_clear.add((r + i, c))\n                    r += count if count &gt; 1 else 1\n\n            # \u5982\u679c\u6ca1\u6709\u53ef\u6d88\u9664\u7684, \u9000\u51fa\u5faa\u73af\n            if not to_clear:\n                break\n\n            # \u6d88\u9664\u65b9\u5757\u5e76\u8ba1\u6570\n            cleared_any = True\n            virus_eliminated = 0\n            for r, c in to_clear:\n                if self.grid&#91;r]&#91;c] in &#91;1, 2, 3]:\n                    virus_eliminated += 1\n                self.grid&#91;r]&#91;c] = 0\n\n            self.virus_count -= virus_eliminated\n            self.lines_cleared += len(to_clear) \/\/ 4  # \u7c97\u7565\u8ba1\u884c\n            self.score += virus_eliminated * 10 * self.level\n\n            # \u66f4\u65b0\u7b49\u7ea7 (\u6bcf\u6d88\u9664 20 \u4e2a\u75c5\u6bd2\u53471\u7ea7)\n            self.level = min(8, 1 + self.lines_cleared \/\/ 4)\n\n            # 3. \u7269\u7406\u4e0b\u843d (\u586b\u8865\u7a7a\u6d1e)\n            for c in range(GRID_WIDTH):\n                # \u4ece\u4e0b\u5f80\u4e0a\n                write_row = GRID_HEIGHT - 1\n                for r in range(GRID_HEIGHT - 1, -1, -1):\n                    if self.grid&#91;r]&#91;c] != 0:\n                        self.grid&#91;write_row]&#91;c] = self.grid&#91;r]&#91;c]\n                        if write_row != r:\n                            self.grid&#91;r]&#91;c] = 0\n                        write_row -= 1\n\n            # \u68c0\u67e5\u80dc\u5229\u6761\u4ef6\n            if self.virus_count == 0:\n                self.win = True\n                self.current_capsule = None\n                return\n\n        # \u6d88\u9664\u7ed3\u675f\u540e, \u751f\u6210\u4e0b\u4e00\u4e2a\u80f6\u56ca\n        if not cleared_any:\n            # \u5982\u679c\u6ca1\u6709\u6d88\u9664\u4efb\u4f55\u4e1c\u897f, \u4f46\u9501\u5b9a\u4e86\u80f6\u56ca, \u7ee7\u7eed\u751f\u6210\n            pass\n\n        # \u751f\u6210\u65b0\u80f6\u56ca (\u5982\u679c\u6e38\u620f\u672a\u7ed3\u675f)\n        if not self.game_over and not self.win:\n            self._spawn_capsule()\n            # \u751f\u6210\u65f6\u68c0\u67e5\u662f\u5426\u78b0\u649e (\u6e38\u620f\u7ed3\u675f)\n            if self.current_capsule and self._check_collision(self.current_capsule):\n                self.game_over = True\n                self.current_capsule = None\n\n    # ---------------------------- \u6e32\u67d3 ----------------------------\n    def draw(self):\n        self.screen.fill((10, 10, 20))\n\n        # \u7ed8\u5236\u836f\u74f6\u80cc\u666f (\u5706\u89d2\u77e9\u5f62\u611f\u89c9)\n        pygame.draw.rect(self.screen, (30, 40, 50),\n                         (MARGIN_LEFT - 10, MARGIN_TOP - 10,\n                          GRID_WIDTH * CELL_SIZE + 20, GRID_HEIGHT * CELL_SIZE + 20),\n                         border_radius=15)\n\n        # \u7ed8\u5236\u7f51\u683c\u7ebf (\u6de1\u6de1\u7684)\n        for r in range(GRID_HEIGHT):\n            for c in range(GRID_WIDTH):\n                x = MARGIN_LEFT + c * CELL_SIZE\n                y = MARGIN_TOP + r * CELL_SIZE\n                # \u683c\u5b50\u80cc\u666f\n                pygame.draw.rect(self.screen, (25, 30, 40),\n                                 (x, y, CELL_SIZE - 1, CELL_SIZE - 1),\n                                 border_radius=2)\n\n        # \u7ed8\u5236\u75c5\u6bd2\u548c\u56fa\u5b9a\u80f6\u56ca\n        for r in range(GRID_HEIGHT):\n            for c in range(GRID_WIDTH):\n                val = self.grid&#91;r]&#91;c]\n                if val != 0:\n                    x = MARGIN_LEFT + c * CELL_SIZE + 2\n                    y = MARGIN_TOP + r * CELL_SIZE + 2\n                    color = COLORS&#91;val]\n                    # \u753b\u5706\u89d2\u65b9\u5757 (\u5e26\u9ad8\u5149\u6548\u679c)\n                    pygame.draw.rect(self.screen, color,\n                                     (x, y, CELL_SIZE - 4, CELL_SIZE - 4),\n                                     border_radius=6)\n                    # \u9ad8\u5149\n                    pygame.draw.rect(self.screen,\n                                     (min(255, color&#91;0] + 60), min(255, color&#91;1] + 60), min(255, color&#91;2] + 60)),\n                                     (x + 2, y + 2, (CELL_SIZE - 4) \/\/ 2, 2),\n                                     border_radius=2)\n\n        # \u7ed8\u5236\u5f53\u524d\u6d3b\u52a8\u80f6\u56ca\n        if self.current_capsule:\n            for r, c, color in self.current_capsule:\n                if r &gt;= 0:\n                    x = MARGIN_LEFT + c * CELL_SIZE + 2\n                    y = MARGIN_TOP + r * CELL_SIZE + 2\n                    pygame.draw.rect(self.screen, COLORS&#91;color],\n                                     (x, y, CELL_SIZE - 4, CELL_SIZE - 4),\n                                     border_radius=6)\n                    # \u80f6\u56ca\u8fde\u63a5\u7ebf (\u8ba9\u4e24\u4e2a\u65b9\u5757\u770b\u8d77\u6765\u662f\u4e00\u4f53\u7684)\n\n        # \u7ed8\u5236\u4e0b\u4e00\u4e2a\u80f6\u56ca\u9884\u89c8\n        preview_x = MARGIN_LEFT + GRID_WIDTH * CELL_SIZE + 30\n        preview_y = MARGIN_TOP + 50\n        self.screen.blit(self.font.render(\"\u4e0b\u4e00\u4e2a:\", True, (200, 200, 200)), (preview_x, preview_y))\n        if self.next_colors:\n            for i, col in enumerate(self.next_colors):\n                px = preview_x + i * 35\n                py = preview_y + 30\n                pygame.draw.rect(self.screen, COLORS&#91;col], (px, py, 25, 25), border_radius=5)\n\n        # \u663e\u793a\u5206\u6570\u548c\u7b49\u7ea7\n        info_y = preview_y + 100\n        self.screen.blit(self.font.render(f\"\u5206\u6570: {self.score}\", True, (255, 255, 200)), (preview_x, info_y))\n        self.screen.blit(self.font.render(f\"\u7b49\u7ea7: {self.level}\", True, (255, 255, 200)), (preview_x, info_y + 30))\n        self.screen.blit(self.font.render(f\"\u75c5\u6bd2: {self.virus_count}\", True, (255, 255, 200)), (preview_x, info_y + 60))\n        self.screen.blit(self.font.render(f\"\u6d88\u9664: {self.lines_cleared}\", True, (255, 255, 200)),\n                         (preview_x, info_y + 90))\n\n        # \u64cd\u4f5c\u63d0\u793a\n        tip_y = info_y + 150\n        tips = &#91;\"\u2191\/X: \u65cb\u8f6c\", \"\u2190\/\u2192: \u79fb\u52a8\", \"\u2193: \u52a0\u901f\", \"\u7a7a\u683c: \u786c\u964d\"]\n        for i, tip in enumerate(tips):\n            self.screen.blit(self.font.render(tip, True, (150, 150, 180)), (preview_x, tip_y + i * 25))\n\n        # \u6e38\u620f\u7ed3\u675f \/ \u80dc\u5229 \u753b\u9762\n        if self.game_over:\n            overlay = pygame.Surface((WINDOW_WIDTH, WINDOW_HEIGHT), pygame.SRCALPHA)\n            overlay.fill((0, 0, 0, 180))\n            self.screen.blit(overlay, (0, 0))\n            text = self.font.render(\"\ud83d\udc8a \u6e38\u620f\u7ed3\u675f! \u6309 R \u91cd\u65b0\u5f00\u59cb\", True, (255, 100, 100))\n            self.screen.blit(text, (WINDOW_WIDTH \/\/ 2 - 150, WINDOW_HEIGHT \/\/ 2))\n        elif self.win:\n            overlay = pygame.Surface((WINDOW_WIDTH, WINDOW_HEIGHT), pygame.SRCALPHA)\n            overlay.fill((0, 0, 0, 180))\n            self.screen.blit(overlay, (0, 0))\n            text = self.font.render(\"\ud83c\udf89 \u606d\u559c! \u75c5\u6bd2\u5168\u90e8\u6d88\u706d! \u6309 R \u91cd\u65b0\u5f00\u59cb\", True, (100, 255, 100))\n            self.screen.blit(text, (WINDOW_WIDTH \/\/ 2 - 170, WINDOW_HEIGHT \/\/ 2))\n\n        pygame.display.flip()\n\n    # ---------------------------- \u4e3b\u5faa\u73af ----------------------------\n    def run(self):\n        running = True\n        while running:\n            # \u83b7\u53d6\u4e0b\u843d\u901f\u5ea6\n            speed = SPEED_LEVELS.get(self.level, 2)\n\n            for event in pygame.event.get():\n                if event.type == pygame.QUIT:\n                    running = False\n                    pygame.quit()\n                    sys.exit()\n\n                if event.type == pygame.KEYDOWN:\n                    if event.key == pygame.K_r:\n                        self.reset_game()\n                        continue\n\n                    if self.game_over or self.win:\n                        continue\n\n                    if event.key == pygame.K_LEFT:\n                        self._move_capsule(-1)\n                    elif event.key == pygame.K_RIGHT:\n                        self._move_capsule(1)\n                    elif event.key == pygame.K_UP or event.key == pygame.K_x:\n                        self._rotate_capsule()\n                    elif event.key == pygame.K_DOWN:\n                        self._move_down()  # \u8f6f\u964d\u4e00\u6b65\n                    elif event.key == pygame.K_SPACE:\n                        self._drop_capsule()\n\n            # \u81ea\u52a8\u4e0b\u843d (\u975e\u6e38\u620f\u7ed3\u675f\/\u80dc\u5229\u72b6\u6001)\n            if not self.game_over and not self.win:\n                self.fall_counter += 1\n                if self.fall_counter &gt;= speed:\n                    self.fall_counter = 0\n                    self._move_down()\n\n            self.draw()\n            self.clock.tick(60)  # 60\u5e27\n\n\n# ---------------------------- \u542f\u52a8 ----------------------------\nif __name__ == \"__main__\":\n    game = DrMarioGame()\n    game.run()<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u901a\u8fc7\u5728\u547d\u4ee4\u884c\u6267\u884c<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;pip install pygame pyinstaller<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5b89\u88c5\u6253\u5305\u8f6f\u4ef6<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u6267\u884c\u6253\u5305\u547d\u4ee4<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&nbsp;pyinstaller --onefile --windowed --name=\"\u9a6c\u91cc\u5965\u533b\u751f\" dr_mario.py<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u6700\u540e\u6253\u5f00dist\u4e2d\u7684exe\u6587\u4ef6\u5373\u53ef\u3002\u4e0b\u9762\u662f\u751f\u6210\u7684\u754c\u9762\u3002<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><noscript><img decoding=\"async\" width=\"472\" height=\"572\" src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/b91c70299cfbf3626b1b7b531e5e1612.png\" alt class=\"wp-image-7961\" srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/b91c70299cfbf3626b1b7b531e5e1612.png 472w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/b91c70299cfbf3626b1b7b531e5e1612-248x300.png 248w\" sizes=\"(max-width: 472px) 100vw, 472px\"><\/noscript><img decoding=\"async\" width=\"472\" height=\"572\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20472%20572%22%3E%3C%2Fsvg%3E\" alt class=\"wp-image-7961 lazyload\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20472%20572%22%3E%3C%2Fsvg%3E 472w\" sizes=\"(max-width: 472px) 100vw, 472px\" data-srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/b91c70299cfbf3626b1b7b531e5e1612.png 472w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/b91c70299cfbf3626b1b7b531e5e1612-248x300.png 248w\" data-src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/b91c70299cfbf3626b1b7b531e5e1612.png\"><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u4ece\u6e90\u7801\u6765\u770bdeepseek\u6700\u4e3b\u8981\u901a\u8fc7\u7b97\u6cd5\u903b\u8f91\u5b9e\u73b0\u4e86\u540c\u82724\u4e2a\u8fde\u7eed\u7684\u6d88\u9664\u529f\u80fd\uff0c\u5e76\u968f\u7740\u65f6\u95f4\u7684\u63a8\u79fb\u4e0b\u843d\u901f\u5ea6\u9010\u6e10\u52a0\u5feb\u3002\u9664\u6b64\u4e4b\u5916\u518d\u65e0\u5176\u4ed6\u3002\u60f3\u8bfb\u7b80\u5355<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u6211\u7ed9claude opus5\u540c\u6837\u7684\u63d0\u793a\u8bcd\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"896\" height=\"709\" src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-9.png\" alt class=\"wp-image-7962\" srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-9.png 896w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-9-300x237.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-9-768x608.png 768w\" sizes=\"(max-width: 896px) 100vw, 896px\"><\/noscript><img decoding=\"async\" width=\"896\" height=\"709\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20896%20709%22%3E%3C%2Fsvg%3E\" alt class=\"wp-image-7962 lazyload\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20896%20709%22%3E%3C%2Fsvg%3E 896w\" sizes=\"(max-width: 896px) 100vw, 896px\" data-srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-9.png 896w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-9-300x237.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-9-768x608.png 768w\" data-src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-9.png\"><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"917\" height=\"643\" src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-10.png\" alt class=\"wp-image-7963\" srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-10.png 917w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-10-300x210.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-10-768x539.png 768w\" sizes=\"(max-width: 917px) 100vw, 917px\"><\/noscript><img decoding=\"async\" width=\"917\" height=\"643\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20917%20643%22%3E%3C%2Fsvg%3E\" alt class=\"wp-image-7963 lazyload\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20917%20643%22%3E%3C%2Fsvg%3E 917w\" sizes=\"(max-width: 917px) 100vw, 917px\" data-srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-10.png 917w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-10-300x210.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-10-768x539.png 768w\" data-src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-10.png\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u7ecf\u8fc7\u5927\u698240\u5206\u949f\u7684\u5206\u6790\u624d\u7ed9\u51fa\u7ed3\u679c\u8fd9\u662f\u751f\u6210\u7684\u6e38\u620f\u9996\u9875\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"1002\" height=\"692\" src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-11.png\" alt class=\"wp-image-7964\" srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-11.png 1002w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-11-300x207.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-11-768x530.png 768w\" sizes=\"(max-width: 1002px) 100vw, 1002px\"><\/noscript><img decoding=\"async\" width=\"1002\" height=\"692\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201002%20692%22%3E%3C%2Fsvg%3E\" alt class=\"wp-image-7964 lazyload\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201002%20692%22%3E%3C%2Fsvg%3E 1002w\" sizes=\"(max-width: 1002px) 100vw, 1002px\" data-srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-11.png 1002w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-11-300x207.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-11-768x530.png 768w\" data-src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-11.png\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u6e38\u620f\u6a21\u5f0f\u5206\u4e3a\u4e86\u5355\u4eba\u95ef\u5173\u3001\u53cc\u4eba\u6a21\u5f0f\u3001\u5bf9\u6218\u7535\u8111\u3001\u5bf9\u6218\u53cc\u4eba\u3001\u6bcf\u65e5\u6311\u6218\uff0c\u4e0b\u9762\u662f\u5355\u4eba\u95ef\u5173\u7684\u622a\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"1002\" height=\"692\" src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-12.png\" alt class=\"wp-image-7965\" srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-12.png 1002w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-12-300x207.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-12-768x530.png 768w\" sizes=\"(max-width: 1002px) 100vw, 1002px\"><\/noscript><img decoding=\"async\" width=\"1002\" height=\"692\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201002%20692%22%3E%3C%2Fsvg%3E\" alt class=\"wp-image-7965 lazyload\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201002%20692%22%3E%3C%2Fsvg%3E 1002w\" sizes=\"(max-width: 1002px) 100vw, 1002px\" data-srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-12.png 1002w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-12-300x207.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-12-768x530.png 768w\" data-src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-12.png\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u6e38\u620f\u7684\u753b\u9762\u6027\u975e\u5e38\u8fd8\u539f\u4e86\u539f\u6709\u6e38\u620f\u754c\u9762\uff0c\u8fd8\u6709\u52a8\u6001\u7684\u6548\u679c\u548c\u97f3\u6548\uff0c\u4e5f\u975e\u5e38\u5951\u5408\u3002\u5f53\u7136\u4e5f\u53ef\u4ee5\u8c03\u6574\u96be\u5ea6\u548c\u5173\u5361\uff0c\u96be\u5ea6\u8d8a\u9ad8\u4e0b\u843d\u901f\u5ea6\u8d8a\u5feb\uff0c\u5173\u5361\u8d8a\u9ad8\uff0c\u75c5\u6bd2\u6570\u91cf\u8d8a\u591a\uff0c\u8fd9\u662f20\u5173\u7684\u75c5\u6bd2\u5206\u5e03\uff0c\u5bc6\u5bc6\u9ebb\u9ebb\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"1002\" height=\"692\" src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-14.png\" alt class=\"wp-image-7967\" srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-14.png 1002w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-14-300x207.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-14-768x530.png 768w\" sizes=\"(max-width: 1002px) 100vw, 1002px\"><\/noscript><img decoding=\"async\" width=\"1002\" height=\"692\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201002%20692%22%3E%3C%2Fsvg%3E\" alt class=\"wp-image-7967 lazyload\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201002%20692%22%3E%3C%2Fsvg%3E 1002w\" sizes=\"(max-width: 1002px) 100vw, 1002px\" data-srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-14.png 1002w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-14-300x207.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-14-768x530.png 768w\" data-src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-14.png\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f30\u8ba1\u77e5\u9053\u4f60\u8fc7\u4e0d\u53bb\uff0cclaude\u8fd8\u201d\u8d34\u5fc3\u201c\u7684\u7ed9\u4f60\u63d0\u4f9b\u4e86\u4f5c\u5f0a\u9762\u677f\uff0c\u901a\u8fc7\u53cc\u51fbshift\u8c03\u51fa\u3002\u5305\u62ec\u76f4\u63a5\u8fc7\u5173\u3001\u6e05\u63895\u53ea\u75c5\u6bd2\u3001\u6e05\u7a7a\u80f6\u56ca\u5783\u573e\u7b49\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"1002\" height=\"692\" src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-15.png\" alt class=\"wp-image-7968\" srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-15.png 1002w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-15-300x207.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-15-768x530.png 768w\" sizes=\"(max-width: 1002px) 100vw, 1002px\"><\/noscript><img decoding=\"async\" width=\"1002\" height=\"692\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201002%20692%22%3E%3C%2Fsvg%3E\" alt class=\"wp-image-7968 lazyload\" srcset=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201002%20692%22%3E%3C%2Fsvg%3E 1002w\" sizes=\"(max-width: 1002px) 100vw, 1002px\" data-srcset=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-15.png 1002w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-15-300x207.png 300w, https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-15-768x530.png 768w\" data-src=\"https:\/\/www.xinyixx.com\/wp-content\/uploads\/2026\/07\/image-15.png\"><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u611f\u5174\u8da3\u7684\u540c\u5b66\u53ef\u4ee5\u5728\u6211\u7684GitHub\u4e3b\u9875\u590d\u523b\u8be5\u9879\u76ee\uff1a<a href=\"https:\/\/github.com\/ghostgorge\/DrMarioClone\">ghostgorge\/DrMarioClone<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4f17\u6240\u5468\u77e5\uff0cclaude\u53d1\u5e03\u4e86\u6700\u65b0\u7684opus5\u6a21\u578b\uff0c\u4e0b\u8868\u5219\u662f\u4e24\u8005\u7684\u5bf9\u6bd4\uff1a \u7279\u6027 Claude Fable 5 C [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[15,10],"tags":[269,464],"class_list":["post-7958","post","type-post","status-publish","format-standard","hentry","category-games","category-coding","tag-claude","tag-deepseek","entry"],"_links":{"self":[{"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/posts\/7958","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/comments?post=7958"}],"version-history":[{"count":1,"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/posts\/7958\/revisions"}],"predecessor-version":[{"id":7969,"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/posts\/7958\/revisions\/7969"}],"wp:attachment":[{"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/media?parent=7958"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/categories?post=7958"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.xinyixx.com\/index.php\/wp-json\/wp\/v2\/tags?post=7958"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}