为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Python3 入门教程(新版)_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Python3 入门教程(新版)

咚咚呛 全栈工程师
难度入门
时长 4小时24分
  • count()方法

    count()方法用来统计tuple中某个元素出现的次数。

    T = (1, 1, 2, 2, 3, 3, 1, 3, 5, 7, 9)
    print(T.count(1)) # ==> 3
    print(T.count(5)) # ==> 1

    对于不存在的元素,count方法不会报错,而是返回0,这是合理的,因为元组里面有0个不存在的元素。

    T = (1, 1, 2, 2, 3, 3, 1, 3, 5, 7, 9)
    print(T.count(10)) # ==> 0
    查看全部
  • 请注意,元组(tuple)的这个特性是非常重要的,在运行上tuple的性能是list的数倍。

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

    2021-07-15

  • tuple和list不一样的是,tuple是固定不变的,一旦变成tuple,tuple中的每一个元素都不可被改变,同时也不能再往tuple中添加数据,而list是可以的。


    请注意,元组(tuple)的这个特性是非常重要的,在运行上tuple的性能是list的数倍。

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

    2021-07-15

  • append()方法总是将元素添加到list的尾部。 指定插入位置,需要使用list的insert()方法,insert()方法和append()方法不一样,insert()方法需要两个参数,分别是需要插入的位置,以及需要插入的元素。
    查看全部
  • 函数参数可以是任意的数据类型,只要函数内部逻辑可以处理即可。

    但是,有时候由于函数的实现关系,需要特定的参数,就比如前面实现的求绝对值的函数my_abs(),如果传递一个字符串,就会引起错误。

    为了保证函数的正常运行,有时候需要对函数入参进行类型的校验,Python提供isinstance()函数,可以判断参数类型,它接收两个参数,第一个是需要判断的参数,第二个是类型:

    isinstance(100, int) # ==> True
    isinstance(100.0, int) # ==> False
    isinstance('3.1415926', str) # ==> True

    有了isinstance,就可以优化my_abs函数,不在里面运行出错了。

    def my_abs(x):
       if not isinstance(x, int) or not isinstance(x, float):
           print('param type error.')
           return None
       if x >= 0:
           return x
       else:
           return -x

    查看全部
    0 采集 收起 来源:Python函数参数

    2021-07-14

  • 如果在一个函数内部调用其自身,这个函数就是 递归函数 
    举个例子,我们来计算阶乘 n! = 1 * 2 * 3 * ... * n,用函数 fact(n)表示,可以看出:

    fact(n) = n! = 1 * 2 * 3 * ... * (n-1) * n = (n-1)! * n = fact(n-1) * n

    所以,fact(n)可以表示为 n * fact(n-1),只有n=1时需要特殊处理:

    def fact(n):
       if n==1:
           return 1
       return n * fact(n - 1)
    这个fact(n)就是递归函数

    理论上,所有的递归函数都可以写成循环的方式,但循环的逻辑不如递归清晰。

    注:使用递归函数需要注意防止栈溢出。

    查看全部
    0 采集 收起 来源:Python递归函数

    2021-07-14

  • 有时候函数是没有返回结果的,这个时候从函数获取到的是一个空值None

    def list_sum(l):
       result = 0
       for num in l:
           result = result + num
       print('result is {}'.format(result))
       return


    l = [1, 3, 5, 7, 9, 11]
    result =list_sum(l) # 调用定义的sum_list函数并获得return返回的结果
    print(result) # ==> None

    除了返回None、一个值以外,函数也可以返回多个值,在函数中,如果需要返回多个值,多个值之间使用逗号 ',' 分隔即可,但是需要注意顺序

    def data_of_square(side):
       C = 4 * side
       S = side * side
       return C, S

    C, S = data_of_square(16)
    print('周长 = {}'.format(C)) # ==> 周长 = 64
    print('面积 = {}'.format(S)) # ==> 面积 = 256

    也可以使用一个值存储函数返回的多值结果:

    result = data_of_square(16)
    print(result) # ==> (64, 256)

    注意打印的result,其实它是tuple类型,如果我们需要取出结果中的周长或者面积,使用对应位置的下标就可以获得对应的结果。

    查看全部
  • while循环可以继续进行下去的条件更加简单,只需要判断while循环的条件是否为True即可,当条件为True时,即继续运行下去。
    查看全部
  • 在Python中,定义一个函数要使用 def 语句

    依次写出函数名括号()括号中的参数冒号 

    然后,在缩进块中编写函数体,函数的返回值用 return 语句返回。
    我们以定义一个求绝对值的函数my_abs函数为例:

    def my_abs(x):
        if x >= 0:      return x
        else:       return -x

    return表示返回的意思,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回

    查看全部
    0 采集 收起 来源:Python定义函数

    2021-07-14

  • 但是r'...'表示法不能表示多行字符串,也不能表示包含'和 "的字符串。 如果要表示多行字符串,可以用'''...'''表示
    查看全部

  • # Enter a code

    L = [[1, 2, 3], [5, 3, 2], [7, 3, 2]]

    area1 = L[0][0]*L[0][1]*2+L[0][0]*L[0][2]*+L[0][1]*L[0][2]*2

    area2 = L[1][0]*L[1][1]*2+L[1][0]*L[1][2]*+L[1][1]*L[1][2]*2

    area3 = L[2][0]*L[2][1]*2+L[2][0]*L[2][2]*+L[2][1]*L[2][2]*2

    print(area1)

    print(area2)

    print(area3)

    查看全部
    1 采集 收起 来源:Python二维list

    2021-07-14

  • 这个时候得到的就是一个二维list,对于二维list,列表里面的每一个元素仍然是一个列表。这个时候,如果需要从二维list all_scores获取Bob最近第三次考试的成绩,可以这样写

    alice_scores = [100,89,92]
    bob_scores = [70,65,81]
    candy_scores = [88,72,77]
    all_scores = [alice_scores, bob_scores, candy_scores]
    score = all_scores[1][2] # ==> 81

    其中all_scores[1]得到Bob的最近三次成绩的列表,再通过下标[2],则可以得到Bob第三次的成绩。

    查看全部
    0 采集 收起 来源:Python二维list

    2021-07-14

  • 假如班上同学Candy需要转走了,同时有一个新的同学Canlina转入,那么按照字母排序,Canlina的位置恰好是Candy的位置。

    L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
    L[2] = 'Canlina'
    print(L)

    我们也可以使用倒序索引来完成同样的功能。

    L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
    L[-3] = 'Canlina'
    print(L)

    注意,如果替换一个不存在的下标,则同样会引起Python运行错误。

    L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
    L[6] = 'Canlina'
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    IndexError: list assignment index out of range
    查看全部
  • 这个时候我们可以使用列表的pop()方法,pop()方法默认删除列表的最后一个元素,并返回。

    L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
    name = L.pop()
    print(name) # ==> Ellena
    print(L) # ==> L = ['Alice', 'Bob', 'Candy', 'David']

    pop()方法,除了可以删除最后一个元素以外,pop()还可以接收一个参数,指定需要删除的元素的位置。

    L = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
    name = L.pop(2)
    print(name) # ==> Candy
    print(L) # ==> ['Alice', 'Bob', 'David', 'Ellena']
    查看全部
  • list的insert()方法,insert()方法和append()方法不一样,insert()方法需要两个参数,分别是需要插入的位置,以及需要插入的元素。

    names = ['Alice', 'Bob', 'David', 'Ellena']
    names.insert(2, 'Candy')
    print(names) # ==> ['Alice', 'Bob', 'Candy', 'David', 'Ellena']

    注意,将Candy插入到第三的位置之后,原来的名字,都将自动往后移动一位,这个时候再使用相同的索引获取后面的元素,将会得到不一样的结果。

    names = ['Alice', 'Bob', 'David', 'Ellena']
    print(names[2]) # ==> David
    names.insert(2, 'Candy')
    print(names[2]) # ==>Candy
    查看全部

举报

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

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