Python 3.x 这是一个很好的方法来解决最后的和;第一个数字?
我通过以下方式解决:Python 3.x 这是一个很好的方法来解决最后的和;第一个数字?,python-3.x,list-comprehension,Python 3.x,List Comprehension,我通过以下方式解决: print(*[int(i[0])+int(i[-1]) for i in [list(str(input())) for _ in range(int(input()))]], sep='\n') 这是解决问题的好办法吗?这当然是解决问题的办法。。。好意味着什么?它通过测试了吗 使用循环,将其强制在一行上并不会使其更快,只是可读性较差input()已返回一个字符串,您可以在不将其转换为列表的情况下对其进行索引,例如: for _ in range(int(input()
print(*[int(i[0])+int(i[-1]) for i in [list(str(input())) for _ in range(int(input()))]], sep='\n')
这是解决问题的好办法吗?这当然是解决问题的办法。。。好意味着什么?它通过测试了吗 使用循环,将其强制在一行上并不会使其更快,只是可读性较差
input()
已返回一个字符串,您可以在不将其转换为列表的情况下对其进行索引,例如:
for _ in range(int(input())):
i = input()
print(int(i[0])+int(i[-1]))
您可以使用operator.itemgetter()
获取所需的值,例如:
import operator as op
fl = op.itemgetter(0, -1)
for _ in range(int(input())):
print(sum(map(int, fl(input()))))
另一种更为数学化的解决方法:
In []:
import math
flsum = lambda x: x//(10**int(math.log10(x))) + x%10
for _ in range(int(input())):
print(flsum(int(input())))
Out[]:
5
5
5
它通过了测试