Python: 3/4/5 や 32432/23423/2354325 や 3425*343/254235 や 43252+34254-2435 などの式を取るプログラム (クラス課題) に取り組んでいます。 +、-、/、* のすべての演算子)。式を解いていきます。
私は評価を使用できません!!
高レベルのコードは使用できません。せいぜい、以下の Web サイトの文字列マニピュレーターを使用して文字列を分割することに制限されています。
http://docs.python.org/2/library/stdtypes.html#typesseq
私の方法は、ユーザーが入力した式を見て、検索関数を使用して演算子を見つけ、これらの演算子とスライス関数 (例: s[0:x]) を使用することです。私が持っているものは以下のとおりですが、残念ながら機能していません: *印刷ステートメントはデバッグ目的でのみ含まれていることに注意してください。編集: プログラムを実行して式を入力すると x が定義されないのはなぜですか?
z= (input("expression:")).strip()
def finding(z):
if "/" in z:
x=z.find("/")
print("hi1")
elif "*" in z:
x=z.find("*")
print("hi2")
elif "+" in z:
x=z.find("+")
print("hi3")
elif "-" in z:
x=z.find("-")
print("hi4")
else:
print("error, not math expression")
return x
def Parsing(z,x):
x= finding(z)
qw=z.s[0:x]
print (qw)
# take the x-value from function finding(z) and use it to split
finding(z)
Parsing(z,x)