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

Python3 入门教程(新版)

咚咚呛 全栈工程师
难度入门
时长 4小时24分
  • 1.6Python中raw字符串与多行字符串

    如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀r,表示这是一个 raw 字符串,里面的字符就不需要转义了。

    但是r'...'表示法不能表示多行字符串,也不能表示包含'和 "的字符串。

    如果要表示多行字符串,可以用'''...'''表示。

    还可以在多行字符串前面添加r,把这个多行字符串也变成一个raw字符串。

    查看全部
  • 1.5Python的字符串

    字符串可以用' '或者" "括起来表示。

    如果字符串本身包含'怎么办?比如我们要表示字符串 I'm OK ,这时,可以用" "括起来表示,如果字符串包含",我们就可以用' '括起来表示。

    如果字符串既包含'又包含",就需要对字符串中的某些特殊字符进行“转义”,Python字符串用\进行转义。

    注意:转义字符 \不计入字符串的内容中。

    要表示字符串Bob said "I'm OK"

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

    常用的转义字符还有:

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

    查看全部
    0 采集 收起 来源:Python的字符串

    2021-10-06

  • 5-1什么是容器、什么是list

    在程序中,容器是一种可以把多个元素放在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in等关键字判断某个元素是否包含在容器中。

    在Python中,包括列表(list)、元组(tuple)、字典(dict)、集合(set)等,他们都可以放入多个元素,因此都可以算作是容器,这些容器是Python编程中非常重要的数据结构。

    list

    列表(list)是一种有序的容器,使用中括号[]把需要放在容器里面的元素括起来,就定义了一个列表。

    list可以放入数字、字符串等数据类型,list不对放入其中的类型进行判断,也就是说,list可以同时放入任意类型的数据。

    查看全部
  • dict提供keys()函数,可以返回dict中所有的key。

    dict提供values()函数,可以返回dict中所有的value。

    dict提供clear()函数,可以直接清除dict中所有的元素。

    查看全部
  • 常用的转义字符还有:

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

    查看全部
    0 采集 收起 来源:Python的字符串

    2021-10-05

  • 需要注意的是,not计算的优先级是高于and和or的。

    查看全部
  • dict查找速度快但占用内存大;list查找速度慢但占内存小

    ditct元素无序

    key不可变,因此tuple可做key,list不可

    keys()会返回所有key

    items()会返回dict中所有元素,每个元素包含key和value

    查看全部
  • pop()方法需要指定需要删除的元素的key,并返回对应的value。但key不存在时,pop会引发错误。

    查看全部
  • list可用extend()一次添加多个元素

    查看全部
  • dict是可变的

    查看全部
  • dict提供通过key找到对应value的功能,通过d[key]的形式,就可以得到对应的value。

    dict本身提供get方法,把key当作参数传递给get方法,就可以获取对应的value,当key不存在时,也不会报错,而是返回None。

    查看全部
  • 函数会把可变参数当作tuple去处理,tuple在使用上有一定的局限性。

    比如有时候想找到特定位置的参数,只能通过下标的方式去寻找,如果顺序发生变化得时候,下标就会失效,函数逻辑就得重新修改实现。

    Python函数提供可变关键字参数,对于可变关键字参数,可以通过关键字的名字key找到对应的参数值。Python会把可变关键字参数当作dict去处理;对于可变关键字参数,一般使用**kwargs来表示。

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

    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)

    这么多类型的参数,很容易导致出错,在实际使用上,不建议定义这么多的参数。

    任务:

    # 编写一个函数,它接受关键字参数names,gender,age三个list,分别包含同学的名字、性别和年龄,请分别把每个同学的名字、性别和年龄打印出来。

    # Enter a code
    def info(**kwargs):
        tamplate = "name: {}, gender: {}, age: {}"
        name_list = kwargs.get('name')
        gender_list = kwargs.get('gender')
        age_list = kwargs.get('age')
        for i in range(len(name_list)):
            print(tamplate.format(name_list[i], gender_list[i], age_list[i]))
    names = ['Alice', 'Ash', 'Amy', 'Eloit', 'Himmy']
    genders = ['girl', 'boy', 'girl', 'boy', 'boy']
    ages = [13, 12, 14, 17, 14]
    info(name = names, gender = genders, age = ages)
    查看全部
  • 除了默认参数,Python函数还接收一种参数叫做可变参数,可变参数即任意个参数的意思,可变参数通常使用*args来表示。

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

    定义可变参数的目的也是为了简化调用

    可变参数的长度可能是0,当长度为0的时候,就会出现除0错误

    因此需要添加保护的逻辑,这是同学在使用过程中需要特别注意的。


    任务:

    # 请完善average()函数,使得当可变参数长度为0的时候,也能正确返回结果。

    # Enter a code
    def average(*args):
        if len(args) != 0:
            sums = sum(args) + 0.0
            avg = sums / len(args)
            return avg
        else:
            return 0
    print(average())
    print(average(1, 2))
    print(average(1, 2, 2, 3, 4))
    查看全部
  • 定义函数的时候,还可以有默认参数,默认参数的意思是当这个参数没有传递的时候,参数就使用定义时的默认值。

    Python自带的 int() 函数,其实就有两个参数,我们既可以传一个参数,又可以传两个参数。int()函数的第二个参数是转换进制base,如果不传,默认是十进制 (base=10),如果传了,就用传入的参数。函数的默认参数的作用是简化调用。

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

    def power(x, n=2):

    任务:

    # 请定义一个 greet() 函数,它包含一个默认参数,如果没有传入参数,打印 Hello, world.,如果传入参数,打印Hello, 传入的参数内容.

    # Enter a code
    def greet(s = "world"):
        tamplate = 'Hello,{x}.'
        print(tamplate.format(x = s))
    greet()
    greet("Lv")
    查看全部
  • 函数参数是需要传递给函数内部的数据。

    函数参数可以是任意的数据类型,只要函数内部逻辑可以处理即可。

    为了保证函数的正常运行,有时候需要对函数入参进行类型的校验。

    Python提供isinstance()函数,可以判断参数类型,它接收两个参数,第一个是需要判断的参数,第二个是类型。

    isinstance(100, int) # ==> True

    任务:

    # 请实现函数func,当参数类型为list时,返回list中所有数字类型元素的和,当参数类型为tuple时,返回tuple中所有数字类型元素的乘积。

    # Enter a code
    def func(lt):
        if isinstance(lt, list):
            num_sum = 0
            for x in lt:
                if isinstance(x, int) or isinstance(x, float):
                    num_sum += x
            return num_sum
        if isinstance(lt, tuple):
            num_mul = 1
            for y in lt:
                if isinstance(y, int) or isinstance(y, float):
                    num_mul += y
            return num_mul
        return None
    L = ['areg', 1, 3, 5, 'a', 4]
    T = ('sh', 2, 3, 4, 0, 'fs')
    lt = func(L)
    tp = func(T)
    print(lt, tp)
    查看全部
    0 采集 收起 来源:Python函数参数

    2021-10-04

举报

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

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