关于笔试编程题被坑的输入问题,acm模式下的python输入究竟如何写?

常见的笔试编程题,都是ACM模式

写完功能函数以后,在调用函数之前,涉及到一个输入问题

那acm模式下的输入应该如何写呢?

通过input()函数或sys.stdin.readline()来实现。下面主要使用inpu()函数

读取输入的一个整数

复制代码
# 输入为: 1 2 3 4 5
a = input()
# a = '1 2 3 4 5'

# 输入为: 1
a = int(input()) # 单个转换
# a = "1"

读取输入的一串整数

Python3中的input()会将接受的数据返回为一个string类型,如果一行中有多个数据的话,则需要使用split()进行切割。split()切割后返回一个列表。

如果输入数据是数字则需要进行类型转换。可以单个转换或是用列表批量转换,使用map()并行转换。map()函数返回的是一个迭代器,不能改变值,如果需要改变值的话还需要转换成列表。

复制代码
# 输入为: 1 2 3 4 5
a = input().split() # split()默认以空字符为分隔符,包括空格、换行(\n)、制表符(\t)等
# a = ['1', '2', '3', '4', '5']
	  
# 输入为:1,2,3,4,5
b = input().split(',') # 以逗号为分隔符
# b = ['1', '2', '3', '4', '5']

# 类型转换
c = [int(i) for i in input().split()]
d = list(map(int, input().split())) 

读取输入的两个整数、矩阵

复制代码
n, m = map(int, input().split()) #两个整数n和m,表示数据的行列数
a = []
for i in range(n):	#n行,每行包含m个整数,表示数据
    row = input().split()
    a.append(row)

加一个strip函数去掉多余的空格或者换行符

复制代码
arr = input().strip().split(' ')
相关推荐
程序员阿峰1 分钟前
前端3D·Three.js一学就会系列: 第一个3D网站
前端·three.js
AI科技星2 分钟前
基于空间光速螺旋第一性原理的电荷本源定义与电场时空协变方程的完整推导、严格证明及全尺度数值验证
c语言·开发语言·算法·机器学习·数据挖掘
马猴烧酒.5 分钟前
【Java复习|Lambda表达式】Java Lambda 表达式、函数式接口与匿名内部类:从起源到原理
java·开发语言·ide·笔记·python·spring
DLGXY8 分钟前
STM32(二十九)——读写、擦除FLASH
前端·stm32·嵌入式硬件
云泽8088 分钟前
蓝桥杯算法精讲:深剖分治算法及其经典应用
算法·职场和发展·蓝桥杯
志摩凛9 分钟前
范畴论——前端与计算机领域的“抽象工具箱”:该用则用,该弃则弃
算法·架构
2401_8579182911 分钟前
C++与自动驾驶系统
开发语言·c++·算法
慧一居士14 分钟前
TanStack功能介绍和使用场景,对应 vue,react 完整使用示例
前端·vue.js
乐分启航15 分钟前
【无标题】
深度学习·算法·目标检测·transformer·迁移学习
AI视觉网奇16 分钟前
docker v2安装
人工智能·python