鱼C论坛

 找回密码
 立即注册
查看: 2935|回复: 14

初学python,遇到问题了。关于list分片问题

[复制链接]
发表于 2015-5-13 19:38:58 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 戴宇轩 于 2015-5-14 20:52 编辑

最近去实习了,可是因为刚刚到,貌似没什么事,组长都叫我自己看看他们以前写的技术博客,然后看到小组的都会python,然后热血一起就决定要学习python了。今天看学习的时候遇到一个不懂的问题

问题如下:
一个题目大概是这个样子的
range()函数可以创建一个数列:
>>> range(1, 101)[1, 2, 3, ..., 100]
请利用切片,取出:
1. 前10个数;
2. 3的倍数;
3. 不大于50的5的倍数。


然后答案是这个样子的
  1. L = range(1, 101)
  2. print L[:10]
  3. print L[2::3]
  4. print L[4:50:5]
复制代码
自己想的是print L[::3]print L[:50:5]隔3个取一个,隔三个取一个不就是3的倍数了么
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2015-5-13 20:10:53 | 显示全部楼层
分片会取第一个数呃,从0开始会取到1,1不是3的倍数也不是5的倍数吧。且过3个 2,3,4是4不是3。除非是range(101)。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-5-13 22:22:03 | 显示全部楼层
友情提醒:
1、用代码框贴代码的话,大家会看的更清楚哦亲~~
2、自己有想法的话,在idle里先试试,看看结果,说不定自己就解决了,而且更有成就感 的说~~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-13 22:45:33 | 显示全部楼层
lightninng 发表于 2015-5-13 22:22
友情提醒:
1、用代码框贴代码的话,大家会看的更清楚哦亲~~
2、自己有想法的话,在idle里先试 ...

因为试过,所以觉得不对有疑问。不过后来自己想通了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-5-14 00:14:02 | 显示全部楼层
kklloo 发表于 2015-5-13 22:45
因为试过,所以觉得不对有疑问。不过后来自己想通了

哈哈,我也有过,还有时候想问问题,结果发贴的时候,想着怎么能跟别人说清楚的过程中,自己就想通了~~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-14 09:31:09 | 显示全部楼层
lightninng 发表于 2015-5-14 00:14
哈哈,我也有过,还有时候想问问题,结果发贴的时候,想着怎么能跟别人说清楚的过程中,自己就想通了~~{: ...

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

使用道具 举报

发表于 2015-5-14 12:16:41 | 显示全部楼层
感觉是小学算术没学好,
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-14 13:12:42 | 显示全部楼层
Seandor 发表于 2015-5-14 12:16
感觉是小学算术没学好,

小学数学体育老师教的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-5-14 18:09:16 | 显示全部楼层
来一个高手 讲讲
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-5-14 18:34:15 | 显示全部楼层
我没有理解到你的意思
请利用切片,取出:

是不是
                    3的倍数并且要不大于50的5的倍数。
是一个条件吗?
for i in range(3,100,3):
    if i <50:
        print (i,i%5==0)


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

使用道具 举报

发表于 2015-5-14 19:11:15 | 显示全部楼层

恩那,多多交流~~
另外欢迎加入python版块
珍惜生命,我用python!!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-5-18 16:56:11 | 显示全部楼层
a=list(range(1,101))
print(a[0:10])
print(a[2::3])
print(a[4:50:5])

这样应该就可以了

评分

参与人数 1鱼币 +5 收起 理由
康小泡 + 5 我已经懂了,不过还是很谢谢。

查看全部评分

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

使用道具 举报

发表于 2015-5-18 17:16:51 | 显示全部楼层
支持楼主
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-5-24 21:17:34 | 显示全部楼层
支持楼主,共勉
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-5-25 14:24:28 | 显示全部楼层
学习学习
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-16 02:11

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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