欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

【牛客OJ】输入输出处理

程序员文章站 2022-06-06 21:04:06
输入处理一行多个输入,以逗号分隔# 方法一L = list(eval(input())) # 将输入转换为 listdata = L[0] # 根据列表元素下标获取值target = L[1]input() 获取多个输入,此时是一个 str 类型,使用 eval() 转化为 tuple 类型,最后使用 list() 将其转化为 list。# 方法二data, target = input().split(',', 1) # 根据逗号分割输入data = list(eval(d...

1. 输入处理

import sys
def getResult():
	pass

if __name__ == '__main__':
	while True:
		try:
			n = int(input())
			nums = [int(i) for i in input().split()]
			k = getResult(n, nums)
			print(k)
		except:
			break

1)一行一个输入,获取一个整数

n = int(input())

2)一行多个输入,以逗号或空格分隔

# 方式一
L = list(eval(input()))    # 将输入转换为 list
data = L[0]   # 根据列表元素下标获取值
target = L[1]
  • input() 获取多个输入,此时是一个 str 类型,使用 eval() 转化为 tuple 类型,最后使用 list()
    将其转化为 list 类型。
# 方式二
data, target = input().split(',', 1)  # 根据逗号分割输入
data = list(eval(data))
target = int(target)
  • split() 方法第一个参数为分隔符,也就是以什么符号什么来划分输入,默认是空字符(空格、换行、制表符);第二个参数为分割字符串的次数,分割结果字符串个数 = 次数+1,默认该参数为 -1,即分割所有可被分割的位置。split() 方法返回值是一个字符串列表。
  • eval() 方法将字符串形式的列表转换为 list 类型,注意如果不用 eval() 直接用 list() 的话会把列表每一个字符都变成一个列表元素。
# 方式三
data = list(map(int, input().split()))
  • split() 返回的是字符类型,可以利用 map() 将其都转换到 int 类型。如果只用
    input().split(),得到的列表元素都是字符。
# 方式四
import sys
a = sys.stdin.readline().strip()
b = sys.stdin.readline().strip()
  • strip() 方法用于移除字符串开头和结尾指定的字符或字符序列,默认为空格或换行符。

3)先输入个数 n,后输入 n 组/个数据

比如先输入数据个数 4,再输入 4 个数据 2,5,7,9,有以下处理方式:

n = int(input())
s = []
for i in range(n):
	s.append(int(input()))

2. 输出处理

a = [1,2,3,4]
print(’ ‘.join(a)# 1 2 3 4 5 空格做分隔
print(,).join(a)    # 1, 2, 3, 4, 5 逗号做分隔

# 若列表元素是 int 类型:
print(' '.join(str(i) for i in sque))

本文地址:https://blog.csdn.net/qq_31347869/article/details/106331415