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

初识Python

廖雪峰 移动开发工程师
难度入门
时长 5小时 0分
  • 递归函数:在函数内部调用自身本身

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

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

    查看全部
  • u'''...'''表示输入多行中文字符串

    可以和r'''...'''连用

    写为ur'''...'''

    查看全部
  • 编写定义一个函数用def语句,依次写出函数名,括号,括号中的参数和冒号:,在缩进快编写函数体,用return返回

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

    函数内部语句一旦执行到return,函数就执行完毕,并返回结果

    因此,函数内部通过条件判断和循环可以实现非常复杂的逻辑。如果没有return语句,函数执行完毕后也会返回结果,只是结果为 None。return None可以简写为return。


    查看全部
  • 函数调用:需要知道函数的名称和参数

    参数数量或参数类型不对时,会有TypeError报错.str是错误的参数类型

    abs()绝对值函数,参数有且只有一个,

    cmp(x,y)比较函数,参数有两个,如果 x<y,返回 -1,如果 x==y,返回 0,如果 x>y,返回 1

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

    查看全部
  • 函数调用

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

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


    查看全部
  • set存储的是一组不重复的无序元素

    用add()可以直接添加,而remove()前需要判断。

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

    2019-08-21

  • 使用r'''...'''可以显示多行字符串,不用/n表示换行,并包含'和"字符串

    查看全部
  • items() 方法把dict对象转换成了包含tuple的list

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

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

    2019-08-21

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

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

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


    如果事先创建好一个set,包含'MON' ~ 'SUN':

    weekdays = set(['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN'])

    再判断输入是否有效,只需要判断该字符串是否在set中:

    x = '???' # 用户输入的字符串if x in weekdays:
        print 'input ok'else:
        print 'input error'


    查看全部
  • 由于set存储的是无序集合,所以我们没法通过索引来访问。访问 set中的某个元素实际上就是判断一个元素是否在set中,我们可以用 in 操作符判断:


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

    2019-08-21

  • enumerate()函数把t变成tuple,然后index和name分别调用t的第一个第二个元素

    查看全部
    0 采集 收起 来源:索引迭代

    2019-08-21

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

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

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

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

    可以查看 set 的内容:

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

    请注意,上述打印的形式类似 list, 但它不是 list,仔细看还可以发现,打印的顺序和原始 list 的顺序有可能是不同的,因为set内部存储的元素是无序的。

    因为set不能包含重复的元素,所以,当我们传入包含重复元素的 list时,set会自动去掉重复的元素

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

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

    由于dict是按 key 查找,所以,在一个dict中,key不能重复。

    dict的第二个特点就是存储的key-value序对是没有顺序的!

    打印的顺序不一定是我们创建时的顺序,而且,不同的机器打印的顺序都可能不同,这说明dict内部是无序的,不能用dict存储有序的集合

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

    查看全部
  • 可以简单地使用 d[key] 的形式来查找对应的 value,这和 list 很像,不同之处是,list 必须使用索引返回对应的元素,而dict使用key:

    注意: 通过 key 访问 dict 的value,只要 key 存在,dict就返回对应的value。如果key不存在,会直接报错:KeyError。

    要避免 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

    2019-08-21

举报

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

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