关于笔试编程题被坑的输入问题,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(' ')
相关推荐
mldong33 分钟前
你的 Vue3 项目也能有钉钉同款审批流设计器:npm 装包,10 分钟画出第一条审批流
前端·vue.js
2分钟速写快排1 小时前
什么是 RAG?如何用 RAG 实现一个用户记忆?
前端·后端·ai编程
passerby60612 小时前
如何自己造一个时间处理库
前端·javascript·github
泡海椒2 小时前
内置SPI函数库详解:JQuick-Java Builtin工具类实战用法
java·开发语言·python
hqyjzsb2 小时前
零 AI 项目经验,学 Python 转型 AI 的正确顺序是什么?
开发语言·人工智能·python·算法·职场和发展·数据挖掘·数据分析
辰烨chenye2 小时前
LeetCode Hot 100 题解 · 二分篇
java·算法·leetcode
微功夫信息技术2 小时前
分层多智能体强化学习驱动的非急救转运公平 - 效率统一调度系统研究与实践
人工智能·学习·算法·动态规划
走到天涯海角3 小时前
react里面的长列表渲染优化
前端·react.js·前端框架
小羊没烦恼!3 小时前
Hello Web API系列教程——Web API与国际化
java·服务器·前端·javascript·php
sanjiaomao3333 小时前
从论文公式到Python实现:用单元测试校验滑动平均算法
python·算法·单元测试