警示后人(python学员全RE看这里)
查看原帖
警示后人(python学员全RE看这里)
1409685
zhaoyikuan_kkk楼主2024/8/22 12:32

这个题有个很大的坑,导致很多python学员在IDE上程序没问题,交上全RE。接下来我们来分析一下问题: 问题1:输入方式

很多python学员选择用这个for循环来输入,这是一个坑:

for i in input()

在自己的IDE上,大家都是一个字一个字敲的,但洛谷可不这样,直接粘上的,所以如果直接粘上,这两行会输入到一起,导致一直运行,然后RE

解决方式:分两个input()输入

a = input()
b = input()

如果这个问题在你的程序里没有体现,那就是下面的问题2了

问题2:输入的样例有坑

来我们先看输入样例:

COMETQ ←这里有个空格,发现没

HVNGAT

坑就坑在这个第一行后面有个空格,众所周知,input是碰到回车才结束读入,所以他把空格读进去了,然后get()一个空格,发现空格没有就返回了None,然后和整数一乘,就RE了。

如果用的是字典[键]的方式,那更可怕了,没找到就直接报错,RE

所以这个要特判一下空格。 特判方法:用if判断当前字符是否为空格,如果是空格就需要continue一下(或者在字典里设一组空格的键值对—— " " : 1 )

2024/8/22 12:32
加载中...