|
| 1 | +{ |
| 2 | + "cells": [ |
| 3 | + { |
| 4 | + "cell_type": "code", |
| 5 | + "execution_count": 1, |
| 6 | + "metadata": {}, |
| 7 | + "outputs": [], |
| 8 | + "source": [ |
| 9 | + "# for running tests from local astx module\n", |
| 10 | + "import os,sys\n", |
| 11 | + "# print(os.path.abspath(os.path.join(os.getcwd(), \"../../\", \"src\")))\n", |
| 12 | + "sys.path.insert(0, os.path.abspath(os.path.join(os.getcwd(), \"../../\", \"src\")))\n", |
| 13 | + "\n" |
| 14 | + ] |
| 15 | + }, |
| 16 | + { |
| 17 | + "cell_type": "code", |
| 18 | + "execution_count": 2, |
| 19 | + "metadata": {}, |
| 20 | + "outputs": [], |
| 21 | + "source": [ |
| 22 | + "import astx" |
| 23 | + ] |
| 24 | + }, |
| 25 | + { |
| 26 | + "cell_type": "code", |
| 27 | + "execution_count": 3, |
| 28 | + "metadata": {}, |
| 29 | + "outputs": [], |
| 30 | + "source": [ |
| 31 | + "import warnings\n", |
| 32 | + "warnings.filterwarnings(\"ignore\")" |
| 33 | + ] |
| 34 | + }, |
| 35 | + { |
| 36 | + "cell_type": "code", |
| 37 | + "execution_count": 4, |
| 38 | + "metadata": {}, |
| 39 | + "outputs": [], |
| 40 | + "source": [ |
| 41 | + "# create Dict_comprehension object\n", |
| 42 | + "dict_comp = astx.DictComprehension(\n", |
| 43 | + " key= astx.Identifier('x'),\n", |
| 44 | + " value= astx.Identifier('ord(x)'),\n", |
| 45 | + " iterable= astx.Identifier('x'),\n", |
| 46 | + " iterator = astx.LiteralList(\n", |
| 47 | + " elements=[\n", |
| 48 | + " astx.LiteralInt32(10),\n", |
| 49 | + " astx.LiteralInt32(20),\n", |
| 50 | + " astx.LiteralInt32(30)\n", |
| 51 | + " ]\n", |
| 52 | + " )\n", |
| 53 | + " # iterator=astx.Identifier('meyList')\n", |
| 54 | + ")" |
| 55 | + ] |
| 56 | + }, |
| 57 | + { |
| 58 | + "cell_type": "code", |
| 59 | + "execution_count": 5, |
| 60 | + "metadata": {}, |
| 61 | + "outputs": [ |
| 62 | + { |
| 63 | + "name": "stdout", |
| 64 | + "output_type": "stream", |
| 65 | + "text": [ |
| 66 | + "hel\n" |
| 67 | + ] |
| 68 | + }, |
| 69 | + { |
| 70 | + "data": { |
| 71 | + "text/plain": [ |
| 72 | + "{'DICT-COMPREHENSION': {'content': {'key': {'IDENTIFIER[x]': {'content': 'x',\n", |
| 73 | + " 'metadata': {'loc': {'line': -1, 'col': -1},\n", |
| 74 | + " 'comment': '',\n", |
| 75 | + " 'ref': '',\n", |
| 76 | + " 'kind': -100}}},\n", |
| 77 | + " 'value': {'IDENTIFIER[ord(x)]': {'content': 'ord(x)',\n", |
| 78 | + " 'metadata': {'loc': {'line': -1, 'col': -1},\n", |
| 79 | + " 'comment': '',\n", |
| 80 | + " 'ref': '',\n", |
| 81 | + " 'kind': -100}}},\n", |
| 82 | + " 'iterable': {'IDENTIFIER[x]': {'content': 'x',\n", |
| 83 | + " 'metadata': {'loc': {'line': -1, 'col': -1},\n", |
| 84 | + " 'comment': '',\n", |
| 85 | + " 'ref': '',\n", |
| 86 | + " 'kind': -100}}},\n", |
| 87 | + " 'iterator': {'LiteralList': {'ELEMENT[0]': 0,\n", |
| 88 | + " 'ELEMENT[1]': 1,\n", |
| 89 | + " 'ELEMENT[2]': 2}}},\n", |
| 90 | + " 'metadata': {'loc': {'line': -1, 'col': -1},\n", |
| 91 | + " 'comment': '',\n", |
| 92 | + " 'ref': '',\n", |
| 93 | + " 'kind': -515}}}" |
| 94 | + ] |
| 95 | + }, |
| 96 | + "execution_count": 5, |
| 97 | + "metadata": {}, |
| 98 | + "output_type": "execute_result" |
| 99 | + } |
| 100 | + ], |
| 101 | + "source": [ |
| 102 | + "dict_comp.get_struct()" |
| 103 | + ] |
| 104 | + }, |
| 105 | + { |
| 106 | + "cell_type": "code", |
| 107 | + "execution_count": 6, |
| 108 | + "metadata": {}, |
| 109 | + "outputs": [ |
| 110 | + { |
| 111 | + "name": "stdout", |
| 112 | + "output_type": "stream", |
| 113 | + "text": [ |
| 114 | + "{x: ord(x) for x in [10, 20, 30]}\n" |
| 115 | + ] |
| 116 | + } |
| 117 | + ], |
| 118 | + "source": [ |
| 119 | + "print(dict_comp)" |
| 120 | + ] |
| 121 | + }, |
| 122 | + { |
| 123 | + "cell_type": "code", |
| 124 | + "execution_count": 7, |
| 125 | + "metadata": {}, |
| 126 | + "outputs": [ |
| 127 | + { |
| 128 | + "name": "stdout", |
| 129 | + "output_type": "stream", |
| 130 | + "text": [ |
| 131 | + "hel\n" |
| 132 | + ] |
| 133 | + }, |
| 134 | + { |
| 135 | + "data": { |
| 136 | + "image/png": "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", |
| 137 | + "text/plain": [ |
| 138 | + "<IPython.core.display.Image object>" |
| 139 | + ] |
| 140 | + }, |
| 141 | + "metadata": {}, |
| 142 | + "output_type": "display_data" |
| 143 | + }, |
| 144 | + { |
| 145 | + "data": { |
| 146 | + "text/plain": [] |
| 147 | + }, |
| 148 | + "execution_count": 7, |
| 149 | + "metadata": {}, |
| 150 | + "output_type": "execute_result" |
| 151 | + } |
| 152 | + ], |
| 153 | + "source": [ |
| 154 | + "dict_comp" |
| 155 | + ] |
| 156 | + } |
| 157 | + ], |
| 158 | + "metadata": { |
| 159 | + "kernelspec": { |
| 160 | + "display_name": "ast", |
| 161 | + "language": "python", |
| 162 | + "name": "python3" |
| 163 | + }, |
| 164 | + "language_info": { |
| 165 | + "codemirror_mode": { |
| 166 | + "name": "ipython", |
| 167 | + "version": 3 |
| 168 | + }, |
| 169 | + "file_extension": ".py", |
| 170 | + "mimetype": "text/x-python", |
| 171 | + "name": "python", |
| 172 | + "nbconvert_exporter": "python", |
| 173 | + "pygments_lexer": "ipython3", |
| 174 | + "version": "3.13.2" |
| 175 | + } |
| 176 | + }, |
| 177 | + "nbformat": 4, |
| 178 | + "nbformat_minor": 2 |
| 179 | +} |
0 commit comments