- 主题:列表倒序累加到问题
成功的将列表倒序了,为什么运行结果不是我期待的300,加了if判断为啥运行结果不对?
我希望得到300,运行结果却是119。
print(122+178)
ip = ['96', '23', '122', '178']
intip = 0
for i in range(len(ip)-1,-1,-1):
if i == 0:
intip += int(ip[i])
continue
if i == 1:
intip += int(ip[i])
continue
print(intip)
--
修改:javame FROM 45.124.125.*
FROM 45.124.125.*
如果年纪有些大了就别学了。你要取的还是下标2和3的数组元素,倒着遍历也是这两个下标,只不过这两个下标在遍历头两次就出来了。
而且用更简洁的方法
ip = ['96', '23', '122', '178']
intip = sum(map(int, ip[2:]))
print(intip)
--
FROM 124.193.81.*
我刚才自己也发现了,我的下标给搞错了。实际情况并没有倒序啊。
【 在 lalatang 的大作中提到: 】
: 如果年纪有些大了就别学了。你要取的还是下标2和3的数组元素,倒着遍历也是这两个下标,只不过这两个下标在遍历头两次就出来了。
: 而且用更简洁的方法
: ip = ['96', '23', '122', '178']
: ...................
--
修改:javame FROM 45.124.125.*
FROM 124.78.11.*
print(122+178)
ip = ['96', '23', '122', '178']
intip = 0
for i in range(len(ip)-1,-1,-1):
if i == 0:
intip += int(ip[i]) * 389
if i == 1:
intip += int(ip[i])* 293
print(intip)
我的代码要是这样的,还能够简化吗?
--
修改:javame FROM 124.78.11.*
FROM 124.78.11.*
问题解决了,是我自己想当然了,
贴一下正确的代码。
print(122+178)
ip = ['96', '23', '122', '178']
intip = 0
for i in range(len(ip)-1,-1,-1):
if i == 3:
intip += int(ip[i])
if i == 2:
intip += int(ip[i])
print(intip)
【 在 javame 的大作中提到: 】
: 成功的将列表倒序了,为什么运行结果不是我期待的300,加了if判断为啥运行结果不对?
: 我希望得到300,运行结果却是119。
: print(122+178)
: ...................
--
修改:javame FROM 45.124.125.*
FROM 124.78.11.*
你从路东头走到路西头,门牌号码递增
你从路西头走回路东头,先雇个人把门牌号给你拆了重新排一遍?
【 在 javame (yimin) 的大作中提到: 】
: 我刚才自己也发现了,我的下标给搞错了了。实际情况并没有倒序啊。
--
FROM 114.242.94.*
我想当然了,以为倒序的坐标从0开始。
【 在 wincss 的大作中提到: 】
: 你从路东头走到路西头,门牌号码递增
: 你从路西头走回路东头,先雇个人把门牌号给你拆了重新排一遍?
:
--
FROM 124.78.11.*
print(int(ip[0]) * 389 + int(ip[1])* 293)
你能说说你到底在遍历个什么劲么
【 在 javame 的大作中提到: 】
: print(122+178)
: ip = ['96', '23', '122', '178']
: intip = 0
: ...................
我的代码要是这样的,还能够简化吗?
--
FROM 124.193.81.*
不忍直视
1. 你为什么遍历,你既然自己知道用什么下标,直接用不就完了,从头到尾遍历一遍干嘛
2. continue没起作用,如果为了尽早脱离循环,在最后一次计算后break
总体来说显得思路非常的奇怪
【 在 javame 的大作中提到: 】
: 问题解决了,是我自己想当然了,
: 贴一下正确的代码。
: print(122+178)
: ...................
--
FROM 124.193.81.*
还是建议楼主稍微补充下基础知识,一劳永逸,不然这样那样的问题永无止境。
【 在 javame (yimin) 的大作中提到: 】
: 成功的将列表倒序了,为什么运行结果不是我期待的300,加了if判断为啥运行结果不对?
: 我希望得到300,运行结果却是119。
: print(122+178)
: ...................
--
FROM 114.243.56.*