python - TypeError: 'int' object is not iterable, 不知道为什么会这样
问题描述
def rectangleArea(l):
lt = list(l[0])
l = lt[:3:2]
l.sort()
x = l[1] - l[0]
l = lt[1:4:2]
l.sort()
y = l[1] - l[0]
area = x * y
return area
l = [(30, 60, 60, 30), (50, 10, 10, 50)]
for i in range(2):
print("Rectangle")
la = l[i]
print(la)
area = rectangleArea(la)
print(area)
对不起,我的英语不好。如您所见,元组在列表“l”中,我不想编辑它。当我在没有 for 循环的情况下运行它时,它运行良好。并且使用 for 循环,会出现“TypeError: 'int' object is not iterable”。错误消息如下所示:
Traceback (most recent call last):
File "C:/Users/Administrator/Desktop/MP09/help.py", line 19, in <module>
area = rectangleArea(la)
File "C:/Users/Administrator/Desktop/MP09/help.py", line 3, in rectangleArea
lt = list(l1[0])
我查了一下,我的情况和别人不一样。我想这与la = l[i]有关,但我不确定。这段代码有什么问题。请帮我
解决方案
lt = list(l[0])
lt = list(l)
在您的代码中替换它。
您的代码一个接一个地选择矩形边并传递给函数。现在在函数内部,您只需要将元组转换为列表,但您要做的是选择其中的第一个元素。
推荐阅读
- javascript - 关闭票务系统不起作用... Discord.js
- javascript - 有条件地导入脚本文件
- python - 根据条件python检查行中的下一个值是否相同?
- c++ - 当我声明它时,Class' 没有被声明为错误
- javascript - 如何从紫色更改 React Appbar 链接
- css-transitions - Android Google Chrome menu-burger 转换问题(translateY 无法正常工作)
- tfs - Ready API (v2.4) 与 TFS 集成,用于代码仓库
- java - 计算线段和点之间的距离
- react-native - 尝试在反应本机 pjsip 模块中创建帐户时出错
- jestjs - 使用排毒环境设置 Jest 后发出 Hang Detox Test