【发布时间】:2014-03-26 18:36:52
【问题描述】:
Python 提供了一个名为len 的内置函数,它返回一个字符串的长度,因此len('allen') 的值是5。编写一个名为right_justify 的函数,它接受一个名为s 的字符串作为参数并打印带有足够前导空格的字符串,以便字符串的最后一个字母在显示的第 70 列中。
作者的解决方案:
def right_justify(s):
print (' '*(70-len(s))+s)
>>> right_justify('allen')
我的解决方案:
def right_justify(s):
space_count=70-len(s)
for i in range(0,space_count,1):
print " ",
print s
strng=raw_input("Enter your desired string:")
print len(strng)
right_justify(strng)
我的代码输出与作者代码的输出不同:我得到了两倍的空格,例如130 而不是 65。
但在我看来,这两段代码在逻辑上是等价的。我忽略了什么?
【问题讨论】:
-
这些代码之间有什么不同吗?你的意思是除了它们实际上是不同的吗?
-
您期望的输出是什么,您的代码给出的输出是什么?
标签: python