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

初识Python

廖雪峰 移动开发工程师
难度入门
时长 5小时 0分
  • dict的第一个特点是查找速度快,无论dict有10个元素还是10万个元素,查找速度都一样。而list的查找速度随着元素增加而逐渐下降。

    不过dict的查找速度快不是没有代价的,dict的缺点是占用内存大,还会浪费很多内容,list正好相反,占用内存小,但是查找速度慢。

    由于dict是按 key 查找,所以,在一个dict中,key不能重复。

    dict的第二个特点就是存储的key-value序对是没有顺序的!这和list不一样:


    查看全部
  • def up(a):

        for x in a:

                return [x.upper() for x in a if isinstance(x, str)]

            

    print up(['hello','world',101])


    def toup(L):

        for x in L:

            if isinstance(x, str):

                return [x.toup()]

    print up(['hello','world',101])


    查看全部
    0 采集 收起 来源:条件过滤

    2018-05-25

  • '   ',"   ",\             \用于符号转义

    r'   '   raw字符串,内部字符不需要转义

    '''   '''   多行字符串

    r'''   '''     多行raw字符串


    查看全部
  • 字符串的join()方法可以把一个 list 拼接成一个字符串。

    查看全部
    0 采集 收起 来源:复杂表达式

    2018-05-25

  • 列表生成式的 for 循环后面还可以加上 if 判断。例如:

    >>> [x * x for x in range(1, 11)]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

    如果我们只想要偶数的平方,不改动 range()的情况下,可以加上 if 来筛选:

    >>> [x * x for x in range(1, 11) if x % 2 == 0]
    [4, 16, 36, 64, 100]

    有了 if 条件,只有 if 判断为 True 的时候,才把循环的当前元素添加到列表中


    查看全部
    0 采集 收起 来源:条件过滤

    2018-05-25

  • d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }

    完全可以通过一个复杂的列表生成式把它变成一个 HTML 表格:

    tds = ['<tr><td>%s</td><td>%s</td></tr>' % (name, score) for name, score in d.iteritems()]
    print '<table>'
    print '<tr><th>Name</th><th>Score</th><tr>'
    print '\n'.join(tds)
    print '</table>'

    注:字符串可以通过 % 进行格式化,用指定的参数替代 %s。字符串的join()方法可以把一个 list 拼接成一个字符串。

    把打印出来的结果保存为一个html文件,就可以在浏览器中看到效果了:

    <table border="1">
    <tr><th>Name</th><th>Score</th><tr>
    <tr><td>Lisa</td><td>85</td></tr>
    <tr><td>Adam</td><td>95</td></tr>
    <tr><td>Bart</td><td>59</td></tr>
    </table>


    查看全部
    0 采集 收起 来源:复杂表达式

    2018-05-25

  • 要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],我们可以用range(1, 11):

    >>> range(1, 11)
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

    但如果要生成[1x1, 2x2, 3x3, ..., 10x10]怎么做?方法一是循环:

    >>> L = []
    >>> for x in range(1, 11):
    ...    L.append(x * x)
    ... 
    >>> L
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

    但是循环太繁琐,而列表生成式则可以用一行语句代替循环生成上面的list:

    >>> [x * x for x in range(1, 11)]
    [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

    这种写法就是Python特有的列表生成式。利用列表生成式,可以以非常简洁的代码生成 list。

    写列表生成式时,把要生成的元素 x * x 放到前面,后面跟 for 循环,就可以把list创建出来,十分有用,多写几次,很快就可以熟悉这种语法。


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

    2018-05-25

  • >>> d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
    >>> print d.items()
    [('Lisa', 85), ('Adam', 95), ('Bart', 59)]

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

    >>> for key, value in d.items():
    ...     print key, ':', value
    ... 
    Lisa : 85
    Adam : 95
    Bart : 59

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


    查看全部
  • python之更新set:

    由于set存储的是一组不重复的无序元素,因此,更新set主要做两件事:

    一是把新的元素添加到set中,二是把已有的元素从set中删除。

    添加元素时,用set的add()方法:

    如果添加的元素已经存在于set中,add()不会报错,但是不会加进去了。

    删除set中的元素时,用set的remove()方法:


    查看全部
    0 采集 收起 来源:Python之 更新set

    2018-05-25

  • python之遍历set:

    由于set也是一个集合,所以,遍历set和遍历list类似,都可以通过for循环实现。

    注意:观察for循环在遍历set时,元素的顺序和list的顺序可能是不同的,而且不同的机器上运行的结果也可能不同。

    查看全部
    0 采集 收起 来源:Python之 遍历set

    2018-05-25

  • python之set的特点:

    set的内部结构和dict很像,唯一区别是不存储value,因此判断一个元素是否在set中速度很快

    set存储的元素和dict的key类似,必须是不可变的对象。

    最后,set存储的元素也是没有顺序的。


    查看全部
  • python之访问set:

    由于set存储的是无序集合,所以无法通过索引来访问。

    访问set中的某一个元素实际上就是判断一个元素是否在set中,用in操作符判断:

    元素name  in  s    若存在则返回true,否则返回false。


    查看全部
    0 采集 收起 来源:Python之 访问set

    2018-05-25

  • \n 表示换行
    \t 表示一个制表符
    \\ 表示 \ 字符本身


    查看全部
  • Python的math包提供了sqrt()函数用于计算平方根。

    查看全部
  • 第一个办法是用 list 的 append() 方法,把新同学追加到 list 的末尾:

    >>> L = ['Adam', 'Lisa', 'Bart']
    >>> L.append('Paul')
    >>> print L
    ['Adam', 'Lisa', 'Bart', 'Paul']

    append()总是把新的元素添加到 list 的尾部。

    如果 Paul 同学表示自己总是考满分,要求添加到第一的位置,怎么办?

    方法是用list的 insert()方法,它接受两个参数,第一个参数是索引号,第二个参数是待添加的新元素:


    查看全部

举报

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

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