python3 ACM模式的输入输出例子教学_amc模式python读取输入_汀、人工智能的博客-CSDN博客
- Python的输入是字符串,所以要自己转类型
- strip去掉左右两端的空白符,返回str
- slipt把字符串按空白符拆开,返回[str]
- map把list里面的值映射到指定类型,返回[type]
- EOF用抓异常
- print后面加逗号(end=",")输出就不会换行
已知组数输入
eg。多组数据,第一行为一个整数,告诉你有几组数据,剩下的行是每组的数据
tcase=int(input().strip())
for case in range(tcase):
a,b=map(int,input().strip().split())
print(a+b)
eg。多组数据,每一行第一个数字代表这一组共有几个数据。当行中第一个数字为0时结束
while True:
data=list(map(int,input().strip().split()))
n,array=data[0],data[1:]
if n==0:
break
print(sum(array))
eg。输入有两行,第一行n 。第二行是n个空格隔开的字符串
n=int(input())
words=[x for x in input().strip().split()]
words.sort() #list.sort(key=None, reverse=False)
#reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
for word in words:
print(word,end=' ')
print()
未知组数输入
eg。多样例输入一组整数,每组数据占一行,每组数据中有两个数,要求输出两个数之和。每个结果占一行。
while True:
try:
a,b=map(int,input().strip().split())
print(a+b)
except EOFError:
break
eg。多组数据,但是不知道多少组。每一行第一个数字代表这一组共有几个数据。
while True:
try:
data=list(map(int,input().strip().split()))
n,array=data[0],data[1:]
print(sum(array))
except EOFError:
break
输出格式化
-
使用字符串格式化操作符
%
:age = 25.999777 name = "Alice" print("My name is %s and I'm %.8f years old." % (name, age))
-
使用字符串的
format()
方法:age = 25 name = "Alice" print("My name is {} and I'm {} years old.".format(name, age))
-
使用 f-strings(格式化字符串字面值):
age = 25 name = "Alice" print(f"My name is {name} and I'm {age} years old.")
-
使用
str.format_map()
方法和一个字典:person = {'name': 'Alice', 'age': 25} print("My name is {name} and I'm {age} years old.".format_map(person))
sorted和sort的区别
-
sorted()
是一个内置函数,它接收一个可迭代对象作为参数,并返回一个新的已排序的列表,原始对象保持不变。例如:numbers = [3, 1, 5, 2] sorted_numbers = sorted(numbers) print(sorted_numbers) # 输出:[1, 2, 3, 5] print(numbers) # 输出:[3, 1, 5, 2]
-
sort()
是列表对象的方法,直接对原始列表进行排序,没有返回值。它会修改原始列表,使其按照排序顺序重新排列。例如:numbers = [3, 1, 5, 2] numbers.sort() print(numbers) # 输出:[1, 2, 3, 5]
-
sorted()
函数可以用于任何可迭代对象,例如元组、集合、字符串等,而sort()
方法仅适用于列表。 -
sorted()
函数可以接收额外的参数,例如key
和reverse
,用于定制排序。key
参数是一个函数,它用于从可迭代对象的每个元素中提取一个键值,根据这个键值来进行排序。reverse
参数是一个布尔值,用于指定升序还是降序排序。而sort()
方法没有提供这些额外的参数。