使用数字和字符串打印嵌套列表中每个元素的大小
Printing the size of each element in a nested list with numbers and strings
当我尝试 运行 以下 for 循环时出现错误。
TypeError: object of type 'int' has no len()
期望的输出:1 1 3 3
这是我正在尝试的代码 运行。感谢所有能帮我解答这个问题的人!
lst = ['spam!', 1, ['Brie', 'Roquefort', 'Pol lê Veq'], [1, 2, 3]]
for index in lst:
print(len(index))
首先,您需要检查每个项目是否是一个列表。然后,将 len
函数应用于列表项并打印出结果,否则,打印出 1
.
lst = ['spam!', 1, ['Brie', 'Roquefort', 'Pol lê Veq'], [1, 2, 3]]
for i in lst:
if isinstance(i, list):
print(len(i))
else:
print(1)
问题是您无法在 python 中获取整数的字符长度,您可以将每个项目变成一个列表。
list = [['spam!'], [1], ['Brie', 'Roquefort', 'Pol lê Veq'], [1, 2, 3]]
for index in list:
print(len(index))
或者您可以使用字符串而不是整数,并在需要时转换它。
当我尝试 运行 以下 for 循环时出现错误。
TypeError: object of type 'int' has no len()
期望的输出:1 1 3 3
这是我正在尝试的代码 运行。感谢所有能帮我解答这个问题的人!
lst = ['spam!', 1, ['Brie', 'Roquefort', 'Pol lê Veq'], [1, 2, 3]]
for index in lst:
print(len(index))
首先,您需要检查每个项目是否是一个列表。然后,将 len
函数应用于列表项并打印出结果,否则,打印出 1
.
lst = ['spam!', 1, ['Brie', 'Roquefort', 'Pol lê Veq'], [1, 2, 3]]
for i in lst:
if isinstance(i, list):
print(len(i))
else:
print(1)
问题是您无法在 python 中获取整数的字符长度,您可以将每个项目变成一个列表。
list = [['spam!'], [1], ['Brie', 'Roquefort', 'Pol lê Veq'], [1, 2, 3]]
for index in list:
print(len(index))
或者您可以使用字符串而不是整数,并在需要时转换它。