【刷题日记】不会输入,笔试白搭

写剑指offer的日子里,幸福的爆炸,完全不用考虑处理输入输出,然而一到公司笔试,连输入都不会,算法岂不是干瞪眼。
输入处理千千万,简单粗暴最有效。
一般笔试题逐行处理单行输入的情况比较多(输入数据流什么的以后再议)

sys.stdin简单粗暴的处理方式如下

import sys # 导入sys模块
# split是分割函数,将字符串分割成“字符”,保存在一个列表中。默认是空格分割,也可以自定义分隔符和分割次数
line = sys.stdin.readline().split() # 以空格划分输入,并返回一个list,list 的值为string类型
# 如果要处理的是int型,可以直接map整个list
line = list(map(int,line)) #map外面必须有list或者其他数据结构的类型函数,不然只会返回 map object at xxxx位置

#但是这个readline返回的是一个list,即使只输入一个值,也是一个list。所以
n = sys.stdin.readline().split()
n = int(n[0]) #这样才能把输入单个值变成int,而不是string的list

用python内置的input函数简单粗暴处理如下:

list_str = input().split() #  读取一行输入返回string类型的list
list_int = list(map(int,input().split())) # 读取一行输入返回一个int类型的list
# 或者知道要输入多少个可以直接赋值给若干变量
n, k = list(map(int,input().split()))

你可能感兴趣的:(刷题日记)