我试图在python中创建一个函数,但我不认为我正确地理解了如何去做

时间:2017-03-28 20:49:33

标签: python function

我正在创建一个函数来计算出三角形的区域。我已经完成了实际的代码,因为它非常简单,但我不知道如何将它实现到函数中。

这就是我现在所拥有的。

height = int(input("how tall is the triangle?"))

base = int(input("how long is the base of the triangle?"))

prtwaythre = height * base

area = prtwaythre / 2

print("the area is",area)

我试图通过这样做将其实现到一个函数中:

def trianglearea():
    prtwaythre = height * base
    area = prtwaythre / 2
    print("the area is",area)
    return

if choice == "1":
    height = int(input("what is the height of the triangle?"))
    base == int(input("what is the length of the base?"))
    trianglearea(height,base)

任何人都可以解释我出错的地方吗?

编辑:我已经意识到我的问题现在在于我的选项列表,但是我无法注意到我在哪里出错了。你能吗?

while True:
        try:
            print("To select a function please choose from below")
            print("1. area of a triangle")
            print("2. area of a circle")
            print("3. circumferance of a circle")
            print("4. calculate the mean")
            print("5. percentage change")
            print("6. perimeter of a shape")
            print("7. square root")
            print("8. times by a power")
            choice = int(input("To select a function please choose from above"))
            break
        except ValueError:
            print("enter a valid option")

1 个答案:

答案 0 :(得分:0)

你有一些小问题。首先,当你编写一个函数时,你必须指定它需要的参数。您可以使用关键字参数或必需的命名参数来执行此操作。

func observeSingleEvent(of eventType: FIRDataEventType, with block: @escaping (FIRDataSnapshot) -> Void)

将是最简单的方法,但另一种选择是:

def trianglearea(height, base):
    prtwaythre = height * base
    area = prtwaythre / 2
    print("the area is",area)
    return

这里的第二个问题是您使用def trianglearea(height=1, base=): prtwaythre = height * base area = prtwaythre / 2.0 print("the area is",area) return 进行分配。

==

而不是

base = int(input("what is the length of the base?"))