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

初识Python

廖雪峰 移动开发工程师
难度入门
时长 5小时 0分
  • Python中什么是变量

    在Python中,变量的概念基本上和初中代数的方程变量是一致的。

    例如,对于方程式 y=x*x x就是变量。当x=2时,计算结果是4,当x=5时,计算结果是25

    只是在计算机程序中,变量不仅可以是数字,还可以是任意数据类型。

    在Python程序中,变量是用一个变量名表示,变量名必须是大小写英文、数字和下划线(_)的组合,且不能用数字开头,比如:

    a = 1

    变量a是一个整数。

    t_007 = 'T007'

    变量t_007是一个字符串。

    在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,例如:

    a = 123    # a是整数 print a a = 'imooc'   # a变为字符串 print a

    这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。

    静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。例如Java是静态语言,赋值语句如下(// 表示注释):

    int a = 123; // a是整数类型变量 a = "mooc"; // 错误:不能把字符串赋给整型变量

    和静态语言相比,动态语言更灵活,就是这个原因。

    请不要把赋值语句的等号等同于数学的等号。比如下面的代码:

    x = 10 x = x + 2

    如果从数学上理解x = x + 2那无论如何是不成立的,在程序中,赋值语句先计算右侧的表达式x + 2,得到结果12,再赋给变量x。由于x之前的值是10,重新赋值后,x的值变成12。

    最后,理解变量在计算机内存中的表示也非常重要。当我们写:a = 'ABC'时,Python解释器干了两件事情:

    1. 在内存中创建了一个'ABC'的字符串;

    2. 在内存中创建了一个名为a的变量,并把它指向'ABC'

    也可以把一个变量a赋值给另一个变量b,这个操作实际上是把变量b指向变量a所指向的数据,例如下面的代码:

    a = 'ABC' b = a a = 'XYZ' print b

    最后一行打印出变量b的内容到底是'ABC'呢还是'XYZ'?如果从数学意义上理解,就会错误地得出b和a相同,也应该是'XYZ',但实际上b的值是'ABC',让我们一行一行地执行代码,就可以看到到底发生了什么事:

    执行a = 'ABC',解释器创建了字符串  'ABC'和变量 a,并把a指向 'ABC':

    执行b = a,解释器创建了变量 b,并把b指向 a 指向的字符串'ABC':

    执行a = 'XYZ',解释器创建了字符串'XYZ',并把a的指向改为'XYZ',但b并没有更改:

    所以,最后打印变量b的结果自然是'ABC'了。


    查看全部
  • Python的注释

    任何时候,我们都可以给程序加上注释。注释是用来说明代码的,给自己或别人看,而程序运行的时候,Python解释器会直接忽略掉注释,所以,有没有注释不影响程序的执行结果,但是影响到别人能不能看懂你的代码。

    Python的注释以 # 开头,后面的文字直到行尾都算注释

    # 这一行全部都是注释... print 'hello' # 这也是注释

    注释还有一个巧妙的用途,就是一些代码我们不想运行,但又不想删除,就可以用注释暂时屏蔽掉:

    # 暂时不想运行下面一行代码: # print 'hello, python.'


    查看全部
    0 采集 收起 来源:Python的注释

    2018-12-28

  • Python之print语句

    print语句可以向屏幕上输出指定的文字。比如输出'hello, world',用代码实现如下:

    >>> print 'hello, world'

    注意:

    1.当我们在Python交互式环境下编写代码时,>>>是Python解释器的提示符,不是代码的一部分。

    2.当我们在文本编辑器中编写代码时,千万不要自己添加 >>>。

    print语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出:

    >>> print 'The quick brown fox', 'jumps over', 'the lazy dog' The quick brown fox jumps over the lazy dog

    print会依次打印每个字符串,遇到逗号“,”会输出一个空格,因此,输出的字符串是这样拼起来的:

    print也可以打印整数,或者计算结果:

    >>> print 300 300    #运行结果 >>> print 100 + 200 300    #运行结果

    因此,我们可以把计算100 + 200的结果打印得更漂亮一点:

    >>> print '100 + 200 =', 100 + 200 100 + 200 = 300     #运行结果

    注意: 对于100 + 200,Python解释器自动计算出结果300,但是,'100 + 200 ='是字符串而非数学公式,Python把它视为字符串,请自行解释上述打印结果。


    查看全部
  • dict的作用是建立一组 key 和一组 value 的映射关系,dict的key是不能重复的。

    set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。

    创建 set 的方式是调用 set() 并传入一个 list,list的元素将作为set的元素:

    >>> s = set(['A', 'B', 'C'])

    set内部存储的元素是无序的。set会自动去掉重复的元素。

    查看全部
  • 与运算:只有两个布尔值都为 True 时,计算结果才为 True。

    或运算:只要有一个布尔值为 True,计算结果就是 True。

    非运算:把True变为False,或者把False变为True:

    Python把0空字符串''None看成 False,其他数值和非空字符串都看成 True

    查看全部
  • Python的整数除法,即使除不尽,结果仍然是整数,余数直接被扔掉。不过,Python提供了一个求余的运算 % 可以计算余数。

    查看全部
  •  遍历set

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

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

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

    2018-12-28

  • Python之调用函数

    Python内置了很多有用的函数,我们可以直接调用。

    要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数 abs,它接收一个参数。

    可以直接从Python的官方网站查看文档: http://docs.python.org/2/library/functions.html#abs

    也可以在交互式命令行通过 help(abs) 查看abs函数的帮助信息。

    调用 abs 函数:

    >>> abs(100) 100 >>> abs(-20) 20 >>> abs(12.34) 12.34

    调用函数的时候,如果传入的参数数量不对,会报TypeError的错误,并且Python会明确地告诉你:abs()有且仅有1个参数,但给出了两个:

    >>> abs(1, 2) Traceback (most recent call last):   File "<stdin>", line 1, in <module> TypeError: abs() takes exactly one argument (2 given)

    如果传入的参数数量是对的,但参数类型不能被函数所接受,也会报TypeError的错误,并且给出错误信息:str是错误的参数类型:

    >>> abs('a') Traceback (most recent call last):   File "<stdin>", line 1, in <module> TypeError: bad operand type for abs(): 'str'

    而比较函数 cmp(x, y) 就需要两个参数,如果 x<y,返回 -1,如果 x==y,返回 0,如果 x>y,返回 1:

    >>> cmp(1, 2) -1 >>> cmp(2, 1) 1 >>> cmp(3, 3) 0

    Python内置的常用函数还包括数据类型转换函数,比如   int()函数可以把其他数据类型转换为整数:

    >>> int('123') 123 >>> int(12.34) 12

    str()函数把其他类型转换成 str:

    >>> str(123) '123' >>> str(1.23) '1.23'


    查看全部
  • dict的第一个特点是查找速度快,无论dict有10个元素还是10万个元素,查找速度都一样。而list的查找速度随着元素增加而逐渐下降。

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

    在一个dict中,key不能重复。

    dict的第二个特点就是存储的key-value序对是没有顺序的!dict内部是无序的,不能用dict存储有序的集合。

    dict的第三个特点是作为 key 的元素必须不可变,Python的基本类型如字符串、整数、浮点数都是不可变的,都可以作为 key。但是list是可变的,就不能作为 key。



    查看全部
  •  set的特点

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

    set存储的元素和dict的key类似,必须是不变对象,因此,任何可变对象是不能放入set中的。

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

    可以用来判断输入是否有效


    查看全部
  • Python之什么是函数

    我们知道圆的面积计算公式为:

    S = πr²

    当我们知道半径r的值时,就可以根据公式计算出面积。假设我们需要计算3个不同大小的圆的面积:

    r1 = 12.34 r2 = 9.08 r3 = 73.1 s1 = 3.14 * r1 * r1 s2 = 3.14 * r2 * r2 s3 = 3.14 * r3 * r3

    当代码出现有规律的重复的时候,你就需要当心了,每次写3.14 * x * x不仅很麻烦,而且,如果要把3.14改成3.14159265359的时候,得全部替换。

    有了函数,我们就不再每次写s = 3.14 * x * x,而是写成更有意义的函数调用 s = area_of_circle(x),而函数 area_of_circle 本身只需要写一次,就可以多次调用。

    抽象是数学中非常常见的概念。举个例子:

    计算数列的和,比如:1 + 2 + 3 + ... + 100,写起来十分不方便,于是数学家发明了求和符号∑,可以把1 + 2 + 3 + ... + 100记作:

    100 ∑n n=1

    这种抽象记法非常强大,因为我们看到∑就可以理解成求和,而不是还原成低级的加法运算。

    而且,这种抽象记法是可扩展的,比如:

    100 ∑(n²+1) n=1

    还原成加法运算就变成了:

    (1 x 1 + 1) + (2 x 2 + 1) + (3 x 3 + 1) + ... + (100 x 100 + 1)

    可见,借助抽象,我们才能不关心底层的具体计算过程,而直接在更高的层次上思考问题。

    写计算机程序也是一样,函数就是最基本的一种代码抽象的方式。

    Python不但能非常灵活地定义函数,而且本身内置了很多有用的函数,可以直接调用。


    查看全部
  • 可以使用 d[key] 的形式来查找对应的 value,这和 list 很像,但list 必须使用索引返回对应的元素,而dict使用key。

    避免 KeyError 发生,有两个办法:

    一是先判断一下 key 是否存在,用 in 操作符:

    if 'Paul' in d:
        print d['Paul']

    如果 'Paul' 不存在,if语句判断为False,自然不会执行 print d['Paul'] ,从而避免了错误。

    二是使用dict本身提供的一个 get 方法,在Key不存在的时候,返回None:

    >>> print d.get('Bart')
    59
    >>> print d.get('Paul')
    None

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

    2018-12-28

  • dict(类似C语言的结构体)可以讲事物联系起来,如:

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

    名字称为key,对应的成绩称为value,dict就是通过 key 来查找 value

    花括号 {} 表示这是一个dict,然后按照 key: value,注意要有逗号隔开。

    由于dict也是集合,len() 函数可以计算任意集合的大小,如:len(d)。

    查看全部
  • 数组的索引以0开头

    索引数字不能超过数组的上限

    查看全部
  • 对变量命名时,不能以python自带的函数命名(最好加下划线)


    查看全部
    0 采集 收起 来源:Python创建list

    2018-12-28

举报

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

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