-1
私は友人を示すためにPythonで単純なテキストゲームを構築しましたが、それはシェル上でうまく動作しますが、端末ではエラーが発生します。 Pythonで端末対シェルのコンパイルに違いはありますか?シェルでターミナルのPython 3はシェルと異なりますか?
は、このために何らかの理由はありますか?
マイコード:
"""""~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~IMPORT PACKAGES~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"""""
from random import randint
import os
import copy
import math
import time
import pickle
import platform
import subprocess as sp
"""""~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~LOAD DATA/NEW GAME~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"""""
newData = {"assassin" : {'hp' : 100, 'atk' : 250, 'lvl' : 1, 'arm' : 0, 'pow' : {'name' : 'surprise attack', 'lvl' : 0}, 'xp' : 0},
"mage" : {'hp' : 100, 'atk' : 200, 'lvl' : 1, 'arm' : 0, 'pow' : {'name' : 'fire','lvl' : 0}, 'xp' : 0},
"knight" : {'hp' : 100, 'atk' : 150, 'lvl' : 1, 'arm' : 10, 'pow' : {'name' : 'dodging','lvl' : 0}, 'xp' : 0},
"healer" : {'hp' : 500, 'atk' : 50, 'lvl' : 1, 'arm' : 0, 'pow' : {'name' : 'healing','lvl' : 0}, 'xp' : 0}}
if platform.system()=='Windows':
file = 'filepath'
elif platform.system()=='Darwin':
file = 'filepath'
"""Clears screen"""
clear = lambda: os.system('cls' if platform.system()=='Windows' else 'clear')
print('Load data?')
while True:
answer = input()
if answer == 'yes':
load_file = open(file, 'rb')
characterData = pickle.load(load_file)
load_file.close()
break
elif answer == 'no':
print('Starting a new game...')
time.sleep(0.5)
characterData = copy.deepcopy(newData)
save_file = open(file, 'wb')
pickle.dump(characterData, save_file)
save_file.close()
break
else:
print('That input cannot be deciphered. Please type "yes" or "no".')