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

Python3 入门教程(新版)

咚咚呛 全栈工程师
难度入门
时长 4小时24分
  • 0b二进制 0x十六进制
    查看全部
  • 合法的变量名规则:

    变量名由大小写英文字母、数字和下划线_组成

    变量不能用数字开头

    变量尽量不要和Python关键字重合(比如前面学习过的:and、or、not,否则可能导致Python原有关键字发挥不出作用)

    查看全部
  • 和 for 循环不同的另一种循环是 while 循环,while循环可以继续进行下去的条件更加简单,只需要判断while循环的条件是否为True即可,当条件为True时,即继续运行下去

    查看全部
    • Python函数提供可变关键字参数,对于可变关键字参数,可以通过关键字的名字key找到对应的参数值。

    • Python会把可变关键字参数当作dict去处理;对于可变关键字参数,一般使用**kwargs来表示。

      def info(**kwargs):
         print('name: {}, gender: {}, age: {}'.format(kwargs.get('name'), kwargs.get('gender'), kwargs.get('age')))

      info(name = 'Alice', gender = 'girl', age = 16)

    • 对于一个拥有必需参数,默认参数,可变参数,可变关键字参数的函数,定义顺序是这样的:

      def func(param1, param2, param3 = None, *args, **kwargs):
         print(param1)
         print(param2)
         print(param3)
         print(args)
         print(kwargs)

      func(100, 200, 300, 400, 500, name = 'Alice', score = 100)
      # ==> 100
      # ==> 200
      # ==> 300
      # ==> (400, 500)
      # ==> {'name': 'Alice', 'score': 100}

    查看全部
    • Python函数还接收一种参数叫做可变参数,可变参数即任意个参数的意思,可变参数通常使用*args来表示。

      def func(*args):
         print('args length = {}, args = {}'.format(len(args), args))

      func('a') # ==> args length = 1, args = ('a',)
      func('a', 'b') # ==> args length = 2, args = ('a', 'b')
      func('a', 'b', 'c') # ==> args length = 3, args = ('a', 'b', 'c')

    • 注意,在使用上,Python会把可变参数定义为一个tuple,所以在函数内部,把可变参数当作tuple来使用就可以了,比如可以通过位置下标取出对应的元素等。

    • 因为可变参数的长度可能是0,当长度为0的时候,就会出现除0错误。因此需要添加保护的逻辑。

    查看全部
  • def greet(name='world'):
       print ('Hello, ' + name + '.')

    greet()
    greet('Alice')

    查看全部
    • int()函数的第二个参数是转换进制base,如果不传,默认是十进制 (base=10),如果传了,就用传入的参数。

      int('123', 8) # ==> 83

    • 需要注意的是,由于函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面,否则将会出现错误。

    查看全部
  • list可以放入数字、字符串等数据类型,list不对放入其中的类型进行判断,也就是说,list可以同时放入任意类型的数据,这是Python这门语言决定的,因为Python是动态语言。

    查看全部
    • isinstance()函数,可以判断参数类型,它接收两个参数,第一个是需要判断的参数,第二个是类型。

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

    • 优化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-04-28

  • # 递归
    def my_sumB(n):
       sum = 0
       if n == 1:
           sum = n
       else:
           sum = n + my_sumB(n - 1)
       return sum

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

    2021-04-28

    • fact(n)用递归的方式写出来就是:

      def fact(n):
           if n==1:
                 return 1

            return n * fact(n - 1)

    • 递归函数的优点是定义简单,逻辑清晰。

    • 使用递归函数需要注意防止栈溢出。在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出。

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

    2021-04-28

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

      return

      因为在函数内部,把结果打印出来了,但是没有把结果返回。
      result =list_sum(l) # 调用定义的sum_list函数并获得return返回的结果
      print(result) # ==> None

    • 函数也可以返回多个值,在函数中,如果需要返回多个值,多个值之间使用逗号分隔即可,但是需要注意顺序。

      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类型,如果我们需要取出结果中的周长或者面积,使用对应位置的下标就可以获得对应的结果

      C = result[0]
      S = result[1]


    查看全部
  • 可变关键字参数,具体输入法啥关键字,其实也在方法内写明了(如names,gender等,只不过没有输入参数中写明)。

    查看全部

举报

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

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