当前位置: 首页 > news >正文

Python基础练习5.按顺序输出整数

题目:

输入三个整数X,Y,Z,请把这三个数由小到大输出

分析:

1. 输入三个整数

2. 通过比较交换,使得X最小,Z最大,Y在中间(或者使用中间变量存储排序后的结果)

3. 按顺序输出

第一种方法:

编码:

# 获取用户输入的三个整数,用空格分隔 input_str = input("请输入三个整数(用空格分隔):") # 将输入的字符串按空格分割,并转换成整数列表 number = [int(x) for x in input_str.split()] # 使用冒泡顺序算法对三个数进行升序排序 # 第一轮比较,比较前两个元素 if number[0] > number[1]: # 如果第一个数大于第二个数,交换他们的位置 number[0],number[1] = number[1],number[0] # 第二轮比较,比较后两个元素 if number[1] > number[2]: number[1],number[2] = number[2],number[1] # 第三轮比较,再次比较前两个数(确保最小的数在首位) if number[0] > number[1]: number[0],number[1] = number[1],number[0] #输出结果 print("从小到大排序的结果:",number)

结果:

请输入三个整数(用空格分隔):98 109 23
从小到大排序的结果: [23, 98, 109]

第二种方法:

编码:

# 获取用户输入的三个整数(用空格分隔) input_num = input("请输入三个整数(用空格分隔):") # 将输入的字符串按空格分割,并转换成整数 numbers = [int(y) for y in input_num.split()] # 使用列表的sort()方法进行排序(默认升序) numbers.sort() # 输出排序结果 print("从小到大的排序结果:",numbers)

结果:

请输入三个整数(用空格分隔):3 4 1
从小到大的排序结果: [1, 3, 4]

其中,input_str.split(),split() 是字符串的内置方法,用于将字符串分割成多个子字符串,默认情况下,它会按空格分割字符串。比如:

input_str = "10 20 30" result = input_str.split() # 结果是:['10', '20', '30']

for x in input_str.split() 这是一个循环,会遍历分割后的每个元素。示例中,x 会依次取值为 '10' → '20' → '30'

int(x):int() 函数将字符串转换为整数。比如:

int('10') # 结果是整数 10 int('20') # 结果是整数 20

number = [int(x) for x in input_str.split()]整体作用:将输入的字符串分割成多个部分;将每个部分从字符串转换为整数;将所有转换后的整数放入一个新列表。

如果不使用推导式(int(x) for x in ...),替代写法为:

input_str = input("请输入三个整数: ") parts = input_str.split() # 分割字符串 numbers = [] # 创建空列表 for s in parts: # 遍历每个部分 num = int(s) # 转换为整数 numbers.append(num) # 添加到列表
http://www.cnnetsun.cn/news/101182.html

相关文章:

  • 毕设救星:Spring Boot + Vue 打造“数字非遗”——中华传统文化展示与文创众筹平台
  • 政策模型出现再平衡:美联储主席遴选路径反转,哈塞特在“联储独立性约束条件”下明确立场
  • 医院信息科经常听到的那些话
  • 校园实验室|基于springboot 校园实验室管理系统(源码+数据库+文档)
  • AI的下一个十年,属于Agent!读懂这篇,你就抓住了未来十年的最大红利!
  • 基于springboot + vue律师咨询系统(源码+数据库+文档)
  • 基于springboot + vue动物园管理系统(源码+数据库+文档)
  • 锐捷网络设备(盒式交换机,路由器,EG网关,无线AC、AP)恢复出厂设置
  • 锐捷RG-AP220-E胖模式配置
  • 2026毕设ssm+vue基于框架的临时摊位管理系统论文+程序
  • 重磅推出!郑老师团队26年22门统计课程,发文即可退款
  • jQuery EasyUI 布局 - 创建折叠面板
  • jQuery EasyUI 布局 - 动态添加标签页(Tabs)
  • 基于 YOLOv8 + DeepSORT + PyQt5 构建的 多目标车辆测速系统 多目标跟踪和车辆测速 (1)
  • 告别手动计算:安全区域适配效率提升300%
  • 33、Ubuntu服务器故障排查指南
  • 从零开始:解决brew命令不存在的完整指南
  • 详解!30+基于YOLO开源框架视频AI算法,覆盖低空经济无人机巡检、海康/大华摄像头,城市综合治理、智慧工地、森林巡检
  • MySQL变长字段的庖丁解牛
  • EmotiVoice能否生成客服安抚语音?共情语调设计
  • xxx is not in the sudoers file. This incident will be reported问题解决
  • 电商网站Nginx部署实战:高并发场景优化方案
  • h5嵌入鸿蒙跳转支付宝支付,报错:Syntax error:JSON Parse error:Expected ‘}‘
  • 传统VS现代:Docker容器启动效率对比实验
  • Vue小白必看:5分钟搞懂Vue2和Vue3的区别
  • AI如何帮你自动配置Spring Boot的spring.config.import
  • KKT条件在AI优化算法中的核心作用
  • 30秒创建路径工具类:AI代码生成实战
  • 5分钟打造Python版本检测机器人
  • 电商秒杀系统实战:Firebase实时数据库的高并发解决方案