1、错误描述
>>> a=1; >>> b=1; >>> for i in range(1,21): print('121d %121d' % (a,b)); if(i%3==0): a=a+b ; b=a+b; Traceback (most recent call last): File "<pyshell#23>", line 2, in <module> print('121d %121d' % (a,b)); TypeError: not all arguments converted during string formatting >>>
2、错误原因
由错误提示可知,并不是所有的参数都可以转换成字符串格式
3、解决办法
>>> a=1; >>> b=1; >>> for i in range(1,21): print('%12ld %12ld' % (a,b)); if((i%3)==0): print(""); a=a+b; b=a+b; 1 1 1 1 1 1 2 3 2 3 2 3 5 8 5 8 5 8 13 21 13 21 13 21 34 55 34 55 34 55 89 144 89 144 89 144 233 377 233 377 >>>