单行输入
输入描述
1 2 3 4 5
输入函数模板
a = input().split()
解释
函数 | 说明 | 返回 |
---|---|---|
input() | Python3中的input() 会将接受的数据 | 返回一个string 类型 |
split() | 一行中有多个数据,使用分割 | 返回一个列表 |
拓展
(1) input()
input()返回的是string,分割后是字符列表,若输入为数字,则需转换
- 单个转换
# 输入为1
a = int(input())
# 输入为1 2 3 4 5,使用列表批量转换
b = input().split() # b = ['1', '2', '3', '4', '5']
c = [int(i) for i in b] # c = [1, 2, 3, 4, 5]
# 输入为1 2 3 4 5,结合输入和列表批量转换,即bc压缩为一句
d = [int(i) for i in input().split()]
map()
转换
map()
函数返回的是一个迭代器,不能改变值,如果需要改变值,则需转换成列表
e = map(int, input().split())
f = list(e) # 转换为列表,e = [1, 2, 3, 4, 5]
# 一句解决版
g = list(map(int, input().split()))
解释
函数 | 说明 | 返回 |
---|---|---|
map() | 并行转换函数 | 返回的是一个迭代器,不能改变值 |
(2) split()
split()
默认以空字符为分隔符,包括空格、换行(\n)、制表符(\t)等
a = input().split(',') # 以逗号为分隔符
输入为单行数字 综合版
# 输入为1 2 3 4 5
num_list = list(map(int, input().split()))
# 输入为1,2,3,4,5
num_list = list(map(int, input().split(',')))
输入为单行字符 综合版
# 输入为A B C D E
char_list = input().split()
多行输入
未指定用例个数
用人话讲就是不知道要输入多少行
输入描述
1 5
10 20
输入函数模板
while True:
try:
a, b = map(int, input().split())
ans = solve(a, b) # 核心函数
print(ans)
except:
break
结构/语句 | 说明 |
---|---|
while True: | 无限循环结构,直到条件不再满足或者通过 break 语句来退出循环 |
try: | 异常处理块的开始,尝试执行可能会引发异常的操作 |
except: | 异常处理块的结束。如果在 try 块中的任何代码引发了异常,程序将跳转到这里执行异常处理 |
指定用例个数
用人话讲就是知道输入多少行
输入描述
# 第一行指定输入为2行
2
1 5
10 20
输入函数模板
n = int(input()) # 获取用例个数
for _ in range(n):
a, b = map(int, input().split())
ans = solve(a, b) # 核心函数
print(ans)
指定条件退出
输入描述
# 输入为0 0则结束输入
1 5
10 20
0 0
输入函数模板
while True:
data = input()
if judge(data): # 判断
break
solve(data)