四則演算

execに頼るというのも情けない話なので、
とりあえず、四則演算を実装。

def calc(expr, x):
	ret = None
	tmp = 0
	calcPtn = ""
	for val in expr.split(" "):
		try:
			if(ret == None):
				if(val == "x"):
					ret = x
				else:
					ret = int(val)
			else:
				if(val == "x"):
					tmp = x
				else:
					tmp = int(val)
				if(calcPtn == "+"):
					ret += tmp
				elif(calcPtn == "-"):
					ret -= tmp
				elif(calcPtn == "*"):
					ret *= tmp
				elif(calcPtn == "/"):
					ret /= tmp
		except:
			calcPtn = val
	return ret

expr = "x + x * x - x / 2"
for x in range(10):
	ret = calc(expr, x)
	print "%s = %d (x = %d)" % (expr, ret, x)

式がスペース区切りという情けない仕様ですが…(´Д`;