gpt4 book ai didi

python - 如何使这段 Python 代码更易用和可读?

转载 作者:太空宇宙 更新时间:2023-11-04 07:13:10 25 4
gpt4 key购买 nike

Python 初学者,但已经编程大约 5 年了。我怀疑我有很多东西要学习以面向对象的方式做事,但我知道基础知识。我计划编写一个计算器,以显示它可以应对挑战和我将从中获得的知识。我刚开始,这就是我所拥有的,它对我来说真的很难看。你会怎么做?

附言这只是一个简单的脚本,用于从括号内提取问题,将其相加,展示工作,然后评估整个问题。

import re

def EvalParenths(problem):
contents = ""
if re.match( "\(", problem):
contents = re.match("(\(.*\))", problem)
parenthsAnswer = contents.group(0)
problem = problem.replace(parenthsAnswer, '')
print " \ \n " + str(eval(parenthsAnswer)) + problem
problem = problem.replace(parenthsAnswer, '')
answer = eval(parenthsAnswer+problem)
print " \ \n " + str(answer)
else:
print "Didn't Find Parenthesis"

def ProblemHasParenths(problem):
return re.match( "\(", problem)

"""""
Example Problem: (12/4)*2

"""""

problem = raw_input()

if ProblemHasParenths:
EvalParenths(problem)

最佳答案

一些问题:

contents = re.match("(\(.*\))", problem)

当输入 (1+2)/(3+4) 时,它将尝试计算 1+2)/(3+4

它也不会一直进入嵌套括号,为此您需要使用递归。

我认为你应该在“看答案”之前再试一次。

关于python - 如何使这段 Python 代码更易用和可读?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1737013/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com