我希望能够将数组的元素打印出来,每个元素单独一行,不要有逗号。我正在编写插入排序的函数,虽然它可以正确地工作,但我发现很难正确地打印它们。我编写的代码如下:
#!/bin/python
def insertionSort(ar):
newNo = ar[-1]
for i in range(0, m-1):
if(newNo < ar[m-i-1]):
ar[m-i] = ar[m-i-1]
for e in ar:
print e,
print '\n'
ar[m-i-1] = newNo
for f in ar: print f,
m = input()
ar = [int(i) for i in raw_input().strip().split()]
insertionSort(ar)
我得到的输出是:
2 4 6 8 8
2 4 6 6 8
2 4 4 6 8
2 3 4 6 8
以下是代码通过测试用例所需的输出结果:
2 4 6 8 8
2 4 6 6 8
2 4 4 6 8
2 3 4 6 8
即在行之间没有额外的空格。点击此处获取详细的问题陈述。
print '\n'
会打印出两个新的空行...一个是显式的,另一个是隐式的... - Jon Clementssys.stdout.write
和print
之间定义上的区别。 - Malik Brahimi