牛客网笔试的时候Python的输入输出是真的很坑,有时候线下自测案例是正常的,线上却怎么都调不过去,这里简单记录一下。
1、input
▲需要注意的是input()是一行一行读取的,也就是每次只能读取一行,需要读取第二行的话要再调用一次input()。
当然很多时候我们输入是一个列表,我们可以用以下的方法将其分割为列表。
2、sys
可以用sys库来调用信息,但是要注意有时候可能会把换行符也读回来,需要去除。
1、确定行数
其实最简单的读取思路,是将读取回来的每一个值保存到一个list中,然后再来调用,但是在实际使用中线下可以跑通,但是线上是怎么都运行不了,也没法打印debug(没有概念的可以去体验一次秋招笔试或者在牛客网上做一下模拟题)。
针对于这个比较坑的地方,需要把运行程序加入以下模板中(原因不知道。。反正跑不通加这个就可以跑通了)。
2、不定行数
可以先用一个list保存下来然后再打印出来。
▲此外有些不定行输入也可能不是输入成多行,可能是输入成一个很长的str,然后中间用空格之列的隔开。由于自测一般给的例子很简单比较坑,所以如果一直报错或者跑不过去可以考虑是否是这个原因。
1、一行输出一个值
正常用print()就行,如print(result)
2、一行输出多个值
这个在平时接触的可能比较少,需要在一行打印n个值,然后用空格分割开,这里提供一个方法。