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专栏添加吧。

相关推荐
爱吃烤鸡翅的酸菜鱼17 小时前
Spring Boot 实现 WebSocket 实时通信:从原理到生产级实战
java·开发语言·spring boot·后端·websocket·spring
雪域迷影17 小时前
C++中编写UT单元测试用例时如何mock非虚函数?
开发语言·c++·测试用例·gmock·cpp-stub开源项目
AI街潜水的八角18 小时前
Python电脑屏幕&摄像头录制软件(提供源代码)
开发语言·python
hadage23318 小时前
--- git 的一些使用 ---
开发语言·git·python
lly20240620 小时前
HTML与CSS:构建网页的基石
开发语言
一只会写代码的猫20 小时前
面向高性能计算与网络服务的C++微内核架构设计与多线程优化实践探索与经验分享
java·开发语言·jvm
是小胡嘛1 天前
C++之Any类的模拟实现
linux·开发语言·c++
csbysj20201 天前
Vue.js 混入:深入理解与最佳实践
开发语言
笨笨聊运维1 天前
CentOS官方不维护版本,配置python升级方法,无损版
linux·python·centos