Python每日一题(7)

Python每日一题 2025.3.27

一、题目

python 复制代码
question=[
    """
        编写程序,生成包含20个随机数的列表,然后将前十个元素升序排列,后10个元素降序排列,并输出结果
    """
]

二、分析

今天本来写了两个manim文章,本来不想写每日一题了,但后来看了看今天的题目还是比较简单,还是做做吧。等后续题目可能没这么容易了。我是用切片分为两个列表,然后分别排序再进行添加的。不知道有没有一次性的操作。不过随机数的生成,我还是只会之前的randint的范围生成,如果不指定范围的话,总感觉会存在问题。

三、自己源代码

python 复制代码
import random
import pdb
numbers=[random.randint(0, 100) for _ in range(20)]
n1=numbers[:-10]
n2=numbers[10:]
# pdb.set_trace()
result=sorted(n1,reverse=False)
result.extend(sorted(n2,reverse=True))
print(result)

输出结果:

四、deepseek答案

python 复制代码
import random

# 生成包含20个随机整数的列表(范围1到100)
random_list = [random.randint(1, 100) for _ in range(20)]

# 前10个元素升序排列
random_list[:10] = sorted(random_list[:10])

# 后10个元素降序排列
random_list[10:] = sorted(random_list[10:], reverse=True)

# 输出结果
print("处理后的列表:", random_list)

输出结果:

五、源代码与ai分析

整体逻辑上是一样的,但是细节方面还是deepseek更好。今天刚好看了本python书的列表的切片部分,阅读了一下发现切片也可以部分数据整体替换,其实就是类似于deepseek那样,分别直接对一个列表的前十个数、后十个数排序后再代替原列表数据。这样避免了空间的再占用。另外我记得书中的列表remove方法似乎有些问题。那本书是2020年出版的,python也迭代了好几代了,感觉应该修复了。明天再测试一下看看有没有问题,再在list专栏添加吧。

相关推荐
周杰伦_Jay几秒前
【Go语言面试题核心详细解析】基础语法、并发编程、内存管理、接口、错误处理
开发语言·后端·golang
福尔摩斯张1 分钟前
Linux Kernel 设计思路与原理详解:从“一切皆文件“到模块化架构(超详细)
java·linux·运维·开发语言·jvm·c++·架构
yaoh.wang2 分钟前
力扣(LeetCode) 58: 最后一个单词的长度 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·跳槽
深蓝海拓5 分钟前
PySide6从0开始学习的笔记(七) 控件(Widget)之文字输入类控件
笔记·python·qt·学习·pyqt
free-elcmacom5 分钟前
机器学习高阶教程<4>因果机器学习:因果推断、可解释AI与科学发现的新革命
人工智能·python·机器学习·因果机器学习
smile_Iris6 分钟前
Day 41 早停策略和模型权重的保存
开发语言·python
傅里叶的耶8 分钟前
C++ Primer Plus(第6版):第四章 复合类型
开发语言·c++
MediaTea13 分钟前
Python:接口隔离原则(ISP)
开发语言·网络·python·接口隔离原则
Clarence Liu14 分钟前
Golang slice 深度原理与面试指南
开发语言·后端·golang
遇印记15 分钟前
java期末复习(构造方法和成员方法,重写和重载)
java·开发语言·学习