[赛码网、牛客刷题、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[索引号]

自此,完结!

相关推荐
黄贵根4 小时前
JavaScript实现教培行业意向登记系统
开发语言·javascript·ecmascript
小趴蔡ha7 小时前
02 Anaconda、Python 与机器学习开发环境入门
python·机器学习·anaconda
2401_868534787 小时前
RTOS之RT-Thread & Linux:线程/进程管理与调度核心差异分析
c++·python
zzzll11117 小时前
Claude Code离线安装方案揭秘
开发语言·php
数字化转型分享点滴8 小时前
富士康、蓝思科技为何选择四化信息?MES制造执行系统的实践
python·科技
wling03018 小时前
vasp虚频计算-python脚本
开发语言·windows·python·vasp计算
魔镜前的帅比8 小时前
(开源项目)x-claw(总)
python·ai·rust·开源
郝学胜-神的一滴8 小时前
Qt 高级编程 040:按钮悬浮弹出滑块弹窗的完整攻略
开发语言·c++·qt·软件工程·用户界面
xrandzj9 小时前
Python面向对象编程入门:类、实例、初始化与封装实践
开发语言·python
DLYSB_10 小时前
API 网关流量洪峰与突发 CC 攻击:我用 Go 写了个“现场物理防御哨兵”,把故障响应压缩到秒级
开发语言·后端·golang·报警灯