【发布时间】:2014-04-05 07:40:23
【问题描述】:
def printsection1(animals, station1, station2):
animals=['a01', 'a02', 'a03', 'a04', 'a05']
station1={'a04': 5, 'a05': 1, 'a03': 62, 'a01': 21}
station2={'a04': 5, 'a02': 3, 'a03': 4, 'a01': 1}
print('Number of times each animal visited each station :')
print('Animal Id'+' '*11+'Station 1'+' '*11+'Station 2'+' ')
for name in animals:
if name in station1:
visit=str(station1.get(name))
else:
visit=0
if name in station2:
visit2=str(station2.get(name))
else:
visit2=0
这里:
space=(20-len(visit2))*' '
print(name+' '*17+str(visit)+space+str(visit2))
print('='*60)
输出:
Number of times each animal visited each station :
Animal Id Station 1 Station 2
a01 21 1
a02 0 3
a03 62 4
a04 5 5
a05 1 0
============================================================
大家好
我正在开发一个程序,这是其中的一部分。我试图打印显示的内容。
我不断收到错误builtins.TypeError: object of type 'int' has no len()
它打印除a05 之外的所有内容
我试图保持列正好 20 个字符长(即 station1、station2 和动物 ID)。所以我在打印之前输入了条件。
我知道我正在调用一个不受支持的 str 和 int 操作数(位置如上所示) 希望各位大神帮忙。 谢谢:)
更新:
它打印:
不打印a05
Number of times each animal visited each station :
Animal Id Station 1 Station 2
a01 21 1
a02 0 3
a03 62 4
a04 5 5
builtins.TypeError: object of type 'int' has no len()
【问题讨论】:
标签: python