写Python语言:有一个列表s1=[1,2,3],从键盘输入一个正整数n,然后分别输入n个整数组成列表s2,打印输出s2,将列表s2合并到s1中,然后对s1列表降序排序
时间: 2023-11-23 15:07:16 浏览: 60
python 和为s的连续正数序列,输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数
除了前面的实现方式,还有其他的写法,例如使用列表推导式和lambda表达式对s1进行排序。以下是代码实现:
```
s1 = [1, 2, 3] # 初始列表
n = int(input("请输入正整数n:")) # 输入n
s2 = [] # 定义空列表s2
# 输入n个整数,添加到s2列表中
for i in range(n):
num = int(input("请输入第{}个整数:".format(i+1)))
s2.append(num)
print("s2列表为:", s2)
# 合并s2到s1中
s1 += s2
# 对s1列表进行降序排序
s1.sort(key=lambda x: -x)
print("合并后的s1列表为:", s1)
```
运行结果与之前的实现方式相同。
值得一提的是,我们可以使用列表推导式来简化代码。具体来说,我们可以将输入n个整数的循环和将s2合并到s1中的操作合并到一个列表推导式中。以下是修改后的代码:
```
s1 = [1, 2, 3] # 初始列表
n = int(input("请输入正整数n:")) # 输入n
s2 = [int(input("请输入第{}个整数:".format(i+1))) for i in range(n)] # 输入n个整数,添加到s2列表中
print("s2列表为:", s2)
# 合并s2到s1中
s1 += s2
# 对s1列表进行降序排序
s1.sort(key=lambda x: -x)
print("合并后的s1列表为:", s1)
```
运行结果与之前的实现方式相同。
阅读全文