为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
初识Python_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

初识Python

廖雪峰 移动开发工程师
难度入门
时长 5小时 0分
  • x*(x+1) for x in range(1,100,2)

    运行成功

    [2, 12, 30, 56, 90, 132, 182, 240, 306, 380, 462, 552, 650, 756, 870, 992, 1122, 1260, 1406, 1560, 1722, 1892, 2070, 2256, 2450, 2652, 2862, 3080, 3306, 3540, 3782, 4032, 4290, 4556, 4830, 5112, 5402, 5700, 6006, 6320, 6642, 6972, 7310, 7656, 8010, 8372, 8742, 9120, 9506, 9900]


    查看全部
    0 采集 收起 来源:生成列表

    2018-05-21

  • 前面插入一个\表示这是一个普通字符,不代表字符串的起始,

    查看全部
  • 字符串本身包含'',可以用“”将字符串包括起来

    如果本身包含“”,则用''包括

    查看全部
  • 在一个 for 循环中,同时迭代 key和value.

    items() 方法把dict对象转换成了包含tuple的list,我们对这个list进行迭代,可以同时获得key和value:

    和 values() 有一个 itervalues() 类似, items() 也有一个对应的 iteritems(),iteritems() 不把dict转换成list,而是在迭代过程中不断给出 tuple,所以, iteritems() 不占用额外的内存。

    查看全部
  • for key in d:

        print key+':',d[key]

    for v in d.itervalues():

        print v

    for k, v in d.items():

        print k,":",v

    values(),itervalues();

    items(), iteritems()

    查看全部
  • d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }


    sum = 0.0

    for v in d.itervalues():

        sum=sum+v

    print sum/len(d)


    查看全部
    0 采集 收起 来源:迭代dict的value

    2018-05-21

  • 我们已经了解了dict对象本身就是可迭代对象,用 for 循环直接迭代 dict,可以每次拿到dict的一个key。

    1. values() 方法实际上把一个 dict 转换成了包含 value 的list。

    2. 但是 itervalues() 方法不会转换,它会在迭代过程中依次从 dict 中取出 value,所以 itervalues() 方法比 values() 方法节省了生成 list 所需的内存。

    3. 打印 itervalues() 发现它返回一个 <dictionary-valueiterator> 对象,这说明在Python中,for 循环可作用的迭代对象远不止 list,tuple,str,unicode,dict等,任何可迭代对象都可以作用于for循环,而内部如何迭代我们通常并不用关心。

    如果一个对象说自己可迭代,那我们就直接用 for 循环去迭代它,可见,迭代是一种抽象的数据操作,它不对迭代对象内部的数据有任何要求。


    查看全部
    0 采集 收起 来源:迭代dict的value

    2018-05-21

  • L = ['Adam', 'Lisa', 'Bart', 'Paul']

    for index, name in zip(range(1,len(L)+1),L):

        print index, '-', name

    运行成功

    1 - Adam
    2 - Lisa
    3 - Bart
    4 - Paul


    查看全部
    0 采集 收起 来源:索引迭代

    2018-05-21

  • Python中,迭代永远是取出元素本身,而非元素的索引。

    使用 enumerate() 函数,我们可以在for循环中同时绑定索引index和元素name。

    可见,索引迭代也不是真的按索引访问,而是由 enumerate() 函数自动把每个元素变成 (index, element) 这样的tuple,再迭代,就同时获得了索引和元素本身。

    查看全部
    0 采集 收起 来源:索引迭代

    2018-05-21

  • 在Python中,如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们成为迭代(Iteration)。

    for i in range(1,101):

        if i%7==0:

            print i

    因为 Python 的 for循环不仅可以用在list或tuple上,还可以作用在其他任何可迭代对象上。

    因此,迭代操作就是对于一个集合,无论该集合是有序还是无序,我们用 for 循环总是可以依次取出集合的每一个元素。

    注意: 集合是指包含一组元素的数据结构,我们已经介绍的包括:
    1. 有序集合:list,tuple,str和unicode;
    2. 无序集合:set
    3. 无序集合并且具有 key-value 对:dict


    查看全部
    0 采集 收起 来源:什么是迭代

    2018-05-21

  • def firstCharUpper(s):

        return s[:1].upper()+s[1:]


    print firstCharUpper('hello')

    print firstCharUpper('sunday')

    print firstCharUpper('september')

    运行成功

    Hello
    Sunday
    September


    查看全部
    0 采集 收起 来源:对字符串切片

    2018-05-21

  • 对于list,既然Python支持L[-1]取倒数第一个元素,那么它同样支持倒数切片,试试:

    记住倒数第一个元素的索引是-1。倒序切片包含起始索引,不包含结束索引。

    L = range(1, 101)

    print L[-10:]

    print L[-46::5]

    运行成功

    [91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
    [55, 60, 65, 70, 75, 80, 85, 90, 95, 100]


    查看全部
    0 采集 收起 来源:倒序切片

    2018-05-21

  • L = range(1, 101)

    print L[:10]

    print L[2::3]

    print L[4:50:5]

    运行成功

    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    [3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99]
    [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]


    查看全部
    0 采集 收起 来源:对list进行切片

    2018-05-21

  • 取一个list的部分元素是非常常见的操作。(把list换成tuple,切片操作完全相同,只是切片的结果也变成了tuple。)

    Python提供了切片(Slice)操作符,能大大简化这种操作。

    L[0:3]表示,从索引0开始取,直到索引3为止,但不包括索引3。即索引0,1,2,正好是3个元素。

    如果第一个索引是0,还可以省略:

    只用一个 : ,表示从头到尾:L[:]实际上复制出了一个新list。

    切片操作还可以指定第三个参数:第三个参数表示每N个取一个,上面的 L[::2] 会每两个元素取出一个来,也就是隔一个取一个。


    查看全部
    0 采集 收起 来源:对list进行切片

    2018-05-21

  • 1. 有序集合:list,tuple,str和unicode;
    2. 无序集合:set
    3. 无序集合并且具有 key-value 对:dict


    查看全部
    0 采集 收起 来源:什么是迭代

    2018-05-21

举报

0/150
提交
取消
课程须知
如果您了解程序设计的基本概念,会简单使用命令行,了解中学数学函数的概念,那么对课程学习会有很大的帮助,让您学起来得心应手,快速进入Python世界。
老师告诉你能学到什么?
通过本课程的学习,您将学会搭建基本的Python开发环境,以函数为基础编写完整的Python代码,熟练掌握Python的基本数据类型以及list和dict的操作。
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!