关于笔试编程题被坑的输入问题,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(' ')
相关推荐
AI大模型learner2 分钟前
Vue 环境配置与项目创建指南
前端·javascript·vue.js
傻小胖4 分钟前
React PureComponent使用场景
前端·javascript·react.js
明月看潮生4 分钟前
青少年编程与数学 02-006 前端开发框架VUE 13课题、事件处理
前端·javascript·vue.js·青少年编程·编程与数学
viqecel11 分钟前
页面滚动下拉时,元素变为fixed浮动,上拉到顶部时恢复原状,js代码以视频示例
前端·javascript·ajax·滚动下拉浮动
太阳照常升起36613 分钟前
机试准备第一天
算法
Non importa16 分钟前
【初阶数据结构】线性表之单链表
数据结构·考研·算法·链表·github·学习方法
caterpillarxie20 分钟前
第 3 章 HTML5 编程基础教案
前端·html·html5
游客52023 分钟前
设计模式-结构型-桥接模式
开发语言·python·设计模式·桥接模式
Pandaconda28 分钟前
【新人系列】Python 入门(二十五):Socket 网络编程
开发语言·网络·笔记·后端·python·面试·网络编程
fanstuck30 分钟前
如何快速准备数学建模?
算法·数学建模·数据挖掘