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

初识Python

廖雪峰 移动开发工程师
难度入门
时长 5小时 0分
  • and 和 or 运算的一条重要法则:短路计算。

    1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。

    2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

    所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。


    查看全部
  • 和 for 循环不同的另一种循环是 while 循环,while 循环不会迭代 list 或 tuple 的元素,而是根据表达式判断循环是否结束。

    比如要从 0 开始打印不大于 N 的整数:N = 10
    x = 0while x < N:
        print x
        x = x + 1
    while循环每次先判断 x < N,如果为True,则执行循环体的代码块,否则,退出循环。在循环体内,x = x + 1 会让 x 不断增加,最终因为 x < N 不成立而退出循环。如果没有这一个语句,while循环在判断 x < N 时总是为True,就会无限循环下去,变成死循环,所以要特别留意while循环的退出条件。


    查看全部
  • 要避免嵌套结构的 if ... else ...,我们可以用 if ... 多个elif ... else ... 的结构,一次写完所有的规则:

    if age >= 18:
        print 'adult'elif age >= 6:
        print 'teenager'elif age >= 3:
        print 'kid'else:
        print 'baby'


    查看全部
  • 条件1:18岁或以上:adult
    条件2:6岁或以上:teenager
    条件3:6岁以下:kid

    if age >= 18:
        print 'adult'
    else:
        if age >= 6:
            print 'teenager'
        else:
            print 'kid'

    避免嵌套结构的 if ... else ...,我们可以用 if ... 多个elif ... else ... 的结构,一次写完所有的规则:

    if age >= 18:
        print 'adult'elif age >= 6:
        print 'teenager'elif age >= 3:
        print 'kid'else:
        print 'baby'

    查看全部
  • if age >= 18:
        print 'adult'
    else:
        print 'teenager'

    利用 if ... else ... 语句,我们可以根据条件表达式的值为 True 或者 False ,分别执行 if 代码块或者 else 代码块。

    注意: else 后面有个“:”

    查看全部
    0 采集 收起 来源:Python之 if-else

    2018-06-05

  • 注意: if 语句后接表达式,然后用:表示代码块开始。

    如果你在Python交互环境下敲代码,还要特别留意缩进,并且退出缩进需要多敲一行回车:

    >>> age = 20
    >>> if age >= 18:
    ...     print 'your age is', age
    ...     print 'adult'
    ...
    your age is 20
    adult

    查看全部
    0 采集 收起 来源:Python之if语句

    2018-06-05

  • 1.append()总是把新的元素添加到 list 的尾部(用发为矩阵名.append(‘ ‘)

    2.L.insert(0, 'Paul') 的意思是,'Paul'将被添加到索引为 0 的位置上(也就是第一个),而原来索引为 0 的Adam同学,以及后面的所有同学,都自动向后移动一位。

    查看全部
  • Python中整数和浮点数

    Python支持对整数和浮点数直接进行四则混合运算,运算规则和数学上的四则运算规则完全一致。

    基本的运算:

    1 + 2 + 3   # ==> 6
    4 * 5 - 6   # ==> 14
    7.5 / 8 + 2.1   # ==> 3.0375

    使用括号可以提升优先级,这和数学运算完全一致,注意只能使用小括号,但是括号可以嵌套很多层:

    (1 + 2) * 3    # ==> 9(2.2 + 3.3) / (1.5 * (9 - 0.3))    # ==> 0.42145593869731807

    和数学运算不同的地方是,Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数:

    1 + 2    # ==> 整数 3
    1.0 + 2.0    # ==> 浮点数 3.0

    但是整数和浮点数混合运算的结果就变成浮点数了:

    1 + 2.0    # ==> 浮点数 3.0

    为什么要区分整数运算和浮点数运算呢?这是因为整数运算的结果永远是精确的,而浮点数运算的结果不一定精确,因为计算机内存再大,也无法精确表示出无限循环小数,比如 0.1 换成二进制表示就是无限循环小数。

    那整数的除法运算遇到除不尽的时候,结果难道不是浮点数吗?我们来试一下:

    11 / 4    # ==> 2

    令很多初学者惊讶的是,Python的整数除法,即使除不尽,结果仍然是整数,余数直接被扔掉。不过,Python提供了一个求余的运算 % 可以计算余数:

    11 % 4    # ==> 3

    如果我们要计算 11 / 4 的精确结果,按照“整数和浮点数混合运算的结果是浮点数”的法则,把两个数中的一个变成浮点数再运算就没问题了:

    11.0 / 4    # ==> 2.75


    查看全部
  • Python中Unicode字符串

    计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),0 - 255被用来表示大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母 A 的编码是65,小写字母 z 的编码是122

    如果要表示中文,显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲突,所以,中国制定了GB2312编码,用来把中文编进去。

    类似的,日文和韩文等其他语言也有这个问题。为了统一所有文字的编码,Unicode应运而生。Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。

    Unicode通常用两个字节表示一个字符,原有的英文编码从单字节变成双字节,只需要把高字节全部填为0就可以。

    因为Python的诞生比Unicode标准发布的时间还要早,所以最早的Python只支持ASCII编码,普通的字符串'ABC'在Python内部都是ASCII编码的。

    Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u'...'表示,比如:

    print u'中文'
    中文

    注意: 不加 u ,中文就不能正常显示。

    Unicode字符串除了多了一个 u 之外,与普通字符串没啥区别,转义字符和多行表示法仍然有效:

    转义:

    u'中文\n日文\n韩文'

    多行:

    u'''第一行
    第二行'''

    raw+多行:

    ur'''Python的Unicode字符串支持"中文",
    "日文",
    "韩文"等多种语言'''

    如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释

    # -*- coding: utf-8 -*-

    目的是告诉Python解释器,用UTF-8编码读取源代码。然后用Notepad++ 另存为... 并选择UTF-8格式保存。

    python 3.x版本中,不支持u加上中文,比如:u‘中文’,python2.x版本是支持的;python2.x版本,若脚本文件本身编码不匹配,而不是utf-8的编码,也是不识别,u'中文'

    查看全部

  • 如果中文字符串在python环境下遇到UnicodeDecodeError,这是因为.py文件保存格式有问题。乐意在第一行添加注释
    #-*- coding: utf-8 -*-


    查看全部
  • Python中raw字符串与多行字符串

    如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀 r ,表示这是一个 raw 字符串,里面的字符就不需要转义了。例如:

    r'\(~_~)/ \(~_~)/'

    但是r'...'表示法不能表示多行字符串,也不能表示包含'"的字符串(为什么?)

    如果要表示多行字符串,可以用'''...'''表示:

    '''Line 1
    Line 2
    Line 3'''

    上面这个字符串的表示方法和下面的是完全一样的:

    'Line 1\nLine 2\nLine 3'

    还可以在多行字符串前面添加 r ,把这个多行字符串也变成一个raw字符串:

    r'''Python is created by "Guido".
    It is free and easy to learn.
    Let's start learn Python in imooc!'''

                 


    查看全部
  • a = 'python'<br /><p>print 'hello,',a</p><p>#只能用逗号代表空格<br /></p>
    查看全部
  • a = 'python'
    print 'hello,', a or 'world'

    b = ''
    print 'hello,', b or 'world'



    查看全部
  •     

    [start, end, step]


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

    2018-06-04

  • >>> s = set([1, 2, 3])
    >>> s.add(4)
    >>> print s
    set([1, 2, 3, 4])


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

    2018-06-04

举报

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

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