设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 8558|回复: 4
打印 上一主题 下一主题

第二十五课,初探list的两个问题

[复制链接]

2

主题

1

好友

30

积分

新手上路

Rank: 1

跳转到指定楼层
楼主
发表于 2018-6-2 01:11:07 |只看该作者 |倒序浏览
首先贴代码,如下:
----------------------------------------------------------
print (range(1, 10))

I = [1, 2, 3, 4, 5]
print (I)

for i in I:
    print (i)


运行结果如下:
----------------------------------------------------------
range(1, 10)
[1, 2, 3, 4, 5]
1
2
3
4
5


两个问题如下:
----------------------------------------------------------
问题1:
print (range(1, 10))这个语句,运行结果并不是第二十五课里面说到的——
print range(1,10)
得到的结果是:
[1, 2, 3, 4, 5, 6, 7, 8, 9]

实际运行结果是:range(1, 10)

问题2:
l = [1, 1, 2, 3, 5, 8, 13]
print (I)的结果是:
[1, 2, 3, 4, 5]

而二十五课中说到的是——
同样也可以用for...in遍历这个列表,依次输出了列表中的每一项

for i in I:
    print (i)
的实际运行结果是:
1
2
3
4
5

和直接print (I)的结果并不一样呀。


这两个问题困惑了,求指教,谢谢!
罪人亲往犯法,止于梦者便为善人!
回复

使用道具 举报

2

主题

0

好友

476

积分

中级会员

Rank: 3Rank: 3

沙发
发表于 2018-6-2 12:35:33 |只看该作者
第一个问题,看了下,我也没搞明白为什么第25课这么写
如果要输出[1, 2, 3, 4, 5, 6, 7, 8, 9]的话,我会写print (list(range(1, 10)))

第二个问题
1
2
3
4
5
这就是依次输出了列表中的每一项啊,当然和直接print (I)的结果不一样了
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

板凳
发表于 2018-6-3 00:14:13 |只看该作者
问题1是py3的改动,我刚去更新了下之前的课程
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

2

主题

1

好友

30

积分

新手上路

Rank: 1

地板
发表于 2018-6-3 01:58:23 |只看该作者
风扇很响 发表于 2018-6-2 12:35
第一个问题,看了下,我也没搞明白为什么第25课这么写
如果要输出[1, 2, 3, 4, 5, 6, 7, 8, 9]的话,我会写 ...

懂了,知道自己理解错在哪里了,感谢!
罪人亲往犯法,止于梦者便为善人!
回复

使用道具 举报

2

主题

1

好友

30

积分

新手上路

Rank: 1

5#
发表于 2018-6-3 02:01:54 |只看该作者
crossin先生 发表于 2018-6-3 00:14
问题1是py3的改动,我刚去更新了下之前的课程

感谢!
在python IDE上run了一下。确实python3有需要调整——
>>> print (list (range (1, 10)))
[1, 2, 3, 4, 5, 6, 7, 8, 9]
罪人亲往犯法,止于梦者便为善人!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-5-4 10:16 , Processed in 0.030259 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部