{"id":42901,"date":"2025-07-29T07:17:12","date_gmt":"2025-07-28T22:17:12","guid":{"rendered":"https:\/\/techgym.jp\/?p=42901"},"modified":"2025-07-29T07:17:16","modified_gmt":"2025-07-28T22:17:16","slug":"functiontype","status":"publish","type":"post","link":"https:\/\/techgym.jp\/column\/functiontype\/","title":{"rendered":"Python\u95a2\u6570\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u5165\u9580 &#8211; map\u30fbfilter\u30fbreduce\u304b\u3089\u59cb\u3081\u308b\u5b9f\u8df5\u30ac\u30a4\u30c9"},"content":{"rendered":"\n<p>\u00a0<\/p>\n<h2>\u95a2\u6570\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3068\u306f\uff1f\u57fa\u672c\u6982\u5ff5\u30925\u5206\u3067\u7406\u89e3<\/h2>\n<p>**\u95a2\u6570\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\uff08Functional Programming\uff09**\u306f\u3001\u95a2\u6570\u3092\u4e2d\u5fc3\u3068\u3057\u305f\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30d1\u30e9\u30c0\u30a4\u30e0\u3067\u3059\u3002\u30c7\u30fc\u30bf\u306e\u5909\u66f4\uff08\u526f\u4f5c\u7528\uff09\u3092\u907f\u3051\u3001\u95a2\u6570\u306e\u7d44\u307f\u5408\u308f\u305b\u3067\u554f\u984c\u3092\u89e3\u6c7a\u3057\u307e\u3059\u3002<\/p>\n<h3>\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u6307\u5411\u3068\u306e\u9055\u3044<\/h3>\n<table>\n<thead>\n<tr>\n<th>\u624b\u6cd5<\/th>\n<th>\u8003\u3048\u65b9<\/th>\n<th>\u7279\u5fb4<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u6307\u5411<\/td>\n<td>\u30c7\u30fc\u30bf + \u30e1\u30bd\u30c3\u30c9<\/td>\n<td>\u72b6\u614b\u3092\u5909\u66f4\u3059\u308b<\/td>\n<\/tr>\n<tr>\n<td>\u95a2\u6570\u578b<\/td>\n<td>\u95a2\u6570 + \u30c7\u30fc\u30bf<\/td>\n<td>\u65b0\u3057\u3044\u5024\u3092\u751f\u6210\u3059\u308b<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<pre><code class=\"language-python\"># \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u6307\u5411\u7684\nclass Calculator:\n    def __init__(self):\n        self.result = 0\n    def add(self, x):\n        self.result += x\n\n# \u95a2\u6570\u578b\u7684\ndef add(x, y):\n    return x + y\n<\/code><\/pre>\n<h2>Python\u95a2\u6570\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u306e\u57fa\u672c\u95a2\u6570<\/h2>\n<h3>1. map\u95a2\u6570 &#8211; \u30c7\u30fc\u30bf\u306e\u5909\u63db<\/h3>\n<pre><code class=\"language-python\"># \u5168\u3066\u306e\u8981\u7d20\u30922\u500d\u306b\u3059\u308b\nnumbers = [1, 2, 3, 4, 5]\ndoubled = list(map(lambda x: x * 2, numbers))\nprint(doubled)  # [2, 4, 6, 8, 10]\n<\/code><\/pre>\n<h3>2. filter\u95a2\u6570 &#8211; \u30c7\u30fc\u30bf\u306e\u7d5e\u308a\u8fbc\u307f<\/h3>\n<pre><code class=\"language-python\"># \u5076\u6570\u306e\u307f\u3092\u62bd\u51fa\nnumbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\nevens = list(filter(lambda x: x % 2 == 0, numbers))\nprint(evens)  # [2, 4, 6, 8, 10]\n<\/code><\/pre>\n<h3>3. reduce\u95a2\u6570 &#8211; \u30c7\u30fc\u30bf\u306e\u96c6\u7d04<\/h3>\n<pre><code class=\"language-python\">from functools import reduce\n\n# \u5168\u3066\u306e\u8981\u7d20\u306e\u5408\u8a08\u3092\u8a08\u7b97\nnumbers = [1, 2, 3, 4, 5]\ntotal = reduce(lambda x, y: x + y, numbers)\nprint(total)  # 15\n<\/code><\/pre>\n<h2>lambda\u5f0f\uff08\u7121\u540d\u95a2\u6570\uff09\u306e\u6d3b\u7528<\/h2>\n<h3>\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9<\/h3>\n<pre><code class=\"language-python\"># \u901a\u5e38\u306e\u95a2\u6570\u5b9a\u7fa9\ndef square(x):\n    return x ** 2\n\n# lambda\u5f0f\u3067\u540c\u3058\u51e6\u7406\nsquare = lambda x: x ** 2\nprint(square(5))  # 25\n<\/code><\/pre>\n<h3>\u5b9f\u8df5\u7684\u306a\u6d3b\u7528\u4f8b<\/h3>\n<pre><code class=\"language-python\"># \u8f9e\u66f8\u306e\u30bd\u30fc\u30c8\nstudents = [{\"name\": \"\u592a\u90ce\", \"score\": 85}, {\"name\": \"\u82b1\u5b50\", \"score\": 92}]\nsorted_students = sorted(students, key=lambda x: x[\"score\"])\nprint(sorted_students)  # \u30b9\u30b3\u30a2\u9806\u3067\u30bd\u30fc\u30c8\n<\/code><\/pre>\n<h2>\u9ad8\u968e\u95a2\u6570\u306e\u5b9f\u88c5<\/h2>\n<h3>\u95a2\u6570\u3092\u8fd4\u3059\u95a2\u6570<\/h3>\n<pre><code class=\"language-python\">def multiplier(n):\n    return lambda x: x * n\n\ndouble = multiplier(2)\ntriple = multiplier(3)\nprint(double(5))  # 10\nprint(triple(5))  # 15\n<\/code><\/pre>\n<h3>\u95a2\u6570\u3092\u5f15\u6570\u306b\u53d6\u308b\u95a2\u6570<\/h3>\n<pre><code class=\"language-python\">def apply_operation(numbers, operation):\n    return [operation(x) for x in numbers]\n\nnumbers = [1, 2, 3, 4, 5]\nsquared = apply_operation(numbers, lambda x: x**2)\nprint(squared)  # [1, 4, 9, 16, 25]\n<\/code><\/pre>\n<h2>\u30c7\u30b3\u30ec\u30fc\u30bf\u3092\u4f7f\u3063\u305f\u95a2\u6570\u578b\u30a2\u30d7\u30ed\u30fc\u30c1<\/h2>\n<h3>\u57fa\u672c\u7684\u306a\u30c7\u30b3\u30ec\u30fc\u30bf<\/h3>\n<pre><code class=\"language-python\">def timing_decorator(func):\n    import time\n    def wrapper(*args, **kwargs):\n        start = time.time()\n        result = func(*args, **kwargs)\n        print(f\"\u5b9f\u884c\u6642\u9593: {time.time() - start:.4f}\u79d2\")\n        return result\n    return wrapper\n\n@timing_decorator\ndef slow_function():\n    import time\n    time.sleep(1)\n    return \"\u5b8c\u4e86\"\n<\/code><\/pre>\n<h2>\u7d14\u7c8b\u95a2\u6570\uff08Pure Function\uff09\u306e\u5b9f\u8df5<\/h2>\n<h3>\u7d14\u7c8b\u95a2\u6570\u306e\u7279\u5fb4<\/h3>\n<pre><code class=\"language-python\"># \u2705 \u7d14\u7c8b\u95a2\u6570\uff1a\u540c\u3058\u5165\u529b\u3067\u540c\u3058\u51fa\u529b\u3001\u526f\u4f5c\u7528\u306a\u3057\ndef add(x, y):\n    return x + y\n\n# \u274c \u975e\u7d14\u7c8b\u95a2\u6570\uff1a\u5916\u90e8\u72b6\u614b\u306b\u4f9d\u5b58\nglobal_var = 10\ndef impure_add(x):\n    return x + global_var\n<\/code><\/pre>\n<h3>\u526f\u4f5c\u7528\u3092\u907f\u3051\u308b\u65b9\u6cd5<\/h3>\n<pre><code class=\"language-python\"># \u274c \u5143\u306e\u30ea\u30b9\u30c8\u3092\u5909\u66f4\ndef bad_double(numbers):\n    for i in range(len(numbers)):\n        numbers[i] *= 2\n    return numbers\n\n# \u2705 \u65b0\u3057\u3044\u30ea\u30b9\u30c8\u3092\u4f5c\u6210\ndef good_double(numbers):\n    return [x * 2 for x in numbers]\n<\/code><\/pre>\n<h2>\u5b9f\u8df5\u7684\u306a\u95a2\u6570\u578b\u30d1\u30bf\u30fc\u30f3<\/h2>\n<h3>1. \u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u51e6\u7406<\/h3>\n<pre><code class=\"language-python\">from functools import reduce\n\ndef pipe(*functions):\n    return lambda x: reduce(lambda acc, f: f(acc), functions, x)\n\n# \u6570\u5024\u30922\u500d\u3057\u3066\u30013\u3092\u8db3\u3057\u3066\u3001\u6587\u5b57\u5217\u5316\npipeline = pipe(\n    lambda x: x * 2,\n    lambda x: x + 3,\n    str\n)\nresult = pipeline(5)  # \"13\"\n<\/code><\/pre>\n<h3>2. \u30ab\u30ea\u30fc\u5316\uff08Currying\uff09<\/h3>\n<pre><code class=\"language-python\">def curry_add(x):\n    return lambda y: lambda z: x + y + z\n\nadd_5 = curry_add(5)\nadd_5_and_3 = add_5(3)\nresult = add_5_and_3(2)  # 10\n<\/code><\/pre>\n<h3>3. \u90e8\u5206\u9069\u7528<\/h3>\n<pre><code class=\"language-python\">from functools import partial\n\ndef multiply(x, y, z):\n    return x * y * z\n\n# y\u30922\u306b\u56fa\u5b9a\u3057\u305f\u95a2\u6570\u3092\u4f5c\u6210\ndouble_multiply = partial(multiply, y=2)\nresult = double_multiply(3, 4)  # 24\n<\/code><\/pre>\n<h2>\u95a2\u6570\u578b vs \u547d\u4ee4\u578b\u306e\u6bd4\u8f03<\/h2>\n<h3>\u30c7\u30fc\u30bf\u51e6\u7406\u306e\u4f8b<\/h3>\n<pre><code class=\"language-python\"># \u547d\u4ee4\u578b\u30b9\u30bf\u30a4\u30eb\ndef process_data_imperative(data):\n    result = []\n    for item in data:\n        if item &gt; 0:\n            result.append(item * 2)\n    return result\n\n# \u95a2\u6570\u578b\u30b9\u30bf\u30a4\u30eb\ndef process_data_functional(data):\n    return list(map(lambda x: x * 2, filter(lambda x: x &gt; 0, data)))\n\n# \u3055\u3089\u306b\u8aad\u307f\u3084\u3059\u304f\ndef process_data_readable(data):\n    positive = filter(lambda x: x &gt; 0, data)\n    doubled = map(lambda x: x * 2, positive)\n    return list(doubled)\n<\/code><\/pre>\n<h2>\u30a4\u30df\u30e5\u30fc\u30bf\u30d6\u30eb\uff08\u4e0d\u5909\uff09\u30c7\u30fc\u30bf\u306e\u6d3b\u7528<\/h2>\n<h3>namedtuple\u306e\u4f7f\u7528<\/h3>\n<pre><code class=\"language-python\">from collections import namedtuple\n\nPoint = namedtuple('Point', ['x', 'y'])\np1 = Point(1, 2)\np2 = p1._replace(x=3)  # \u65b0\u3057\u3044\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u4f5c\u6210\nprint(p1)  # Point(x=1, y=2)\nprint(p2)  # Point(x=3, y=2)\n<\/code><\/pre>\n<h3>dataclasses\u3067\u30a4\u30df\u30e5\u30fc\u30bf\u30d6\u30eb\u30af\u30e9\u30b9<\/h3>\n<pre><code class=\"language-python\">from dataclasses import dataclass\n\n@dataclass(frozen=True)\nclass ImmutableUser:\n    name: str\n    age: int\n\nuser = ImmutableUser(\"\u592a\u90ce\", 25)\n# user.age = 26  # \u30a8\u30e9\u30fc\uff1a\u5909\u66f4\u4e0d\u53ef\n<\/code><\/pre>\n<h2>\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3068\u6700\u9069\u5316<\/h2>\n<h3>\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3068\u306e\u7d44\u307f\u5408\u308f\u305b<\/h3>\n<pre><code class=\"language-python\"># \u30e1\u30e2\u30ea\u52b9\u7387\u7684\u306a\u51e6\u7406\ndef process_large_data(data):\n    filtered = filter(lambda x: x &gt; 100, data)\n    doubled = map(lambda x: x * 2, filtered)\n    return doubled  # \u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u3092\u8fd4\u3059\n\n# \u5fc5\u8981\u306a\u6642\u3060\u3051\u8a08\u7b97\u3055\u308c\u308b\nlarge_numbers = range(1000000)\nprocessed = process_large_data(large_numbers)\nfirst_10 = list(itertools.islice(processed, 10))\n<\/code><\/pre>\n<h2>\u3088\u304f\u3042\u308b\u9593\u9055\u3044\u3068\u5bfe\u51e6\u6cd5<\/h2>\n<h3>1. lambda\u5f0f\u306e\u904e\u5ea6\u306a\u4f7f\u7528<\/h3>\n<pre><code class=\"language-python\"># \u274c \u8aad\u307f\u306b\u304f\u3044\nresult = list(filter(lambda x: x['score'] &gt; 80 and x['age'] &lt; 30, students))\n\n# \u2705 \u8aad\u307f\u3084\u3059\u3044\ndef is_young_high_scorer(student):\n    return student['score'] &gt; 80 and student['age'] &lt; 30\n\nresult = list(filter(is_young_high_scorer, students))\n<\/code><\/pre>\n<h3>2. \u526f\u4f5c\u7528\u306e\u6df7\u5165<\/h3>\n<pre><code class=\"language-python\"># \u274c \u526f\u4f5c\u7528\u3042\u308a\ndef bad_process(items, results):\n    for item in items:\n        results.append(item * 2)  # \u5916\u90e8\u72b6\u614b\u3092\u5909\u66f4\n\n# \u2705 \u7d14\u7c8b\u95a2\u6570\ndef good_process(items):\n    return [item * 2 for item in items]\n<\/code><\/pre>\n<h2>\u5b9f\u52d9\u3067\u306e\u6d3b\u7528\u4f8b<\/h2>\n<h3>1. \u30c7\u30fc\u30bf\u5909\u63db\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3<\/h3>\n<pre><code class=\"language-python\"># JSON\u30c7\u30fc\u30bf\u306e\u51e6\u7406\nusers = [{\"name\": \"\u592a\u90ce\", \"age\": 25}, {\"name\": \"\u82b1\u5b50\", \"age\": 30}]\nadult_names = list(map(\n    lambda user: user[\"name\"],\n    filter(lambda user: user[\"age\"] &gt;= 20, users)\n))\n<\/code><\/pre>\n<h3>2. \u8a2d\u5b9a\u5024\u306e\u9069\u7528<\/h3>\n<pre><code class=\"language-python\"># \u8a2d\u5b9a\u3092\u95a2\u6570\u3068\u3057\u3066\u7ba1\u7406\ndef create_processor(config):\n    return lambda data: data * config[\"multiplier\"] + config[\"offset\"]\n\nconfig = {\"multiplier\": 2, \"offset\": 10}\nprocessor = create_processor(config)\nresult = processor(5)  # 20\n<\/code><\/pre>\n<h3>3. \u30d0\u30ea\u30c7\u30fc\u30b7\u30e7\u30f3\u51e6\u7406<\/h3>\n<pre><code class=\"language-python\">def validate_all(*validators):\n    return lambda data: all(validator(data) for validator in validators)\n\nis_valid_user = validate_all(\n    lambda user: len(user.get(\"name\", \"\")) &gt; 0,\n    lambda user: user.get(\"age\", 0) &gt; 0,\n    lambda user: \"@\" in user.get(\"email\", \"\")\n)\n<\/code><\/pre>\n<h2>\u307e\u3068\u3081\uff1a\u95a2\u6570\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u306e\u5229\u70b9<\/h2>\n<p><strong>\u30e1\u30ea\u30c3\u30c8<\/strong><\/p>\n<ul>\n<li>\u30b3\u30fc\u30c9\u306e\u518d\u5229\u7528\u6027\u304c\u9ad8\u3044<\/li>\n<li>\u30c6\u30b9\u30c8\u304c\u5bb9\u6613<\/li>\n<li>\u4e26\u5217\u51e6\u7406\u306b\u9069\u3057\u3066\u3044\u308b<\/li>\n<li>\u30d0\u30b0\u304c\u767a\u751f\u3057\u306b\u304f\u3044<\/li>\n<\/ul>\n<p><strong>\u9069\u7528\u5834\u9762<\/strong><\/p>\n<ul>\n<li>\u30c7\u30fc\u30bf\u5909\u63db\u51e6\u7406<\/li>\n<li>\u8a2d\u5b9a\u5024\u306e\u7ba1\u7406<\/li>\n<li>\u30d5\u30a3\u30eb\u30bf\u30ea\u30f3\u30b0\u30fb\u96c6\u8a08\u51e6\u7406<\/li>\n<li>\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u51e6\u7406<\/li>\n<\/ul>\n<p>\u95a2\u6570\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3092\u30de\u30b9\u30bf\u30fc\u3059\u308b\u3053\u3068\u3067\u3001\u3088\u308a\u4fdd\u5b88\u6027\u304c\u9ad8\u304f\u3001\u7406\u89e3\u3057\u3084\u3059\u3044Python\u30b3\u30fc\u30c9\u304c\u66f8\u3051\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002\u307e\u305a\u306f<code>map<\/code>\u3001<code>filter<\/code>\u3001<code>reduce<\/code>\u304b\u3089\u59cb\u3081\u3066\u3001\u5f90\u3005\u306b\u9ad8\u968e\u95a2\u6570\u3084\u30a4\u30df\u30e5\u30fc\u30bf\u30d6\u30eb\u30c7\u30fc\u30bf\u306e\u6982\u5ff5\u3092\u53d6\u308a\u5165\u308c\u3066\u3044\u304d\u307e\u3057\u3087\u3046\u3002<\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n\n\n\n<p>\u25a0\u30d7\u30ed\u30f3\u30d7\u30c8\u3060\u3051\u3067\u30aa\u30ea\u30b8\u30ca\u30eb\u30a2\u30d7\u30ea\u3092\u958b\u767a\u30fb\u516c\u958b\u3057\u3066\u307f\u305f\uff01\uff01<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"aG28nWiPNu\"><a href=\"https:\/\/techgym.jp\/column\/ori-app\/\">\u30d7\u30ed\u30f3\u30d7\u30c8\u3060\u3051\u3067\u30aa\u30ea\u30b8\u30ca\u30eb\u30a2\u30d7\u30ea\u3092\u958b\u767a\u30fb\u516c\u958b\u3057\u3066\u307f\u305f\uff01\uff01<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"&#8220;\u30d7\u30ed\u30f3\u30d7\u30c8\u3060\u3051\u3067\u30aa\u30ea\u30b8\u30ca\u30eb\u30a2\u30d7\u30ea\u3092\u958b\u767a\u30fb\u516c\u958b\u3057\u3066\u307f\u305f\uff01\uff01&#8221; &#8212; \u3010\u30c6\u30c3\u30af\u30b8\u30e0\u3011\u683c\u5b89\u30fb\u5bfe\u9762\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30b9\u30af\u30fc\u30eb\" src=\"https:\/\/techgym.jp\/column\/ori-app\/embed\/#?secret=iWHduI6JfI#?secret=aG28nWiPNu\" data-secret=\"aG28nWiPNu\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>\u25a0AI\u6642\u4ee3\u306e\u7b2c\u4e00\u6b69\uff01\u300cAI\u99c6\u52d5\u958b\u767a\u30b3\u30fc\u30b9\u300d\u306f\u3058\u3081\u307e\u3057\u305f\uff01<\/p>\n\n\n\n<p>\u30c6\u30c3\u30af\u30b8\u30e0\u6771\u4eac\u672c\u6821\u3067\u5148\u884c\u958b\u59cb\u3002<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"oUVljiF4iu\"><a href=\"https:\/\/techgym.jp\/about\/ai-driven-development\/\">AI\u6642\u4ee3\u306e\u7b2c\u4e00\u6b69\uff01\u300cAI\u99c6\u52d5\u958b\u767a\u30b3\u30fc\u30b9\u300d\uff08\u521d\u5fc3\u8005\u5411\u3051\uff09<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"&#8220;AI\u6642\u4ee3\u306e\u7b2c\u4e00\u6b69\uff01\u300cAI\u99c6\u52d5\u958b\u767a\u30b3\u30fc\u30b9\u300d\uff08\u521d\u5fc3\u8005\u5411\u3051\uff09&#8221; &#8212; \u3010\u30c6\u30c3\u30af\u30b8\u30e0\u3011\u683c\u5b89\u30fb\u5bfe\u9762\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30b9\u30af\u30fc\u30eb\" src=\"https:\/\/techgym.jp\/about\/ai-driven-development\/embed\/#?secret=0d416AZQLG#?secret=oUVljiF4iu\" data-secret=\"oUVljiF4iu\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>\u25a0\u30c6\u30c3\u30af\u30b8\u30e0\u6771\u4eac\u672c\u6821<\/p>\n\n\n\n<p>\u300c\u6b66\u7530\u587e\u300d\u306e\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u7248\u3068\u3044\u3048\u3070\u300c\u30c6\u30c3\u30af\u30b8\u30e0\u300d\u3002<br>\u8b1b\u7fa9\u52d5\u753b\u306a\u3057\u3001\u6559\u79d1\u66f8\u306a\u3057\u3002\u300c\u9032\u6357\u7ba1\u7406\u3068\u30b3\u30fc\u30c1\u30f3\u30b0\u300d\u3067\u52b9\u7387\u5b66\u7fd2\u3002<br>\u3088\u308a\u65e9\u304f\u3001\u3088\u308a\u5b89\u304f\u3001\u3057\u304b\u3082\u5bfe\u9762\u578b\u306e\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30b9\u30af\u30fc\u30eb\u3067\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"cvWmjkQuVv\"><a href=\"https:\/\/techgym.jp\/tokyo\/tokyo_honko\/\">\u30c6\u30c3\u30af\u30b8\u30e0\u6771\u4eac\u672c\u6821<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"&#8220;\u30c6\u30c3\u30af\u30b8\u30e0\u6771\u4eac\u672c\u6821&#8221; &#8212; \u3010\u30c6\u30c3\u30af\u30b8\u30e0\u3011\u683c\u5b89\u30fb\u5bfe\u9762\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30b9\u30af\u30fc\u30eb\" src=\"https:\/\/techgym.jp\/tokyo\/tokyo_honko\/embed\/#?secret=Uq52tQH7pP#?secret=cvWmjkQuVv\" data-secret=\"cvWmjkQuVv\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>\uff1c\u77ed\u671f\u8b1b\u7fd2\uff1e5\u65e5\u30675\u4e07\u5186\u306e\u300cPython\u30df\u30cb\u30ad\u30e3\u30f3\u30d7\u300d\u958b\u50ac\u4e2d\u3002<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"tqvMAt5105\"><a href=\"https:\/\/techgym.jp\/event\/nagatacho_camp\/\">\u72ec\u5b66\u3082\u30aa\u30f3\u30e9\u30a4\u30f3\u3082\u7121\u7406\u3060\u304b\u3089\u3001\u6709\u7d66\u3068\u3063\u3066\u300cPython\u30df\u30cb\u30ad\u30e3\u30f3\u30d7\u300d\u3078\u30105\u65e5\u9593\u30675\u4e07\u5186\u3011<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"&#8220;\u72ec\u5b66\u3082\u30aa\u30f3\u30e9\u30a4\u30f3\u3082\u7121\u7406\u3060\u304b\u3089\u3001\u6709\u7d66\u3068\u3063\u3066\u300cPython\u30df\u30cb\u30ad\u30e3\u30f3\u30d7\u300d\u3078\u30105\u65e5\u9593\u30675\u4e07\u5186\u3011&#8221; &#8212; \u3010\u30c6\u30c3\u30af\u30b8\u30e0\u3011\u683c\u5b89\u30fb\u5bfe\u9762\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30b9\u30af\u30fc\u30eb\" src=\"https:\/\/techgym.jp\/event\/nagatacho_camp\/embed\/#?secret=NBvLuJsJ2v#?secret=tqvMAt5105\" data-secret=\"tqvMAt5105\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>\uff1c\u67081\u958b\u50ac\uff1e\u653e\u9001\u4f5c\u5bb6\u306b\u3088\u308b\u6620\u50cf\u30c7\u30a3\u30ec\u30af\u30bf\u30fc\u990a\u6210\u8b1b\u5ea7<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"xWM8srwVQE\"><a href=\"https:\/\/techgym.jp\/event\/video_director\/\">\u73fe\u5f79\u653e\u9001\u4f5c\u5bb6\u304c\u6559\u3048\u308b\u52d5\u753b\u8b1b\u5ea7\uff01\u300e\uff24\uff2f\uff27\uff21\u300f<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"&#8220;\u73fe\u5f79\u653e\u9001\u4f5c\u5bb6\u304c\u6559\u3048\u308b\u52d5\u753b\u8b1b\u5ea7\uff01\u300e\uff24\uff2f\uff27\uff21\u300f&#8221; &#8212; \u3010\u30c6\u30c3\u30af\u30b8\u30e0\u3011\u683c\u5b89\u30fb\u5bfe\u9762\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30b9\u30af\u30fc\u30eb\" src=\"https:\/\/techgym.jp\/event\/video_director\/embed\/#?secret=ruwkuSV6OU#?secret=xWM8srwVQE\" data-secret=\"xWM8srwVQE\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>\uff1c\u30aa\u30f3\u30e9\u30a4\u30f3\u7121\u6599\uff1e\u30bc\u30ed\u304b\u3089\u59cb\u3081\u308bPython\u7206\u901f\u8b1b\u5ea7<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"WyGz7XrMnL\"><a href=\"https:\/\/techgym.jp\/tokyo_python\/\">\u30bc\u30ed\u304b\u3089\u59cb\u3081\u308bPython\u7206\u901f\u8b1b\u5ea7\uff08\u7406\u7cfb\u30fb\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u521d\u5fc3\u8005\u5411\u3051\uff09<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; visibility: hidden;\" title=\"&#8220;\u30bc\u30ed\u304b\u3089\u59cb\u3081\u308bPython\u7206\u901f\u8b1b\u5ea7\uff08\u7406\u7cfb\u30fb\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u521d\u5fc3\u8005\u5411\u3051\uff09&#8221; &#8212; \u3010\u30c6\u30c3\u30af\u30b8\u30e0\u3011\u683c\u5b89\u30fb\u5bfe\u9762\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30b9\u30af\u30fc\u30eb\" src=\"https:\/\/techgym.jp\/tokyo_python\/embed\/#?secret=fsIJ5egRfg#?secret=WyGz7XrMnL\" data-secret=\"WyGz7XrMnL\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>\u00a0 \u95a2\u6570\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3068\u306f\uff1f\u57fa\u672c\u6982\u5ff5\u30925\u5206\u3067\u7406\u89e3 **\u95a2\u6570\u578b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\uff08Functional Programming\uff09**\u306f\u3001\u95a2\u6570\u3092\u4e2d\u5fc3\u3068\u3057\u305f\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u30d1\u30e9\u30c0\u30a4\u30e0\u3067\u3059\u3002\u30c7\u30fc\u30bf\u306e\u5909\u66f4\uff08\u526f\u4f5c\u7528\uff09\u3092\u907f\u3051\u3001\u95a2\u6570\u306e\u7d44\u307f\u5408 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":42501,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[5],"tags":[],"class_list":["post-42901","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-column"],"views":52,"jetpack_featured_media_url":"\/wp-content\/uploads\/2025\/07\/f3403acf5c65aedec0dba821c4c26404.png","jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/posts\/42901","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/comments?post=42901"}],"version-history":[{"count":0,"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/posts\/42901\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/media\/42501"}],"wp:attachment":[{"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/media?parent=42901"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/categories?post=42901"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/techgym.jp\/wp-json\/wp\/v2\/tags?post=42901"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}