题目内容:
输入一个列表alist,要求列表中的每个元素都为正整数且不超过10;
将列表中的奇数变为它的平方,偶数除以2后打印新的列表(新的列表中所有元素仍都为整数)。
可以使用以下实现列表alist的输入:
alist=list(map(int,input().split()))
同时为保证输出结果一致,请将集合内元素排序之后再输出。
如对于列表alist,可输出sorted(alist)。
输入格式:
共一行,用来输入列表的元素值,以空格隔开。
输出格式:
共一行,以列表形式打印输出。
输入样例:
1 2 3 4
输出样例:
[1,1,2,9]
My answer
思路:首先把输入的数字按空格分开变成一个列表,遍历列表里的元素,判断奇偶再进行相关操作
lst = list(map(int,input().split()))
a = []
for i in lst:
if i % 2 ==0:
a.append(i // 2)
else:
a.append(i**2)
print(sorted(a))
思路:直接改写列表元素
lst = list(map(int,input().split()))
for i in range(len(lst)):
if lst[i] % 2 == 0:
lst[i] //= 2
else:
lst[i] **= 2
print(sorted(lst))