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

初识Python

廖雪峰 移动开发工程师
难度入门
时长 5小时 0分
  • 如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释

    查看全部
  • print ('hello,python')

    print('hello,','python')

    查看全部
  • 移动开发:objc,swift/java

    硬件:c

    查看全部
  • 举个例子,我们来计算阶乘 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时需要特殊处理。

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

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

    上面就是一个递归函数。可以试试:

    >>> fact(1)
    1
    >>> fact(5)
    120
    >>> fact(100)
    93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000L

    如果我们计算fact(5),可以根据函数定义看到计算过程如下:

    ===> fact(5)
    ===> 5 * fact(4)
    ===> 5 * (4 * fact(3))
    ===> 5 * (4 * (3 * fact(2)))
    ===> 5 * (4 * (3 * (2 * fact(1))))
    ===> 5 * (4 * (3 * (2 * 1)))
    ===> 5 * (4 * (3 * 2))
    ===> 5 * (4 * 6)
    ===> 5 * 24
    ===> 120

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

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


    查看全部
  • def square_of_sum(L):

        s=0

        for x in L:

            s=s+x*x

        return s

       


    print square_of_sum([1, 2, 3, 4, 5])

    print square_of_sum([-5, 0, 5, 15, 25])


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

    查看全部
  • L = []

    x=1

    while True:

        L.append(x*x)

        x=x+1

        if x>100:

            break

    print sum(L)


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

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

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


    查看全部
  • s = set(['Adam', 'Lisa', 'Paul'])

    L = ['Adam', 'Lisa', 'Bart', 'Paul']

    for x in L:

        if x in s:

            s.remove(x)

        else:

            s.add(x)

    print s


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

    2019-03-14

  • dict 每个元素写完后别忘了加逗号进行分隔

    查看全部
  • 包含多个需要转义的字符,加r,来表示该字符串是一个raw字符串,内部的字符就不需要转义了。

    '''...''':3个单引号括起来的,用来表示多行字符,在换行处直接换行即可。

    查看全部
  • 字符串用单引号或双引号括起来,但是如果文本内容包含了单引号和双引号,就需要转义字符\:

    Bob said "I'm OK".

    'Bob said \"I\'m OK\".'

    常用的转义字符还有:

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


    查看全部
  •  if x % 2 == 0:


    查看全部
  • 前20项n>20?

    查看全部
  • python中的 while可以遍历任何序列的项目

    查看全部

举报

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

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