关于oj提交Python代码Presentation Error空格换行出错

本文介绍在代码在线评测平台使用Python时的常见错误及解决办法,包括正确处理输入输出、避免格式错误等问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景

  • 当我们在代码oj平台上用Python提交代码时,容易出现一些格式上的错误
    Python在输出换行符”\n”时,会自动输出2个,能明显看出行与行之间距离变大
    提交后容易出现Presentation Error错误

  • 在线提交Python代码编译,常会碰到输出以空格间距,然后一行一行的输出,比如:

Sample Input

6
5 2 4 6 1 3

Sample Output

5 2 4 6 1 3
2 5 4 6 1 3
2 4 5 6 1 3
2 4 5 6 1 3
1 2 4 5 6 3
1 2 3 4 5 6

用Python在线提交代码注意事项:

n = int(input())
L = []
for i in (input()).split(' '):
    L.append(int(i))

print(' '.join([str(i) for i in L]))  # <---用这种的

for i in range(1, n):
    v = L[i]
    j = i
    while j>0 and L[j-1]>v:
        L[j] = L[j-1]
        j -= 1
    L[j] = v
    print(' '.join([str(i) for i in L]))
  • 对于输入,使用input()接受,注意返回是 str 类型
  • 对于输出,使用Python的 join 函数进行输出:
'分隔符'.join(序列、元组...)
注意join的是字符串,序列/元组...中的元素需要是字符串

不要使用这种的哦:

print(i,end=' ')  # 解决空格
print('\n')  # 解决换行输出,会自动输出2个换行,间距变大
比如输出这种:
4 5 3 2 1 

3 4 5 2 1 

2 3 4 5 1 

Python获取输入:

1.

n = int(input())
data = []
for i in range(n):
    data.append(i)

2.

n = int(input())
data = list(map(int, [input() for i in range(n)]))

3.

import sys
data = [int(l) for l in sys.stdin.readlines()]

当然是第3种好,速度快

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值