[赛码网、牛客刷题、ACM模式] python读取输入

内容描述

在一些面试或笔试过程中,可能会遇到需要自己写读取输入,习惯了力扣刷题的话,会有些不习惯,面试过程中就非常麻烦了。
今天刚好有一位朋友遇到该问题,所以就总结一下。其实非常简单!

读取输入

我最喜欢的就是直接使用input()函数,下面简单介绍一下input()函数
(1)input()函数每次读取一行,并且是按照顺序读取
意思就是:如果输入有5行,第一个input()就读取第一行,第二个input()就读取第2行,依次类推;
(2)输出的是字符串类型;

示例:
常看见如下介绍:
输入一个M*N的矩阵,其中,第一行输入两个数字M,N,中间用空格隔开,接下来的M行,表示矩阵每行的数据,每行中共有N个数字,中间用空格隔开。如下所示:
2 3
1 2 3
4 5 6

表述输入的是一个2行3列的矩阵
好,那现在我们需要怎样读取这个矩阵呢?代码如下:

M,N = map(int, input().split()) 		# 读取第一行,并使用并使用map将input()输出的字符串转换成int型的元组
matrix = []
for i in range(M):
	tmp = list(map(int, input().split()))	# 按照顺序读取矩阵的M行数据,并转换成list
	matrix.append(tmp)

以上就是python读取输入的精华,只要理解了上面这个示例,基本上就能应付笔试面试的输入问题了。
——来自经历过数十场笔试面试的菜鸡的经验之谈

常用的字符串、列表处理手段

借鉴于:添加链接描述

并在此基础上增添了一些和添加了一些注释

字符串常用操作

s[::-1]							# 将字符串s逆置
.strip() 							# 去除首位空格
.split()  						# 按空格分割,无论中间有几个空格都进行分割
.split(" ")						# 按空格分割,与split()不同是,只按单个空格分割
.strip().strip(‘-a’)			# 去除首位空格和字符‘-a’
.replace(‘a’,’b’) 			# 替换字符
S[:3]、S[5:] 、S[5:7]	#(前3、第5之后、5到7)拼接字符串,去除某个字符
.index(str,beg,end)  	# 返回开始索引或异常
.find(str,beg,end) 		# 返回开始索引或-1

需要特别注意的是:split() 与.split(" ")

s = "  the sky  is blue"
list_s = s.split()	# 此时list_s = ["the", "sky", "is", "blue"],因为它是按连续空格切分的,无论中间有多少空格,都进行切分
list_s = s.split(" ")	# 此时list_s = [" the", "sky", " is", "blue"],其中the和is前面都有一个空格,这是因为.split(" "),是按单个空格进行切分的,所以如果有连续空格,多余的空格就会和临近的字符串合并

列表

.remove(具体内容) 
.pop(索引号)    
del a[索引号]

自此,完结!

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值