{"id":25347,"date":"2024-05-30T18:40:44","date_gmt":"2024-05-30T09:40:44","guid":{"rendered":"http:\/\/www.tyosuke20xx.com\/blog\/?p=25347"},"modified":"2024-05-30T18:40:47","modified_gmt":"2024-05-30T09:40:47","slug":"python-%e3%83%90%e3%82%b1%e3%83%a2%e3%83%b3","status":"publish","type":"post","link":"http:\/\/www.tyosuke20xx.com\/blog\/?p=25347","title":{"rendered":"python \u30d0\u30b1\u30e2\u30f3"},"content":{"rendered":"\n<pre class=\"wp-block-code\"><code>import random\n\nclass Bakemon:\n    def __init__(self, name, hp, attack):\n        self.name = name\n        self.hp = hp\n        self.attack = attack\n\n    def is_alive(self):\n        return self.hp > 0\n\n    def take_damage(self, damage):\n        self.hp -= damage\n        if self.hp &lt; 0:\n            self.hp = 0\n\n    def attack_opponent(self, opponent):\n        damage = random.randint(1, self.attack)\n        opponent.take_damage(damage)\n        return damage\n\ndef create_bakemon():\n    bakemon_list = &#91;\n        Bakemon(\"Bakachu\", 50, 10),\n        Bakemon(\"Charabak\", 60, 12),\n        Bakemon(\"Bakasaur\", 55, 11),\n        Bakemon(\"Squirtlemon\", 50, 10)\n    ]\n    return bakemon_list\n\ndef choose_bakemon(bakemon_list):\n    print(\"Choose your Bakemon:\")\n    for idx, bakemon in enumerate(bakemon_list):\n        print(f\"{idx + 1}. {bakemon.name} (HP: {bakemon.hp}, Attack: {bakemon.attack})\")\n    choice = int(input(\"Enter the number of your choice: \")) - 1\n    return bakemon_list&#91;choice]\n\ndef battle(player_bakemon, enemy_bakemon):\n    print(f\"A wild {enemy_bakemon.name} appeared!\")\n    while player_bakemon.is_alive() and enemy_bakemon.is_alive():\n        print(f\"\\n{player_bakemon.name} (HP: {player_bakemon.hp}) vs {enemy_bakemon.name} (HP: {enemy_bakemon.hp})\")\n        action = input(\"Do you want to attack (a) or run (r)? \").lower()\n        if action == 'a':\n            damage = player_bakemon.attack_opponent(enemy_bakemon)\n            print(f\"{player_bakemon.name} dealt {damage} damage to {enemy_bakemon.name}!\")\n            if enemy_bakemon.is_alive():\n                damage = enemy_bakemon.attack_opponent(player_bakemon)\n                print(f\"{enemy_bakemon.name} dealt {damage} damage to {player_bakemon.name}!\")\n            else:\n                print(f\"{enemy_bakemon.name} is defeated!\")\n                break\n        elif action == 'r':\n            print(\"You ran away!\")\n            break\n        else:\n            print(\"Invalid action. Please choose again.\")\n    \n    if not player_bakemon.is_alive():\n        print(f\"{player_bakemon.name} is defeated! Game over.\")\n        return False\n    return True\n\ndef main():\n    print(\"Welcome to the Bakemon game!\")\n    bakemon_list = create_bakemon()\n    player_bakemon = choose_bakemon(bakemon_list)\n    \n    while True:\n        enemy_bakemon = random.choice(bakemon_list)\n        if enemy_bakemon == player_bakemon:\n            continue\n        if not battle(player_bakemon, enemy_bakemon):\n            break\n        play_again = input(\"Do you want to battle again? (y\/n): \").lower()\n        if play_again != 'y':\n            print(\"Thanks for playing! Goodbye.\")\n            break\n\nif __name__ == \"__main__\":\n    main()\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[65,44],"tags":[3,39],"class_list":["post-25347","post","type-post","status-publish","format-standard","hentry","category-python","category-44","tag-programming","tag-python"],"aioseo_notices":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/25347","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=25347"}],"version-history":[{"count":1,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/25347\/revisions"}],"predecessor-version":[{"id":25348,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/25347\/revisions\/25348"}],"wp:attachment":[{"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=25347"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=25347"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=25347"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}