diff --git a/Python-ifed.ipynb b/Python-ifed.ipynb index ee9444d..7b78831 100644 --- a/Python-ifed.ipynb +++ b/Python-ifed.ipynb @@ -62,15 +62,15 @@ "### Describe what each of the following means\n", "\n", "#### Production\n", - "(Insert answer here)\n", + "Production means where we can work relaibly and consistently.Production code is the code that is used by clients.But it should not be necessarily stable and relaible.\n", "#### Clean \n", - "(Insert answer here)\n", + "The code that is readable and anyone who reads the code must easly understand it even if its read by someone new to that.It should also be easy to understand and change whenever required.\n", "#### Modular\n", - "(Insert answer here)\n", + "It is the code in which a complex problem is divided to sub sub problems until each of them can be solved independantly and easly.\n", "#### Module\n", - "(Insert answer here)\n", + "Module is a piece of code created and maintained independantly and can be used in different systems.\n", "#### Refactoring code\n", - "(Insert answer here)" + "The process of redesigining the code without any change in its logic,external behavior and functionality." ] }, { @@ -171,7 +171,9 @@ "metadata": {}, "outputs": [], "source": [ - "# Insert your solution here" + "# Insert your solution here\n", + "df.columns = df.columns.str.replace(' ','_')\n", + "df.head()" ] }, { @@ -262,6 +264,11 @@ "outputs": [], "source": [ "# Insert answer here\n", + "start=time.time()\n", + "\n", + "verified_elements=np.intersect1d(all_elements,subset_elements)\n", + "#using numpy inbuilt function because as per definition:\n", + "#In vectorisation we can replace for loop with numpy function\n", "\n", "print(len(verified_elements))\n", "print('Duration: {} seconds'.format(time.time() - start))" @@ -281,6 +288,10 @@ "outputs": [], "source": [ "# Insert answer here\n", + "start=time.time()\n", + "\n", + "#using datastructure set.\n", + "verified_elements=list(set(all_elements)&set(subset_elements))\n", "\n", "print(len(verified_elements))\n", "print('Duration: {} seconds'.format(time.time() - start))" @@ -378,19 +389,28 @@ ] }, { - "cell_type": "markdown", - "metadata": {}, "source": [ "Remember you were in a pokemon room (discord) what is the **type** of that pokemon" - ] + ], + "cell_type": "markdown", + "metadata": {} }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "# Insert your code here" + "# Insert your code here\n", + "import requests\n", + "\n", + "urll = \"http://pokeapi.co/api/v2/pokemon/gyarados/\"\n", + "urls=[]\n", + "data = requests.get(urll).json()\n", + "for i in range (2):\n", + " poke_type=data[\"types\"][i]['type']['name']\n", + " urls.append(data[\"types\"][i]['type']['url']) #appending url for step 2\n", + " print(poke_type)\n" ] }, { @@ -403,13 +423,24 @@ ] }, { + "source": [ + "# Insert your code here\n", + "d_dmg_url=[]\n", + "tp=[]\n", + "for url in urls:\n", + " poke_type=requests.get(url).json()\n", + " for j in poke_type[\"damage_relations\"][\"double_damage_from\"]:\n", + " print(j[\"name\"])\n", + " tp.append(j[\"name\"])\n", + " d_dmg_url.append(j[\"url\"])\n", + " for j in poke_type[\"damage_relations\"][\"half_damage_from\"]:\n", + " print(j[\"name\"])\n", + "\n" + ], "cell_type": "code", - "execution_count": 2, "metadata": {}, - "outputs": [], - "source": [ - "# Insert your code here" - ] + "execution_count": null, + "outputs": [] }, { "cell_type": "markdown", @@ -420,11 +451,39 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 27, "metadata": {}, - "outputs": [], + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Pokemon of Type: ghost\n", + "gastly,haunter,gengar,misdreavus,shedinja\n", + "\n", + "Pokemon of Type: dark\n", + "umbreon,murkrow,sneasel,houndour,houndoom\n", + "\n", + "Pokemon of Type: ground\n", + "sandshrew,sandslash,nidoqueen,nidoking,diglett\n", + "\n", + "Pokemon of Type: psychic\n", + "abra,kadabra,alakazam,slowpoke,slowbro\n", + "\n" + ] + } + ], "source": [ - "# Insert your code here" + "# Insert your code here\n", + "for i in range(len(d_dmg_url)):\n", + " dat=requests.get(d_dmg_url[i]).json()\n", + " print(\"Pokemon of Type: \"+tp[i])\n", + " for j in range(5):\n", + " print(dat[\"pokemon\"][j][\"pokemon\"][\"name\"],end='')\n", + " if j!=4:\n", + " print(end=',')\n", + " \n", + " print(\"\\n\")" ] }, { @@ -438,34 +497,21 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\u001b[1m============================= test session starts ==============================\u001b[0m\n", - "platform darwin -- Python 3.8.5, pytest-6.2.1, py-1.10.0, pluggy-0.13.1\n", - "rootdir: /Users/abhijitramesh/development/Python-ifed\n", - "collected 4 items \u001b[0m\n", - "\n", - "test_abilities.py \u001b[32m.\u001b[0m\u001b[32m.\u001b[0m\u001b[32m.\u001b[0m\u001b[32m.\u001b[0m\u001b[32m [100%]\u001b[0m\n", - "\n", - "\u001b[32m============================== \u001b[32m\u001b[1m4 passed\u001b[0m\u001b[32m in 2.75s\u001b[0m\u001b[32m ===============================\u001b[0m\n" - ] - } - ], + "outputs": [], "source": [ "!pytest test_abilities.py" ] }, { - "cell_type": "markdown", - "metadata": {}, "source": [ "Please version till this point saying with a message \"Completed challenge 2\"" - ] + ], + "cell_type": "code", + "metadata": {}, + "execution_count": null, + "outputs": [] }, { "cell_type": "markdown", @@ -501,9 +547,13 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" + "name": "python3", + "display_name": "Python 3.8.0 64-bit", + "metadata": { + "interpreter": { + "hash": "06e483f59aeb05a49d223db5b746e2d43658eec77bca882da011caef50b704e4" + } + } }, "language_info": { "codemirror_mode": { @@ -515,7 +565,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.9" + "version": "3.8.0-final" } }, "nbformat": 4, diff --git a/__pycache__/ability.cpython-38.pyc b/__pycache__/ability.cpython-38.pyc new file mode 100644 index 0000000..0aa318e Binary files /dev/null and b/__pycache__/ability.cpython-38.pyc differ diff --git a/__pycache__/test_abilities.cpython-38-pytest-6.2.1.pyc b/__pycache__/test_abilities.cpython-38-pytest-6.2.1.pyc new file mode 100644 index 0000000..90400cb Binary files /dev/null and b/__pycache__/test_abilities.cpython-38-pytest-6.2.1.pyc differ diff --git a/ability.py b/ability.py new file mode 100644 index 0000000..46242e9 --- /dev/null +++ b/ability.py @@ -0,0 +1,9 @@ +import requests +def ability(name): + url = "http://pokeapi.co/api/v2/pokemon/"+name+"/" + data = requests.get(url).json() + ably=[] + for i in data["abilities"]: + ably.append(i['ability']['name']) + return ably + \ No newline at end of file diff --git a/data.json b/data.json new file mode 100644 index 0000000..3e5828f --- /dev/null +++ b/data.json @@ -0,0 +1 @@ +{"damage_relations": {"double_damage_from": [{"name": "rock", "url": "https://pokeapi.co/api/v2/type/6/"}, {"name": "electric", "url": "https://pokeapi.co/api/v2/type/13/"}, {"name": "ice", "url": "https://pokeapi.co/api/v2/type/15/"}], "double_damage_to": [{"name": "fighting", "url": "https://pokeapi.co/api/v2/type/2/"}, {"name": "bug", "url": "https://pokeapi.co/api/v2/type/7/"}, {"name": "grass", "url": "https://pokeapi.co/api/v2/type/12/"}], "half_damage_from": [{"name": "fighting", "url": "https://pokeapi.co/api/v2/type/2/"}, {"name": "bug", "url": "https://pokeapi.co/api/v2/type/7/"}, {"name": "grass", "url": "https://pokeapi.co/api/v2/type/12/"}], "half_damage_to": [{"name": "rock", "url": "https://pokeapi.co/api/v2/type/6/"}, {"name": "steel", "url": "https://pokeapi.co/api/v2/type/9/"}, {"name": "electric", "url": "https://pokeapi.co/api/v2/type/13/"}], "no_damage_from": [{"name": "ground", "url": "https://pokeapi.co/api/v2/type/5/"}], "no_damage_to": []}, "game_indices": [{"game_index": 2, "generation": {"name": "generation-i", "url": "https://pokeapi.co/api/v2/generation/1/"}}, {"game_index": 2, "generation": {"name": "generation-ii", "url": "https://pokeapi.co/api/v2/generation/2/"}}, {"game_index": 2, "generation": {"name": "generation-iii", "url": "https://pokeapi.co/api/v2/generation/3/"}}, {"game_index": 2, "generation": {"name": "generation-iv", "url": "https://pokeapi.co/api/v2/generation/4/"}}, {"game_index": 2, "generation": {"name": "generation-v", "url": "https://pokeapi.co/api/v2/generation/5/"}}, {"game_index": 2, "generation": {"name": "generation-vi", "url": "https://pokeapi.co/api/v2/generation/6/"}}], "generation": {"name": "generation-i", "url": "https://pokeapi.co/api/v2/generation/1/"}, "id": 3, "move_damage_class": {"name": "physical", "url": "https://pokeapi.co/api/v2/move-damage-class/2/"}, "moves": [{"name": "gust", "url": "https://pokeapi.co/api/v2/move/16/"}, {"name": "wing-attack", "url": "https://pokeapi.co/api/v2/move/17/"}, {"name": "fly", "url": "https://pokeapi.co/api/v2/move/19/"}, {"name": "peck", "url": "https://pokeapi.co/api/v2/move/64/"}, {"name": "drill-peck", "url": "https://pokeapi.co/api/v2/move/65/"}, {"name": "mirror-move", "url": "https://pokeapi.co/api/v2/move/119/"}, {"name": "sky-attack", "url": "https://pokeapi.co/api/v2/move/143/"}, {"name": "aeroblast", "url": "https://pokeapi.co/api/v2/move/177/"}, {"name": "feather-dance", "url": "https://pokeapi.co/api/v2/move/297/"}, {"name": "air-cutter", "url": "https://pokeapi.co/api/v2/move/314/"}, {"name": "aerial-ace", "url": "https://pokeapi.co/api/v2/move/332/"}, {"name": "bounce", "url": "https://pokeapi.co/api/v2/move/340/"}, {"name": "roost", "url": "https://pokeapi.co/api/v2/move/355/"}, {"name": "pluck", "url": "https://pokeapi.co/api/v2/move/365/"}, {"name": "tailwind", "url": "https://pokeapi.co/api/v2/move/366/"}, {"name": "air-slash", "url": "https://pokeapi.co/api/v2/move/403/"}, {"name": "brave-bird", "url": "https://pokeapi.co/api/v2/move/413/"}, {"name": "defog", "url": "https://pokeapi.co/api/v2/move/432/"}, {"name": "chatter", "url": "https://pokeapi.co/api/v2/move/448/"}, {"name": "sky-drop", "url": "https://pokeapi.co/api/v2/move/507/"}, {"name": "acrobatics", "url": "https://pokeapi.co/api/v2/move/512/"}, {"name": "hurricane", "url": "https://pokeapi.co/api/v2/move/542/"}, {"name": "oblivion-wing", "url": "https://pokeapi.co/api/v2/move/613/"}, {"name": "dragon-ascent", "url": "https://pokeapi.co/api/v2/move/620/"}, {"name": "supersonic-skystrike--physical", "url": "https://pokeapi.co/api/v2/move/626/"}, {"name": "supersonic-skystrike--special", "url": "https://pokeapi.co/api/v2/move/627/"}, {"name": "beak-blast", "url": "https://pokeapi.co/api/v2/move/690/"}, {"name": "floaty-fall", "url": "https://pokeapi.co/api/v2/move/731/"}, {"name": "max-airstream", "url": "https://pokeapi.co/api/v2/move/766/"}], "name": "flying", "names": [{"language": {"name": "ja-Hrkt", "url": "https://pokeapi.co/api/v2/language/1/"}, "name": "\u3072\u3053\u3046"}, {"language": {"name": "ko", "url": "https://pokeapi.co/api/v2/language/3/"}, "name": "\ube44\ud589"}, {"language": {"name": "fr", "url": "https://pokeapi.co/api/v2/language/5/"}, "name": "Vol"}, {"language": {"name": "de", "url": "https://pokeapi.co/api/v2/language/6/"}, "name": "Flug"}, {"language": {"name": "es", "url": "https://pokeapi.co/api/v2/language/7/"}, "name": "Volador"}, {"language": {"name": "it", "url": "https://pokeapi.co/api/v2/language/8/"}, "name": "Volante"}, {"language": {"name": "en", "url": "https://pokeapi.co/api/v2/language/9/"}, "name": "Flying"}], "pokemon": [{"pokemon": {"name": "charizard", "url": "https://pokeapi.co/api/v2/pokemon/6/"}, "slot": 2}, {"pokemon": {"name": "butterfree", "url": "https://pokeapi.co/api/v2/pokemon/12/"}, "slot": 2}, {"pokemon": {"name": "pidgey", "url": "https://pokeapi.co/api/v2/pokemon/16/"}, "slot": 2}, {"pokemon": {"name": "pidgeotto", "url": "https://pokeapi.co/api/v2/pokemon/17/"}, "slot": 2}, {"pokemon": {"name": "pidgeot", "url": "https://pokeapi.co/api/v2/pokemon/18/"}, "slot": 2}, {"pokemon": {"name": "spearow", "url": "https://pokeapi.co/api/v2/pokemon/21/"}, "slot": 2}, {"pokemon": {"name": "fearow", "url": "https://pokeapi.co/api/v2/pokemon/22/"}, "slot": 2}, {"pokemon": {"name": "zubat", "url": "https://pokeapi.co/api/v2/pokemon/41/"}, "slot": 2}, {"pokemon": {"name": "golbat", "url": "https://pokeapi.co/api/v2/pokemon/42/"}, "slot": 2}, {"pokemon": {"name": "farfetchd", "url": "https://pokeapi.co/api/v2/pokemon/83/"}, "slot": 2}, {"pokemon": {"name": "doduo", "url": "https://pokeapi.co/api/v2/pokemon/84/"}, "slot": 2}, {"pokemon": {"name": "dodrio", "url": "https://pokeapi.co/api/v2/pokemon/85/"}, "slot": 2}, {"pokemon": {"name": "scyther", "url": "https://pokeapi.co/api/v2/pokemon/123/"}, "slot": 2}, {"pokemon": {"name": "gyarados", "url": "https://pokeapi.co/api/v2/pokemon/130/"}, "slot": 2}, {"pokemon": {"name": "aerodactyl", "url": "https://pokeapi.co/api/v2/pokemon/142/"}, "slot": 2}, {"pokemon": {"name": "articuno", "url": "https://pokeapi.co/api/v2/pokemon/144/"}, "slot": 2}, {"pokemon": {"name": "zapdos", "url": "https://pokeapi.co/api/v2/pokemon/145/"}, "slot": 2}, {"pokemon": {"name": "moltres", "url": "https://pokeapi.co/api/v2/pokemon/146/"}, "slot": 2}, {"pokemon": {"name": "dragonite", "url": "https://pokeapi.co/api/v2/pokemon/149/"}, "slot": 2}, {"pokemon": {"name": "hoothoot", "url": "https://pokeapi.co/api/v2/pokemon/163/"}, "slot": 2}, {"pokemon": {"name": "noctowl", "url": "https://pokeapi.co/api/v2/pokemon/164/"}, "slot": 2}, {"pokemon": {"name": "ledyba", "url": "https://pokeapi.co/api/v2/pokemon/165/"}, "slot": 2}, {"pokemon": {"name": "ledian", "url": "https://pokeapi.co/api/v2/pokemon/166/"}, "slot": 2}, {"pokemon": {"name": "crobat", "url": "https://pokeapi.co/api/v2/pokemon/169/"}, "slot": 2}, {"pokemon": {"name": "togetic", "url": "https://pokeapi.co/api/v2/pokemon/176/"}, "slot": 2}, {"pokemon": {"name": "natu", "url": "https://pokeapi.co/api/v2/pokemon/177/"}, "slot": 2}, {"pokemon": {"name": "xatu", "url": "https://pokeapi.co/api/v2/pokemon/178/"}, "slot": 2}, {"pokemon": {"name": "hoppip", "url": "https://pokeapi.co/api/v2/pokemon/187/"}, "slot": 2}, {"pokemon": {"name": "skiploom", "url": "https://pokeapi.co/api/v2/pokemon/188/"}, "slot": 2}, {"pokemon": {"name": "jumpluff", "url": "https://pokeapi.co/api/v2/pokemon/189/"}, "slot": 2}, {"pokemon": {"name": "yanma", "url": "https://pokeapi.co/api/v2/pokemon/193/"}, "slot": 2}, {"pokemon": {"name": "murkrow", "url": "https://pokeapi.co/api/v2/pokemon/198/"}, "slot": 2}, {"pokemon": {"name": "gligar", "url": "https://pokeapi.co/api/v2/pokemon/207/"}, "slot": 2}, {"pokemon": {"name": "delibird", "url": "https://pokeapi.co/api/v2/pokemon/225/"}, "slot": 2}, {"pokemon": {"name": "mantine", "url": "https://pokeapi.co/api/v2/pokemon/226/"}, "slot": 2}, {"pokemon": {"name": "skarmory", "url": "https://pokeapi.co/api/v2/pokemon/227/"}, "slot": 2}, {"pokemon": {"name": "lugia", "url": "https://pokeapi.co/api/v2/pokemon/249/"}, "slot": 2}, {"pokemon": {"name": "ho-oh", "url": "https://pokeapi.co/api/v2/pokemon/250/"}, "slot": 2}, {"pokemon": {"name": "beautifly", "url": "https://pokeapi.co/api/v2/pokemon/267/"}, "slot": 2}, {"pokemon": {"name": "taillow", "url": "https://pokeapi.co/api/v2/pokemon/276/"}, "slot": 2}, {"pokemon": {"name": "swellow", "url": "https://pokeapi.co/api/v2/pokemon/277/"}, "slot": 2}, {"pokemon": {"name": "wingull", "url": "https://pokeapi.co/api/v2/pokemon/278/"}, "slot": 2}, {"pokemon": {"name": "pelipper", "url": "https://pokeapi.co/api/v2/pokemon/279/"}, "slot": 2}, {"pokemon": {"name": "masquerain", "url": "https://pokeapi.co/api/v2/pokemon/284/"}, "slot": 2}, {"pokemon": {"name": "ninjask", "url": "https://pokeapi.co/api/v2/pokemon/291/"}, "slot": 2}, {"pokemon": {"name": "swablu", "url": "https://pokeapi.co/api/v2/pokemon/333/"}, "slot": 2}, {"pokemon": {"name": "altaria", "url": "https://pokeapi.co/api/v2/pokemon/334/"}, "slot": 2}, {"pokemon": {"name": "tropius", "url": "https://pokeapi.co/api/v2/pokemon/357/"}, "slot": 2}, {"pokemon": {"name": "salamence", "url": "https://pokeapi.co/api/v2/pokemon/373/"}, "slot": 2}, {"pokemon": {"name": "rayquaza", "url": "https://pokeapi.co/api/v2/pokemon/384/"}, "slot": 2}, {"pokemon": {"name": "starly", "url": "https://pokeapi.co/api/v2/pokemon/396/"}, "slot": 2}, {"pokemon": {"name": "staravia", "url": "https://pokeapi.co/api/v2/pokemon/397/"}, "slot": 2}, {"pokemon": {"name": "staraptor", "url": "https://pokeapi.co/api/v2/pokemon/398/"}, "slot": 2}, {"pokemon": {"name": "mothim", "url": "https://pokeapi.co/api/v2/pokemon/414/"}, "slot": 2}, {"pokemon": {"name": "combee", "url": "https://pokeapi.co/api/v2/pokemon/415/"}, "slot": 2}, {"pokemon": {"name": "vespiquen", "url": "https://pokeapi.co/api/v2/pokemon/416/"}, "slot": 2}, {"pokemon": {"name": "drifloon", "url": "https://pokeapi.co/api/v2/pokemon/425/"}, "slot": 2}, {"pokemon": {"name": "drifblim", "url": "https://pokeapi.co/api/v2/pokemon/426/"}, "slot": 2}, {"pokemon": {"name": "honchkrow", "url": "https://pokeapi.co/api/v2/pokemon/430/"}, "slot": 2}, {"pokemon": {"name": "chatot", "url": "https://pokeapi.co/api/v2/pokemon/441/"}, "slot": 2}, {"pokemon": {"name": "mantyke", "url": "https://pokeapi.co/api/v2/pokemon/458/"}, "slot": 2}, {"pokemon": {"name": "togekiss", "url": "https://pokeapi.co/api/v2/pokemon/468/"}, "slot": 2}, {"pokemon": {"name": "yanmega", "url": "https://pokeapi.co/api/v2/pokemon/469/"}, "slot": 2}, {"pokemon": {"name": "gliscor", "url": "https://pokeapi.co/api/v2/pokemon/472/"}, "slot": 2}, {"pokemon": {"name": "pidove", "url": "https://pokeapi.co/api/v2/pokemon/519/"}, "slot": 2}, {"pokemon": {"name": "tranquill", "url": "https://pokeapi.co/api/v2/pokemon/520/"}, "slot": 2}, {"pokemon": {"name": "unfezant", "url": "https://pokeapi.co/api/v2/pokemon/521/"}, "slot": 2}, {"pokemon": {"name": "woobat", "url": "https://pokeapi.co/api/v2/pokemon/527/"}, "slot": 2}, {"pokemon": {"name": "swoobat", "url": "https://pokeapi.co/api/v2/pokemon/528/"}, "slot": 2}, {"pokemon": {"name": "sigilyph", "url": "https://pokeapi.co/api/v2/pokemon/561/"}, "slot": 2}, {"pokemon": {"name": "archen", "url": "https://pokeapi.co/api/v2/pokemon/566/"}, "slot": 2}, {"pokemon": {"name": "archeops", "url": "https://pokeapi.co/api/v2/pokemon/567/"}, "slot": 2}, {"pokemon": {"name": "ducklett", "url": "https://pokeapi.co/api/v2/pokemon/580/"}, "slot": 2}, {"pokemon": {"name": "swanna", "url": "https://pokeapi.co/api/v2/pokemon/581/"}, "slot": 2}, {"pokemon": {"name": "emolga", "url": "https://pokeapi.co/api/v2/pokemon/587/"}, "slot": 2}, {"pokemon": {"name": "rufflet", "url": "https://pokeapi.co/api/v2/pokemon/627/"}, "slot": 2}, {"pokemon": {"name": "braviary", "url": "https://pokeapi.co/api/v2/pokemon/628/"}, "slot": 2}, {"pokemon": {"name": "vullaby", "url": "https://pokeapi.co/api/v2/pokemon/629/"}, "slot": 2}, {"pokemon": {"name": "mandibuzz", "url": "https://pokeapi.co/api/v2/pokemon/630/"}, "slot": 2}, {"pokemon": {"name": "tornadus-incarnate", "url": "https://pokeapi.co/api/v2/pokemon/641/"}, "slot": 1}, {"pokemon": {"name": "thundurus-incarnate", "url": "https://pokeapi.co/api/v2/pokemon/642/"}, "slot": 2}, {"pokemon": {"name": "landorus-incarnate", "url": "https://pokeapi.co/api/v2/pokemon/645/"}, "slot": 2}, {"pokemon": {"name": "fletchling", "url": "https://pokeapi.co/api/v2/pokemon/661/"}, "slot": 2}, {"pokemon": {"name": "fletchinder", "url": "https://pokeapi.co/api/v2/pokemon/662/"}, "slot": 2}, {"pokemon": {"name": "talonflame", "url": "https://pokeapi.co/api/v2/pokemon/663/"}, "slot": 2}, {"pokemon": {"name": "vivillon", "url": "https://pokeapi.co/api/v2/pokemon/666/"}, "slot": 2}, {"pokemon": {"name": "hawlucha", "url": "https://pokeapi.co/api/v2/pokemon/701/"}, "slot": 2}, {"pokemon": {"name": "noibat", "url": "https://pokeapi.co/api/v2/pokemon/714/"}, "slot": 1}, {"pokemon": {"name": "noivern", "url": "https://pokeapi.co/api/v2/pokemon/715/"}, "slot": 1}, {"pokemon": {"name": "yveltal", "url": "https://pokeapi.co/api/v2/pokemon/717/"}, "slot": 2}, {"pokemon": {"name": "rowlet", "url": "https://pokeapi.co/api/v2/pokemon/722/"}, "slot": 2}, {"pokemon": {"name": "dartrix", "url": "https://pokeapi.co/api/v2/pokemon/723/"}, "slot": 2}, {"pokemon": {"name": "pikipek", "url": "https://pokeapi.co/api/v2/pokemon/731/"}, "slot": 2}, {"pokemon": {"name": "trumbeak", "url": "https://pokeapi.co/api/v2/pokemon/732/"}, "slot": 2}, {"pokemon": {"name": "toucannon", "url": "https://pokeapi.co/api/v2/pokemon/733/"}, "slot": 2}, {"pokemon": {"name": "oricorio-baile", "url": "https://pokeapi.co/api/v2/pokemon/741/"}, "slot": 2}, {"pokemon": {"name": "minior-red-meteor", "url": "https://pokeapi.co/api/v2/pokemon/774/"}, "slot": 2}, {"pokemon": {"name": "celesteela", "url": "https://pokeapi.co/api/v2/pokemon/797/"}, "slot": 2}, {"pokemon": {"name": "rookidee", "url": "https://pokeapi.co/api/v2/pokemon/821/"}, "slot": 1}, {"pokemon": {"name": "corvisquire", "url": "https://pokeapi.co/api/v2/pokemon/822/"}, "slot": 1}, {"pokemon": {"name": "corviknight", "url": "https://pokeapi.co/api/v2/pokemon/823/"}, "slot": 1}, {"pokemon": {"name": "cramorant", "url": "https://pokeapi.co/api/v2/pokemon/845/"}, "slot": 1}, {"pokemon": {"name": "shaymin-sky", "url": "https://pokeapi.co/api/v2/pokemon/10006/"}, "slot": 2}, {"pokemon": {"name": "rotom-fan", "url": "https://pokeapi.co/api/v2/pokemon/10011/"}, "slot": 2}, {"pokemon": {"name": "tornadus-therian", "url": "https://pokeapi.co/api/v2/pokemon/10019/"}, "slot": 1}, {"pokemon": {"name": "thundurus-therian", "url": "https://pokeapi.co/api/v2/pokemon/10020/"}, "slot": 2}, {"pokemon": {"name": "landorus-therian", "url": "https://pokeapi.co/api/v2/pokemon/10021/"}, "slot": 2}, {"pokemon": {"name": "charizard-mega-y", "url": "https://pokeapi.co/api/v2/pokemon/10035/"}, "slot": 2}, {"pokemon": {"name": "pinsir-mega", "url": "https://pokeapi.co/api/v2/pokemon/10040/"}, "slot": 2}, {"pokemon": {"name": "aerodactyl-mega", "url": "https://pokeapi.co/api/v2/pokemon/10042/"}, "slot": 2}, {"pokemon": {"name": "pidgeot-mega", "url": "https://pokeapi.co/api/v2/pokemon/10073/"}, "slot": 2}, {"pokemon": {"name": "rayquaza-mega", "url": "https://pokeapi.co/api/v2/pokemon/10079/"}, "slot": 2}, {"pokemon": {"name": "salamence-mega", "url": "https://pokeapi.co/api/v2/pokemon/10089/"}, "slot": 2}, {"pokemon": {"name": "oricorio-pom-pom", "url": "https://pokeapi.co/api/v2/pokemon/10123/"}, "slot": 2}, {"pokemon": {"name": "oricorio-pau", "url": "https://pokeapi.co/api/v2/pokemon/10124/"}, "slot": 2}, {"pokemon": {"name": "oricorio-sensu", "url": "https://pokeapi.co/api/v2/pokemon/10125/"}, "slot": 2}, {"pokemon": {"name": "minior-orange-meteor", "url": "https://pokeapi.co/api/v2/pokemon/10130/"}, "slot": 2}, {"pokemon": {"name": "minior-yellow-meteor", "url": "https://pokeapi.co/api/v2/pokemon/10131/"}, "slot": 2}, {"pokemon": {"name": "minior-green-meteor", "url": "https://pokeapi.co/api/v2/pokemon/10132/"}, "slot": 2}, {"pokemon": {"name": "minior-blue-meteor", "url": "https://pokeapi.co/api/v2/pokemon/10133/"}, "slot": 2}, {"pokemon": {"name": "minior-indigo-meteor", "url": "https://pokeapi.co/api/v2/pokemon/10134/"}, "slot": 2}, {"pokemon": {"name": "minior-violet-meteor", "url": "https://pokeapi.co/api/v2/pokemon/10135/"}, "slot": 2}, {"pokemon": {"name": "minior-red", "url": "https://pokeapi.co/api/v2/pokemon/10136/"}, "slot": 2}, {"pokemon": {"name": "minior-orange", "url": "https://pokeapi.co/api/v2/pokemon/10137/"}, "slot": 2}, {"pokemon": {"name": "minior-yellow", "url": "https://pokeapi.co/api/v2/pokemon/10138/"}, "slot": 2}, {"pokemon": {"name": "minior-green", "url": "https://pokeapi.co/api/v2/pokemon/10139/"}, "slot": 2}, {"pokemon": {"name": "minior-blue", "url": "https://pokeapi.co/api/v2/pokemon/10140/"}, "slot": 2}, {"pokemon": {"name": "minior-indigo", "url": "https://pokeapi.co/api/v2/pokemon/10141/"}, "slot": 2}, {"pokemon": {"name": "minior-violet", "url": "https://pokeapi.co/api/v2/pokemon/10142/"}, "slot": 2}, {"pokemon": {"name": "articuno-galar", "url": "https://pokeapi.co/api/v2/pokemon/10166/"}, "slot": 2}, {"pokemon": {"name": "zapdos-galar", "url": "https://pokeapi.co/api/v2/pokemon/10167/"}, "slot": 2}, {"pokemon": {"name": "moltres-galar", "url": "https://pokeapi.co/api/v2/pokemon/10168/"}, "slot": 2}, {"pokemon": {"name": "charizard-gmax", "url": "https://pokeapi.co/api/v2/pokemon/10187/"}, "slot": 2}, {"pokemon": {"name": "butterfree-gmax", "url": "https://pokeapi.co/api/v2/pokemon/10189/"}, "slot": 2}, {"pokemon": {"name": "corviknight-gmax", "url": "https://pokeapi.co/api/v2/pokemon/10203/"}, "slot": 1}]} \ No newline at end of file diff --git a/data1.json b/data1.json new file mode 100644 index 0000000..d88a1b6 --- /dev/null +++ b/data1.json @@ -0,0 +1 @@ +{"damage_relations": {"double_damage_from": [{"name": "flying", "url": "https://pokeapi.co/api/v2/type/3/"}, {"name": "poison", "url": "https://pokeapi.co/api/v2/type/4/"}, {"name": "bug", "url": "https://pokeapi.co/api/v2/type/7/"}, {"name": "fire", "url": "https://pokeapi.co/api/v2/type/10/"}, {"name": "ice", "url": "https://pokeapi.co/api/v2/type/15/"}], "double_damage_to": [{"name": "ground", "url": "https://pokeapi.co/api/v2/type/5/"}, {"name": "rock", "url": "https://pokeapi.co/api/v2/type/6/"}, {"name": "water", "url": "https://pokeapi.co/api/v2/type/11/"}], "half_damage_from": [{"name": "ground", "url": "https://pokeapi.co/api/v2/type/5/"}, {"name": "water", "url": "https://pokeapi.co/api/v2/type/11/"}, {"name": "grass", "url": "https://pokeapi.co/api/v2/type/12/"}, {"name": "electric", "url": "https://pokeapi.co/api/v2/type/13/"}], "half_damage_to": [{"name": "flying", "url": "https://pokeapi.co/api/v2/type/3/"}, {"name": "poison", "url": "https://pokeapi.co/api/v2/type/4/"}, {"name": "bug", "url": "https://pokeapi.co/api/v2/type/7/"}, {"name": "steel", "url": "https://pokeapi.co/api/v2/type/9/"}, {"name": "fire", "url": "https://pokeapi.co/api/v2/type/10/"}, {"name": "grass", "url": "https://pokeapi.co/api/v2/type/12/"}, {"name": "dragon", "url": "https://pokeapi.co/api/v2/type/16/"}], "no_damage_from": [], "no_damage_to": []}, "game_indices": [{"game_index": 22, "generation": {"name": "generation-i", "url": "https://pokeapi.co/api/v2/generation/1/"}}, {"game_index": 22, "generation": {"name": "generation-ii", "url": "https://pokeapi.co/api/v2/generation/2/"}}, {"game_index": 12, "generation": {"name": "generation-iii", "url": "https://pokeapi.co/api/v2/generation/3/"}}, {"game_index": 12, "generation": {"name": "generation-iv", "url": "https://pokeapi.co/api/v2/generation/4/"}}, {"game_index": 11, "generation": {"name": "generation-v", "url": "https://pokeapi.co/api/v2/generation/5/"}}, {"game_index": 11, "generation": {"name": "generation-vi", "url": "https://pokeapi.co/api/v2/generation/6/"}}], "generation": {"name": "generation-i", "url": "https://pokeapi.co/api/v2/generation/1/"}, "id": 12, "move_damage_class": {"name": "special", "url": "https://pokeapi.co/api/v2/move-damage-class/3/"}, "moves": [{"name": "vine-whip", "url": "https://pokeapi.co/api/v2/move/22/"}, {"name": "absorb", "url": "https://pokeapi.co/api/v2/move/71/"}, {"name": "mega-drain", "url": "https://pokeapi.co/api/v2/move/72/"}, {"name": "leech-seed", "url": "https://pokeapi.co/api/v2/move/73/"}, {"name": "razor-leaf", "url": "https://pokeapi.co/api/v2/move/75/"}, {"name": "solar-beam", "url": "https://pokeapi.co/api/v2/move/76/"}, {"name": "stun-spore", "url": "https://pokeapi.co/api/v2/move/78/"}, {"name": "sleep-powder", "url": "https://pokeapi.co/api/v2/move/79/"}, {"name": "petal-dance", "url": "https://pokeapi.co/api/v2/move/80/"}, {"name": "spore", "url": "https://pokeapi.co/api/v2/move/147/"}, {"name": "cotton-spore", "url": "https://pokeapi.co/api/v2/move/178/"}, {"name": "giga-drain", "url": "https://pokeapi.co/api/v2/move/202/"}, {"name": "synthesis", "url": "https://pokeapi.co/api/v2/move/235/"}, {"name": "ingrain", "url": "https://pokeapi.co/api/v2/move/275/"}, {"name": "needle-arm", "url": "https://pokeapi.co/api/v2/move/302/"}, {"name": "aromatherapy", "url": "https://pokeapi.co/api/v2/move/312/"}, {"name": "grass-whistle", "url": "https://pokeapi.co/api/v2/move/320/"}, {"name": "bullet-seed", "url": "https://pokeapi.co/api/v2/move/331/"}, {"name": "frenzy-plant", "url": "https://pokeapi.co/api/v2/move/338/"}, {"name": "magical-leaf", "url": "https://pokeapi.co/api/v2/move/345/"}, {"name": "leaf-blade", "url": "https://pokeapi.co/api/v2/move/348/"}, {"name": "worry-seed", "url": "https://pokeapi.co/api/v2/move/388/"}, {"name": "seed-bomb", "url": "https://pokeapi.co/api/v2/move/402/"}, {"name": "energy-ball", "url": "https://pokeapi.co/api/v2/move/412/"}, {"name": "leaf-storm", "url": "https://pokeapi.co/api/v2/move/437/"}, {"name": "power-whip", "url": "https://pokeapi.co/api/v2/move/438/"}, {"name": "grass-knot", "url": "https://pokeapi.co/api/v2/move/447/"}, {"name": "wood-hammer", "url": "https://pokeapi.co/api/v2/move/452/"}, {"name": "seed-flare", "url": "https://pokeapi.co/api/v2/move/465/"}, {"name": "grass-pledge", "url": "https://pokeapi.co/api/v2/move/520/"}, {"name": "horn-leech", "url": "https://pokeapi.co/api/v2/move/532/"}, {"name": "leaf-tornado", "url": "https://pokeapi.co/api/v2/move/536/"}, {"name": "cotton-guard", "url": "https://pokeapi.co/api/v2/move/538/"}, {"name": "forests-curse", "url": "https://pokeapi.co/api/v2/move/571/"}, {"name": "petal-blizzard", "url": "https://pokeapi.co/api/v2/move/572/"}, {"name": "grassy-terrain", "url": "https://pokeapi.co/api/v2/move/580/"}, {"name": "spiky-shield", "url": "https://pokeapi.co/api/v2/move/596/"}, {"name": "bloom-doom--physical", "url": "https://pokeapi.co/api/v2/move/644/"}, {"name": "bloom-doom--special", "url": "https://pokeapi.co/api/v2/move/645/"}, {"name": "strength-sap", "url": "https://pokeapi.co/api/v2/move/668/"}, {"name": "solar-blade", "url": "https://pokeapi.co/api/v2/move/669/"}, {"name": "leafage", "url": "https://pokeapi.co/api/v2/move/670/"}, {"name": "trop-kick", "url": "https://pokeapi.co/api/v2/move/688/"}, {"name": "sappy-seed", "url": "https://pokeapi.co/api/v2/move/738/"}, {"name": "max-overgrowth", "url": "https://pokeapi.co/api/v2/move/773/"}, {"name": "drum-beating", "url": "https://pokeapi.co/api/v2/move/778/"}, {"name": "snap-trap", "url": "https://pokeapi.co/api/v2/move/779/"}, {"name": "apple-acid", "url": "https://pokeapi.co/api/v2/move/787/"}, {"name": "grav-apple", "url": "https://pokeapi.co/api/v2/move/788/"}], "name": "grass", "names": [{"language": {"name": "ja-Hrkt", "url": "https://pokeapi.co/api/v2/language/1/"}, "name": "\u304f\u3055"}, {"language": {"name": "ko", "url": "https://pokeapi.co/api/v2/language/3/"}, "name": "\ud480"}, {"language": {"name": "fr", "url": "https://pokeapi.co/api/v2/language/5/"}, "name": "Plante"}, {"language": {"name": "de", "url": "https://pokeapi.co/api/v2/language/6/"}, "name": "Pflanze"}, {"language": {"name": "es", "url": "https://pokeapi.co/api/v2/language/7/"}, "name": "Planta"}, {"language": {"name": "it", "url": "https://pokeapi.co/api/v2/language/8/"}, "name": "Erba"}, {"language": {"name": "en", "url": "https://pokeapi.co/api/v2/language/9/"}, "name": "Grass"}], "pokemon": [{"pokemon": {"name": "bulbasaur", "url": "https://pokeapi.co/api/v2/pokemon/1/"}, "slot": 1}, {"pokemon": {"name": "ivysaur", "url": "https://pokeapi.co/api/v2/pokemon/2/"}, "slot": 1}, {"pokemon": {"name": "venusaur", "url": "https://pokeapi.co/api/v2/pokemon/3/"}, "slot": 1}, {"pokemon": {"name": "oddish", "url": "https://pokeapi.co/api/v2/pokemon/43/"}, "slot": 1}, {"pokemon": {"name": "gloom", "url": "https://pokeapi.co/api/v2/pokemon/44/"}, "slot": 1}, {"pokemon": {"name": "vileplume", "url": "https://pokeapi.co/api/v2/pokemon/45/"}, "slot": 1}, {"pokemon": {"name": "paras", "url": "https://pokeapi.co/api/v2/pokemon/46/"}, "slot": 2}, {"pokemon": {"name": "parasect", "url": "https://pokeapi.co/api/v2/pokemon/47/"}, "slot": 2}, {"pokemon": {"name": "bellsprout", "url": "https://pokeapi.co/api/v2/pokemon/69/"}, "slot": 1}, {"pokemon": {"name": "weepinbell", "url": "https://pokeapi.co/api/v2/pokemon/70/"}, "slot": 1}, {"pokemon": {"name": "victreebel", "url": "https://pokeapi.co/api/v2/pokemon/71/"}, "slot": 1}, {"pokemon": {"name": "exeggcute", "url": "https://pokeapi.co/api/v2/pokemon/102/"}, "slot": 1}, {"pokemon": {"name": "exeggutor", "url": "https://pokeapi.co/api/v2/pokemon/103/"}, "slot": 1}, {"pokemon": {"name": "tangela", "url": "https://pokeapi.co/api/v2/pokemon/114/"}, "slot": 1}, {"pokemon": {"name": "chikorita", "url": "https://pokeapi.co/api/v2/pokemon/152/"}, "slot": 1}, {"pokemon": {"name": "bayleef", "url": "https://pokeapi.co/api/v2/pokemon/153/"}, "slot": 1}, {"pokemon": {"name": "meganium", "url": "https://pokeapi.co/api/v2/pokemon/154/"}, "slot": 1}, {"pokemon": {"name": "bellossom", "url": "https://pokeapi.co/api/v2/pokemon/182/"}, "slot": 1}, {"pokemon": {"name": "hoppip", "url": "https://pokeapi.co/api/v2/pokemon/187/"}, "slot": 1}, {"pokemon": {"name": "skiploom", "url": "https://pokeapi.co/api/v2/pokemon/188/"}, "slot": 1}, {"pokemon": {"name": "jumpluff", "url": "https://pokeapi.co/api/v2/pokemon/189/"}, "slot": 1}, {"pokemon": {"name": "sunkern", "url": "https://pokeapi.co/api/v2/pokemon/191/"}, "slot": 1}, {"pokemon": {"name": "sunflora", "url": "https://pokeapi.co/api/v2/pokemon/192/"}, "slot": 1}, {"pokemon": {"name": "celebi", "url": "https://pokeapi.co/api/v2/pokemon/251/"}, "slot": 2}, {"pokemon": {"name": "treecko", "url": "https://pokeapi.co/api/v2/pokemon/252/"}, "slot": 1}, {"pokemon": {"name": "grovyle", "url": "https://pokeapi.co/api/v2/pokemon/253/"}, "slot": 1}, {"pokemon": {"name": "sceptile", "url": "https://pokeapi.co/api/v2/pokemon/254/"}, "slot": 1}, {"pokemon": {"name": "lotad", "url": "https://pokeapi.co/api/v2/pokemon/270/"}, "slot": 2}, {"pokemon": {"name": "lombre", "url": "https://pokeapi.co/api/v2/pokemon/271/"}, "slot": 2}, {"pokemon": {"name": "ludicolo", "url": "https://pokeapi.co/api/v2/pokemon/272/"}, "slot": 2}, {"pokemon": {"name": "seedot", "url": "https://pokeapi.co/api/v2/pokemon/273/"}, "slot": 1}, {"pokemon": {"name": "nuzleaf", "url": "https://pokeapi.co/api/v2/pokemon/274/"}, "slot": 1}, {"pokemon": {"name": "shiftry", "url": "https://pokeapi.co/api/v2/pokemon/275/"}, "slot": 1}, {"pokemon": {"name": "shroomish", "url": "https://pokeapi.co/api/v2/pokemon/285/"}, "slot": 1}, {"pokemon": {"name": "breloom", "url": "https://pokeapi.co/api/v2/pokemon/286/"}, "slot": 1}, {"pokemon": {"name": "roselia", "url": "https://pokeapi.co/api/v2/pokemon/315/"}, "slot": 1}, {"pokemon": {"name": "cacnea", "url": "https://pokeapi.co/api/v2/pokemon/331/"}, "slot": 1}, {"pokemon": {"name": "cacturne", "url": "https://pokeapi.co/api/v2/pokemon/332/"}, "slot": 1}, {"pokemon": {"name": "lileep", "url": "https://pokeapi.co/api/v2/pokemon/345/"}, "slot": 2}, {"pokemon": {"name": "cradily", "url": "https://pokeapi.co/api/v2/pokemon/346/"}, "slot": 2}, {"pokemon": {"name": "tropius", "url": "https://pokeapi.co/api/v2/pokemon/357/"}, "slot": 1}, {"pokemon": {"name": "turtwig", "url": "https://pokeapi.co/api/v2/pokemon/387/"}, "slot": 1}, {"pokemon": {"name": "grotle", "url": "https://pokeapi.co/api/v2/pokemon/388/"}, "slot": 1}, {"pokemon": {"name": "torterra", "url": "https://pokeapi.co/api/v2/pokemon/389/"}, "slot": 1}, {"pokemon": {"name": "budew", "url": "https://pokeapi.co/api/v2/pokemon/406/"}, "slot": 1}, {"pokemon": {"name": "roserade", "url": "https://pokeapi.co/api/v2/pokemon/407/"}, "slot": 1}, {"pokemon": {"name": "wormadam-plant", "url": "https://pokeapi.co/api/v2/pokemon/413/"}, "slot": 2}, {"pokemon": {"name": "cherubi", "url": "https://pokeapi.co/api/v2/pokemon/420/"}, "slot": 1}, {"pokemon": {"name": "cherrim", "url": "https://pokeapi.co/api/v2/pokemon/421/"}, "slot": 1}, {"pokemon": {"name": "carnivine", "url": "https://pokeapi.co/api/v2/pokemon/455/"}, "slot": 1}, {"pokemon": {"name": "snover", "url": "https://pokeapi.co/api/v2/pokemon/459/"}, "slot": 1}, {"pokemon": {"name": "abomasnow", "url": "https://pokeapi.co/api/v2/pokemon/460/"}, "slot": 1}, {"pokemon": {"name": "tangrowth", "url": "https://pokeapi.co/api/v2/pokemon/465/"}, "slot": 1}, {"pokemon": {"name": "leafeon", "url": "https://pokeapi.co/api/v2/pokemon/470/"}, "slot": 1}, {"pokemon": {"name": "shaymin-land", "url": "https://pokeapi.co/api/v2/pokemon/492/"}, "slot": 1}, {"pokemon": {"name": "snivy", "url": "https://pokeapi.co/api/v2/pokemon/495/"}, "slot": 1}, {"pokemon": {"name": "servine", "url": "https://pokeapi.co/api/v2/pokemon/496/"}, "slot": 1}, {"pokemon": {"name": "serperior", "url": "https://pokeapi.co/api/v2/pokemon/497/"}, "slot": 1}, {"pokemon": {"name": "pansage", "url": "https://pokeapi.co/api/v2/pokemon/511/"}, "slot": 1}, {"pokemon": {"name": "simisage", "url": "https://pokeapi.co/api/v2/pokemon/512/"}, "slot": 1}, {"pokemon": {"name": "sewaddle", "url": "https://pokeapi.co/api/v2/pokemon/540/"}, "slot": 2}, {"pokemon": {"name": "swadloon", "url": "https://pokeapi.co/api/v2/pokemon/541/"}, "slot": 2}, {"pokemon": {"name": "leavanny", "url": "https://pokeapi.co/api/v2/pokemon/542/"}, "slot": 2}, {"pokemon": {"name": "cottonee", "url": "https://pokeapi.co/api/v2/pokemon/546/"}, "slot": 1}, {"pokemon": {"name": "whimsicott", "url": "https://pokeapi.co/api/v2/pokemon/547/"}, "slot": 1}, {"pokemon": {"name": "petilil", "url": "https://pokeapi.co/api/v2/pokemon/548/"}, "slot": 1}, {"pokemon": {"name": "lilligant", "url": "https://pokeapi.co/api/v2/pokemon/549/"}, "slot": 1}, {"pokemon": {"name": "maractus", "url": "https://pokeapi.co/api/v2/pokemon/556/"}, "slot": 1}, {"pokemon": {"name": "deerling", "url": "https://pokeapi.co/api/v2/pokemon/585/"}, "slot": 2}, {"pokemon": {"name": "sawsbuck", "url": "https://pokeapi.co/api/v2/pokemon/586/"}, "slot": 2}, {"pokemon": {"name": "foongus", "url": "https://pokeapi.co/api/v2/pokemon/590/"}, "slot": 1}, {"pokemon": {"name": "amoonguss", "url": "https://pokeapi.co/api/v2/pokemon/591/"}, "slot": 1}, {"pokemon": {"name": "ferroseed", "url": "https://pokeapi.co/api/v2/pokemon/597/"}, "slot": 1}, {"pokemon": {"name": "ferrothorn", "url": "https://pokeapi.co/api/v2/pokemon/598/"}, "slot": 1}, {"pokemon": {"name": "virizion", "url": "https://pokeapi.co/api/v2/pokemon/640/"}, "slot": 1}, {"pokemon": {"name": "chespin", "url": "https://pokeapi.co/api/v2/pokemon/650/"}, "slot": 1}, {"pokemon": {"name": "quilladin", "url": "https://pokeapi.co/api/v2/pokemon/651/"}, "slot": 1}, {"pokemon": {"name": "chesnaught", "url": "https://pokeapi.co/api/v2/pokemon/652/"}, "slot": 1}, {"pokemon": {"name": "skiddo", "url": "https://pokeapi.co/api/v2/pokemon/672/"}, "slot": 1}, {"pokemon": {"name": "gogoat", "url": "https://pokeapi.co/api/v2/pokemon/673/"}, "slot": 1}, {"pokemon": {"name": "phantump", "url": "https://pokeapi.co/api/v2/pokemon/708/"}, "slot": 2}, {"pokemon": {"name": "trevenant", "url": "https://pokeapi.co/api/v2/pokemon/709/"}, "slot": 2}, {"pokemon": {"name": "pumpkaboo-average", "url": "https://pokeapi.co/api/v2/pokemon/710/"}, "slot": 2}, {"pokemon": {"name": "gourgeist-average", "url": "https://pokeapi.co/api/v2/pokemon/711/"}, "slot": 2}, {"pokemon": {"name": "rowlet", "url": "https://pokeapi.co/api/v2/pokemon/722/"}, "slot": 1}, {"pokemon": {"name": "dartrix", "url": "https://pokeapi.co/api/v2/pokemon/723/"}, "slot": 1}, {"pokemon": {"name": "decidueye", "url": "https://pokeapi.co/api/v2/pokemon/724/"}, "slot": 1}, {"pokemon": {"name": "fomantis", "url": "https://pokeapi.co/api/v2/pokemon/753/"}, "slot": 1}, {"pokemon": {"name": "lurantis", "url": "https://pokeapi.co/api/v2/pokemon/754/"}, "slot": 1}, {"pokemon": {"name": "morelull", "url": "https://pokeapi.co/api/v2/pokemon/755/"}, "slot": 1}, {"pokemon": {"name": "shiinotic", "url": "https://pokeapi.co/api/v2/pokemon/756/"}, "slot": 1}, {"pokemon": {"name": "bounsweet", "url": "https://pokeapi.co/api/v2/pokemon/761/"}, "slot": 1}, {"pokemon": {"name": "steenee", "url": "https://pokeapi.co/api/v2/pokemon/762/"}, "slot": 1}, {"pokemon": {"name": "tsareena", "url": "https://pokeapi.co/api/v2/pokemon/763/"}, "slot": 1}, {"pokemon": {"name": "dhelmise", "url": "https://pokeapi.co/api/v2/pokemon/781/"}, "slot": 2}, {"pokemon": {"name": "tapu-bulu", "url": "https://pokeapi.co/api/v2/pokemon/787/"}, "slot": 1}, {"pokemon": {"name": "kartana", "url": "https://pokeapi.co/api/v2/pokemon/798/"}, "slot": 1}, {"pokemon": {"name": "grookey", "url": "https://pokeapi.co/api/v2/pokemon/810/"}, "slot": 1}, {"pokemon": {"name": "thwackey", "url": "https://pokeapi.co/api/v2/pokemon/811/"}, "slot": 1}, {"pokemon": {"name": "rillaboom", "url": "https://pokeapi.co/api/v2/pokemon/812/"}, "slot": 1}, {"pokemon": {"name": "gossifleur", "url": "https://pokeapi.co/api/v2/pokemon/829/"}, "slot": 1}, {"pokemon": {"name": "eldegoss", "url": "https://pokeapi.co/api/v2/pokemon/830/"}, "slot": 1}, {"pokemon": {"name": "applin", "url": "https://pokeapi.co/api/v2/pokemon/840/"}, "slot": 1}, {"pokemon": {"name": "flapple", "url": "https://pokeapi.co/api/v2/pokemon/841/"}, "slot": 1}, {"pokemon": {"name": "appletun", "url": "https://pokeapi.co/api/v2/pokemon/842/"}, "slot": 1}, {"pokemon": {"name": "zarude", "url": "https://pokeapi.co/api/v2/pokemon/893/"}, "slot": 2}, {"pokemon": {"name": "calyrex", "url": "https://pokeapi.co/api/v2/pokemon/898/"}, "slot": 2}, {"pokemon": {"name": "shaymin-sky", "url": "https://pokeapi.co/api/v2/pokemon/10006/"}, "slot": 1}, {"pokemon": {"name": "rotom-mow", "url": "https://pokeapi.co/api/v2/pokemon/10012/"}, "slot": 2}, {"pokemon": {"name": "pumpkaboo-small", "url": "https://pokeapi.co/api/v2/pokemon/10027/"}, "slot": 2}, {"pokemon": {"name": "pumpkaboo-large", "url": "https://pokeapi.co/api/v2/pokemon/10028/"}, "slot": 2}, {"pokemon": {"name": "pumpkaboo-super", "url": "https://pokeapi.co/api/v2/pokemon/10029/"}, "slot": 2}, {"pokemon": {"name": "gourgeist-small", "url": "https://pokeapi.co/api/v2/pokemon/10030/"}, "slot": 2}, {"pokemon": {"name": "gourgeist-large", "url": "https://pokeapi.co/api/v2/pokemon/10031/"}, "slot": 2}, {"pokemon": {"name": "gourgeist-super", "url": "https://pokeapi.co/api/v2/pokemon/10032/"}, "slot": 2}, {"pokemon": {"name": "venusaur-mega", "url": "https://pokeapi.co/api/v2/pokemon/10033/"}, "slot": 1}, {"pokemon": {"name": "abomasnow-mega", "url": "https://pokeapi.co/api/v2/pokemon/10060/"}, "slot": 1}, {"pokemon": {"name": "sceptile-mega", "url": "https://pokeapi.co/api/v2/pokemon/10065/"}, "slot": 1}, {"pokemon": {"name": "exeggutor-alola", "url": "https://pokeapi.co/api/v2/pokemon/10114/"}, "slot": 1}, {"pokemon": {"name": "lurantis-totem", "url": "https://pokeapi.co/api/v2/pokemon/10128/"}, "slot": 1}, {"pokemon": {"name": "venusaur-gmax", "url": "https://pokeapi.co/api/v2/pokemon/10186/"}, "slot": 1}, {"pokemon": {"name": "rillaboom-gmax", "url": "https://pokeapi.co/api/v2/pokemon/10200/"}, "slot": 1}, {"pokemon": {"name": "flapple-gmax", "url": "https://pokeapi.co/api/v2/pokemon/10207/"}, "slot": 1}, {"pokemon": {"name": "appletun-gmax", "url": "https://pokeapi.co/api/v2/pokemon/10208/"}, "slot": 1}]} \ No newline at end of file diff --git a/nearest_square.py b/nearest_square.py new file mode 100644 index 0000000..2bc0beb --- /dev/null +++ b/nearest_square.py @@ -0,0 +1,6 @@ +import math +def nearest_square(num): + if num<0: + return 0 + num=int(math.sqrt(num)) + return num**2 \ No newline at end of file diff --git a/pokedex.py b/pokedex.py new file mode 100644 index 0000000..e3a73bd --- /dev/null +++ b/pokedex.py @@ -0,0 +1,88 @@ +import PySimpleGUI as sg +import requests + + +layout = [[sg.Text("Enter the name of Pokemon:")], + [sg.Input(key='-INPUT-')], + [sg.Text(size=(100,1), key='-OUTPUT1-')], + [sg.Text(size=(100,1), key='-OUTPUT2-')], + [sg.Text(size=(100,3), key='-OUTPUT3-')], + [sg.Text(size=(100,15), key='-OUTPUT4-')], + [sg.Text(size=(100,1), key='-OUTPUT5-')], + [sg.Button('Search'), sg.Button('Quit')]] + +def ability(name): + url = "http://pokeapi.co/api/v2/pokemon/"+name+"/" + data = requests.get(url).json() + ably=[] + for i in data["abilities"]: + ably.append(i['ability']['name']) + return ably + + + +window = sg.Window('PokeDex', layout) + +while True: + event, values = window.read() + if event == sg.WINDOW_CLOSED or event == 'Quit': + break + + Details="Name of the pokemon:"+values['-INPUT-'] + window['-OUTPUT1-'].update(Details) + name=values["-INPUT-"] + #####################################TYPE############################################################ + urll = "http://pokeapi.co/api/v2/pokemon/"+name+"/" + urls=[] + tp=[] + data = requests.get(urll).json() + for i in range (2): + poke_type=data["types"][i]['type']['name'] + urls.append(data["types"][i]['type']['url']) #appending url for step 2 + tp.append(poke_type) + + Details="Type of pokemon is: "+str(tp) + window['-OUTPUT2-'].update(Details) + + ################################DOUBLE DAMAGE######################################################### + + + Details="Double Damage are given by the following type: \n" + d_dmg_url=[] + cn=0 + tpp=tp + tp=[] + for url in urls: + poke_type=requests.get(url).json() + Details+="Double Damage for "+tpp[cn]+" by: " + cn+=1 + for j in poke_type["damage_relations"]["double_damage_from"]: + Details+=j["name"]+' ' + tp.append(j["name"]) + d_dmg_url.append(j["url"]) + Details+='\n' + window['-OUTPUT3-'].update(Details) + + ######################################List 5 pokemon################################################### + Details='List 5 pokemons which gives the given pokemon double damage:\n' + print(d_dmg_url) + for i in range(len(d_dmg_url)): + dat=requests.get(d_dmg_url[i]).json() + Details+=("Pokemon of Type: "+tp[i]+'\n') + for j in range(5): + Details+=(dat["pokemon"][j]["pokemon"]["name"]) + if j!=4: + Details+=(',') + Details+=("\n\n") + + window['-OUTPUT4-'].update(Details) + ##################################ABILITY############################################################### + Details="Ability: "+str(ability(values['-INPUT-'])) + window['-OUTPUT5-'].update(Details) + +window.close() + +# What is the type of pokemon +# What type of pokemon gives double damages to the given pokemon +# List 5 pokemons which gives the given pokemon double damage +# Abilities of our pokemon \ No newline at end of file diff --git a/step_4.py b/step_4.py new file mode 100644 index 0000000..67edd2c --- /dev/null +++ b/step_4.py @@ -0,0 +1,54 @@ +import time +import numpy as np + +with open('subset_elemets.txt') as f: + subset_elements = f.read().split('\n') + +with open('all_elements.txt') as f: + all_elements = f.read().split('\n') + +def withloop(): + """Name: function1 +Description: This is a function which finds the the common elements in two lists using a for loop""" + start = time.time() + verified_elements = [] + + for element in subset_elements: + if element in all_elements: + verified_elements.append(element) + + print(len(verified_elements)) + print('Duration: {} seconds'.format(time.time() - start)) + +def withnumpy(): + """Name: function2 +Description: This is a function which finds the the common elements in + two lists using an inbuilt function called intersect1d in numpy""" + start = time.time() + verified_elements=np.intersect1d(all_elements,subset_elements) + + print(len(verified_elements)) + print('Duration: {} seconds'.format(time.time() - start)) + +def withDS(): + """Name: function3 +Description: This is a function which finds the the common elements in two lists using set. + """ + start=time.time() + + #using datastructure set. + verified_elements=list(set(all_elements)&set(subset_elements)) + + print(len(verified_elements)) + print('Duration: {} seconds'.format(time.time() - start)) + +def main(): + print(withloop.__doc__) + withloop() + print(withnumpy.__doc__) + withnumpy() + print(withDS.__doc__) + withDS() + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/tempCodeRunnerFile.py b/tempCodeRunnerFile.py new file mode 100644 index 0000000..c4b9e04 --- /dev/null +++ b/tempCodeRunnerFile.py @@ -0,0 +1,43 @@ + ################################DOUBLE DAMAGE######################################################### + ddm=['',''] + ddm[0]+=tp[0] + ddm[1]+=tp[1] + + d_dmg_url=[] + tp=[] + ans1=[] + ans2=[] + cn=0 + for url in urls: + poke_type=requests.get(url).json() + for j in poke_type["damage_relations"]["double_damage_from"]: + if not cn: + ans1.append(j["name"]) + else: + ans2.append(j["name"]) + tp.append(j["name"]) + d_dmg_url.append(j["url"]) + cn+=1 + Details='' + Details="Double Damage are given by the following type: \n" + Details+="For "+str(ddm[0])+" : "+str(ans1)+"\n" + Details+="For "+str(ddm[1])+" : "+str(ans2)+"\n" + window['-OUTPUT3-'].update(Details) + + ######################################List 5 pokemon################################################### + Details='List 5 pokemons which gives the given pokemon double damage:\n' + for i in range(len(d_dmg_url)): + dat=requests.get(d_dmg_url[i]).json() + Details+=("Pokemon of Type: "+tp[i]+'\n') + for j in range(5): + Details+=(dat["pokemon"][j]["pokemon"]["name"]) + if j!=4: + Details+=(',') + Details+=("\n\n") + + window['-OUTPUT4-'].update(Details) + ##################################ABILITY############################################################### + Details="Ability: "+str(ability(values['-INPUT-'])) + window['-OUTPUT5-'].update(Details) + +window.close() \ No newline at end of file diff --git a/test.py b/test.py new file mode 100644 index 0000000..ae63b37 --- /dev/null +++ b/test.py @@ -0,0 +1,22 @@ +import requests +import json +urll = "http://pokeapi.co/api/v2/pokemon/gyarados/" +urls=[] +data = requests.get(urll).json() +for i in range (2): + poke_type=data["types"][i]['type']['name'] + urls.append(data["types"][i]['type']['url']) #appending url for step 2 +d_dmg_url=[] +tp=[] +for url in urls: + poke_type=requests.get(url).json() + for j in poke_type["damage_relations"]["double_damage_from"]: + d_dmg_url.append(j["url"]) + tp.append(j["name"]) + +for i in range(len(d_dmg_url)): + dat=requests.get(d_dmg_url[i]).json() + print("Pokemon of Type: "+tp[i]) + for j in range(5): + print(dat["pokemon"][j]["pokemon"]["name"],end=',') + print("\n") \ No newline at end of file diff --git a/test2.py b/test2.py new file mode 100644 index 0000000..347d40f --- /dev/null +++ b/test2.py @@ -0,0 +1,38 @@ +# #1 +# import requests + +# url = "http://pokeapi.co/api/v2/pokemon/jigglypuff/" + +# payload = "" +# response = requests.request("GET", url, data=payload) + +# data = response.json() +# print("Type 1:",data["types"][0]["type"]["name"]) +# print("Type 2:",data["types"][1]["type"]["name"]) +import requests + +url = "http://pokeapi.co/api/v2/pokemon/jigglypuff/" + +url1=(data["types"][0]["type"]["url"]) +url2=(data["types"][1]["type"]["url"]) + +payload1 = "" +payload2 = "" + +response1 = requests.request("GET", url1, data=payload1) +response2 = requests.request("GET", url2, data=payload2) + +data1 = response1.json() +data2 = response2.json() + +for i in range(len(data1["damage_relations"]["double_damage_from"])): + print(data1["damage_relations"]["double_damage_from"][i]["name"]) + +for i in range(len(data2["damage_relations"]["double_damage_from"])): + print(data2["damage_relations"]["double_damage_from"][i]["name"]) + +for i in range(len(data1["damage_relations"]["half_damage_from"])): + print(data1["damage_relations"]["half_damage_from"][i]["name"]) + +for i in range(len(data2["damage_relations"]["half_damage_from"])): + print(data2["damage_relations"]["half_damage_from"][i]["name"]) \ No newline at end of file