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

初识Python

廖雪峰 移动开发工程师
难度入门
时长 5小时 0分
  • r'''句子前端和后端不可出现空格'''
    查看全部
  • 对于有序集合,元素确实是有索引的。有的时候,我们确实想在 for 循环中拿到索引,怎么办? 方法是使用 enumerate() 函数: >>> L = ['Adam', 'Lisa', 'Bart', 'Paul'] >>> for index, name in enumerate(L): ... print index, '-', name ... 0 - Adam 1 - Lisa 2 - Bart 3 - Paul 使用 enumerate() 函数,我们可以在for循环中同时绑定索引index和元素name。但是,这不是 enumerate() 的特殊语法。实际上,enumerate() 函数把: ['Adam', 'Lisa', 'Bart', 'Paul'] 变成了类似: [(0, 'Adam'), (1, 'Lisa'), (2, 'Bart'), (3, 'Paul')] 因此,迭代的每一个元素实际上是一个tuple: for t in enumerate(L): index = t[0] name = t[1] print index, '-', name 如果我们知道每个tuple元素都包含两个元素,for循环又可以进一步简写为: for index, name in enumerate(L): print index, '-', name 这样不但代码更简单,而且还少了两条赋值语句。 可见,索引迭代也不是真的按索引访问,而是由 enumerate() 函数自动把每个元素变成 (index, element) 这样的tuple,再迭代,就同时获得了索引和元素本身。
    查看全部
    0 采集 收起 来源:索引迭代

    2018-03-22

  • 删除列表里的 用pop() >>> L = ['Adam', 'Lisa', 'Bart', 'Paul'] >>> L.pop() 'Paul' >>> print L ['Adam', 'Lisa', 'Bart'] >>> L.pop(2) 'Paul' >>> print L ['Adam', 'Lisa', 'Bart']
    查看全部
  • 要把新同学'Paul'的成绩 72 加进去,用赋值语句: >>> d['Paul'] = 7
    查看全部
    0 采集 收起 来源:Python更新dict

    2018-03-22

  • 多层 for 循环来生成列表。 对于字符串 'ABC' 和 '123',可以使用两层循环,生成全排列: >>> [m + n for m in 'ABC' for n in '123'] ['A1', 'A2', 'A3', 'B1', 'B2', 'B3', 'C1', 'C2', 'C3']
    查看全部
    0 采集 收起 来源:多层表达式

    2018-03-22

  • 列表生成式的 for 循环后面还可以加上 if 判断。例如: >>> [x * x for x in range(1, 11) if x % 2 == 0] [4, 16, 36, 64, 100] 有了 if 条件,只有 if 判断为 True 的时候,才把循环的当前元素添加到列表中。
    查看全部
    0 采集 收起 来源:条件过滤

    2018-03-22

  • Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。 解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了。 #coding=utf-8 print 'hello 你好呢'
    查看全部
    0 采集 收起 来源:Python的注释

    2017-08-11

  • py 中#表示任意位置的单行注释 py 中'''(三对单引号)和"""(三对双引号)都表示多行注释 开头标注-*- coding:utf-8 -* 标明 采用utf-8编码格式
    查看全部
    0 采集 收起 来源:Python的注释

    2018-03-22

  • dict的第一个特点是查找速度快,无论dict有10个元素还是10万个元素,查找速度都一样。而list的查找速度随着元素增加而逐渐下降。 不过dict的查找速度快不是没有代价的,dict的缺点是占用内存大,还会浪费很多内容,list正好相反,占用内存小,但是查找速度慢。 dict的第二个特点就是存储的key-value序对是没有顺序的 dict的第三个特点是作为 key 的元素必须不可变
    查看全部
  • 生成列表 >>> [x * x for x in range(1, 11)] [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] 这种写法就是Python特有的列表生成式。利用列表生成式,可以以非常简洁的代码生成 list。
    查看全部
    0 采集 收起 来源:生成列表

    2018-03-22

  • reference coding: print [x * (x+1) for x in range(1,100)[::2]] print [x*y for x,y in zip(range(1,100,2),range(2,100,2))] print [x * (x+1) for x in range(1,100,2)] print [(2*x-1)*(2*x) for x in range (1,51)]
    查看全部
    0 采集 收起 来源:生成列表

    2017-08-11

  • 迭代dict的key和value 首先,我们看看 dict 对象的 items() 方法返回的值: >>> d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } >>> print d.items() [('Lisa', 85), ('Adam', 95), ('Bart', 59)] 可以看到,items() 方法把dict对象转换成了包含tuple的list,我们对这个list进行迭代,可以同时获得key和value 和 values() 有一个 itervalues() 类似, items() 也有一个对应的 iteritems(),iteritems() 不把dict转换成list,而是在迭代过程中不断给出 tuple,所以, iteritems() 不占用额外的内存。
    查看全部
  • 如果一个函数在内部调用自身本身,这个函数就是递归函数。
    查看全部
  • >>> print d['Adam'] 95 一是先判断一下 key 是否存在,用 in 操作符: if 'Paul' in d: print d['Paul'] 二是使用dict本身提供的一个 get 方法,在Key不存在的时候,返回None: >>> print d.get('Bart') 59 >>> print d.get('Paul') None
    查看全部
    0 采集 收起 来源:Python之访问dict

    2018-03-22

  • d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } 我们把名字称为key,对应的成绩称为value,dict就是通过 key 来查找 value。 由于dict也是集合,len() 函数可以计算任意集合的大小:
    查看全部

举报

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

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