鱼C论坛

 找回密码
 立即注册
查看: 4690|回复: 15

[已解决]如何把两个for循环合并

[复制链接]
发表于 2018-1-26 17:40:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
题目是:用户输入5个数字,然后输入列表1,把正数输入列表2,负数输入列表3
我的代码是:
  1. list1=[]
  2. list2=[]
  3. list3=[]
  4. for i in range(5):
  5.     x=int(input("输入第%d个数字:" % (i+1)))
  6.     list1.append(x)
  7. print("list1:",list1)
  8. for j in range(5):
  9.     if list1[j] >= 0:
  10.         list2.append(list1[j])
  11.     else:
  12.         list3.append(list1[j])
  13. print("list2:",list2)
  14. print("list3:",list3)
复制代码


搞了半天,输出终于正常,但发现两个for 循环是一样的,都是1~5,我想应该可以合并成一个for 循环的。请大神指导一下。
最佳答案
2018-1-26 17:49:40

大于0正,小于0负。

  1. list1=[]
  2. list2=[]
  3. list3=[]
  4. for i in range(5):
  5.     x=int(input("输入第%d个数字:" % (i+1)))
  6.     list1.append(x)
  7.    
  8.     if x > 0: # 正
  9.         list2.append(x)
  10.     if x < 0: # 负
  11.         list3.append(x)
  12.    
  13. print("list1:",list1)
  14. print("list2:",list2)
  15. print("list3:",list3)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-1-26 17:49:40 | 显示全部楼层    本楼为最佳答案   

大于0正,小于0负。

  1. list1=[]
  2. list2=[]
  3. list3=[]
  4. for i in range(5):
  5.     x=int(input("输入第%d个数字:" % (i+1)))
  6.     list1.append(x)
  7.    
  8.     if x > 0: # 正
  9.         list2.append(x)
  10.     if x < 0: # 负
  11.         list3.append(x)
  12.    
  13. print("list1:",list1)
  14. print("list2:",list2)
  15. print("list3:",list3)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-26 19:11:30 | 显示全部楼层
2楼已给,只想叨一句:真是笨拙而糟糕的思路。学编程一定要学思维啊,不要拘泥于形式
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2018-1-26 20:16:34 | 显示全部楼层
ba21 发表于 2018-1-26 17:49
大于0正,小于0负。

list1.append(x)多余了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-26 20:28:59 | 显示全部楼层
铁棍阿童木 发表于 2018-1-26 20:16
list1.append(x)多余了

怎么多余了呢?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-26 20:37:36 | 显示全部楼层
铁棍阿童木 发表于 2018-1-26 20:16
list1.append(x)多余了

意思就是还要最后用 list2 + list3 组个一个list1?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-26 21:12:49 | 显示全部楼层

用户输入一个数字,大于0就添加到list2里面去,小于0就添加到list3里面去,何必再多此一举添加到list1呢!?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-1-26 23:18:48 | 显示全部楼层
确实啊,思维最重要,我写完就觉得程序太啰嗦了。要多练习。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-26 23:22:59 | 显示全部楼层
铁棍阿童木 发表于 2018-1-26 21:12
用户输入一个数字,大于0就添加到list2里面去,小于0就添加到list3里面去,何必再多此一举添加到list1呢 ...

这么说你是没有看题啊。
用户输入5个数字,然后输入列表1
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-26 23:57:11 | 显示全部楼层
ba21 发表于 2018-1-26 23:22
这么说你是没有看题啊。
用户输入5个数字,然后输入列表1

所以才说多余啊,不懂?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-27 00:01:24 | 显示全部楼层
铁棍阿童木 发表于 2018-1-26 23:57
所以才说多余啊,不懂?

特么你是来抬杠的啊!~!~生活这么苦,你还活着干嘛。人家出什么题你就怎么解。你是叼尽平,编程都可以不用学了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-27 00:15:38 | 显示全部楼层
ba21 发表于 2018-1-27 00:01
特么你是来抬杠的啊!~!~生活这么苦,你还活着干嘛。人家出什么题你就怎么解。你是叼尽平,编程都可以不 ...

脑残...鉴定完毕!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-28 10:45:37 | 显示全部楼层
铁棍阿童木 发表于 2018-1-26 21:12
用户输入一个数字,大于0就添加到list2里面去,小于0就添加到list3里面去,何必再多此一举添加到list1呢 ...

他的要求啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-28 11:33:06 | 显示全部楼层

木头吗?我说的就是这个要求多此一举啊!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-28 13:28:51 | 显示全部楼层
铁棍阿童木 发表于 2018-1-28 11:33
木头吗?我说的就是这个要求多此一举啊!

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-29 09:44:50 | 显示全部楼层
看了许久评论,看懂了,思维确实很重要,我就没有什么思维
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-20 06:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表