【发布时间】:2015-11-17 01:29:54
【问题描述】:
我不知道为什么我在将一个 int 和一个函数相乘时遇到错误。
File "E:/Fundamentals of Programming/Programs/polygon_area.py", line 23, in polygon_area
area = (num_sides * side_length * side_length) / \
TypeError: unsupported operand type(s) for *: 'int' and 'function'
代码:
#this program computes
#the area of polygons
import math
def main():
get_side_length()
side_length = get_side_length
report(side_length)
def report(side_length):
print('side length \t number of sides \t area')
for i in range(3, 10):
num_sides = i
polygon_area(num_sides, side_length)
area = polygon_area
print(side_length, '\t', num_sides, '\t', area)
def polygon_area(num_sides, side_length):
area = (num_sides * side_length * side_length) / \
(4 * math.tan(math.pi / num_sides))
return area
def get_side_length():
int(input('Input the length of a side. '))
return get_side_length
#start program
main()
【问题讨论】:
-
get_side_length正在读取并丢弃一个值,然后返回自身。我认为您需要了解变量和函数的实际工作方式;这段代码充满了错误,这些错误暴露了对基本编程概念的根本误解。 -
我是一名编程专业的学生,他的第一季度已经完成了一半。我正在学习这些基本概念并且刚刚开始使用功能。