为了账号安全,请及时绑定邮箱和手机立即绑定
  • 继承类super用法

    super(子类, self).父类方法(父类属性1,父类属性2)

    查看全部
    0 采集 收起 来源:Python继承类

    2021-12-08

  • 匿名函数使用lambda定义:lambda x: x * x,就可以完成原来显式定义的f(x)函数的功能,

    冒号前面的x表示匿名函数的参数,

    后面的是一个表达式,

    匿名函数有个限制,就是只能有一个表达式,不写return,

    返回值就是该表达式的结果。

    查看全部
  • 对字符串排序时,有时候忽略大小写排序更符合习惯。请利用sorted()高阶函数,实现忽略大小写排序的算法。
    输入:['bob', 'about', 'Zoo', 'Credit']
    输出:['about', 'bob', 'Credit', 'Zoo']



    思路:将元素统一成小写或者大写,再排序



    sorted接受key参数,用来指定排序的字段,key的值是一个函数,接受待排序列表的元素作为参数,并返回对应需要排序的字段。

    sorted(需要排序的内容,key,reverse = True(降序)/False(升序))

    用key的内容来排序,然后一一对应到需要排序的内容予以排序。

    l5 = ['bob', 'about', 'Zoo', 'Credit']

    def name1(item):
        return item.upper()

    print(sorted(l5,key = name1))

    key的内容是l5经过函数后的内容['BOB', 'ABOUT', 'ZOO', 'CREDIT'],

    对key进行排序,得到['ABOUT', 'BOB', 'CREDIT','ZOO'],

    逐一对应给实际要排序的内容['bob', 'about', 'Zoo', 'Credit']进行排序。

    查看全部
  • filter函数

    filter(函数1,list)把list传入函数1,得到结果,进行判断,输出True的值,去掉False的值

    Python把0、空字符串和None看成False,其他数值和非空字符串都看成True

    .strip()

    删除首尾的空白字符(包括'\n', '\r', '\t', ' '),在字符串中间的不删除
    加参数则删除首尾的对应参数

    查看全部
  • from functools import reduce
    def a(x,y):
        return x * y

    l2 = [1,3,5,7,9]
    print(reduce(a,l2))



    reduce函数

    reduce(函数1(参数1,参数2),list,初始值)

    1、py3的reduce函数是在functools中,调用前需要先import

    2、reduce函数要求调用的函数是接收2个参数

    3、reduce可以设置初始值,可以不设置

    查看全部
  • map()函数

    定义函数1

    for item in map(函数1,要进行函数计算的list)

    查看全部
  • 有必要注意的是,返回函数和返回函数值的语句是非常类似的,

    返回函数时,不能带小括号,

    返回函数值时,则需要带上小括号以调用函数。

    查看全部
    1 采集 收起 来源:Python返回函数

    2021-12-06

  • __slots__的目的是限制当前类所能拥有的属性,避免因为外部属性的操作导致类属性越来越难以管理
    查看全部
  • 如果一个类表现得像一个list,想使用len()函数来获取元素个数时,则需要实现__len__()方法
    查看全部
  • 在定义 Person 类时,可以为Person类添加一个特殊的__init__()方法,当创建实例时,__init__()方法被自动调用,我们就能在此为每个实例都统一加上以下属性
    查看全部
  • with关键字对资源进行访问的场合,会确保不管在使用过程中是否发生异常,都会执行必要的“清理”的操作,释放资源,比如文件使用后自动关闭等等。

    with open(文件路径文件名,'r/w/a')as 变量名:

    查看全部
  • with关键字,对资源访问后执行清理操作,释放资源

    with open(文件路径文件名,'r/w/a')as 变量名:

    查看全部
  • with关键字,对资源访问后执行清理操作,释放资源

    with open(文件路径文件名,'r/w/a')as 变量名:

    查看全部
  • 追加内容:

    a打开文件并在末尾追加内容

    ab以二进制格式打开文件在末尾追加内容

    a+打开文件并使用追加进行读写


    追加内容后,游标是在内容末尾,此时使用readlines(),会返回空列表


    文件名.seek()

    移动文件的游标位置,它接受一个参数,表示文件的位置,

    0:文件首部,

    1:当前位置,

    2:文件尾部

    通过seek()可以把文件游标移动到文件首部但不删除文件的内容

    查看全部
  • 字符串反转可以使用切片实现: reverse = str_[::-1]

    f = open('test.txt', 'r')   #打开文件
    lines = f.readlines()       #读取文件内容,保存在lines变量中
    f1 = open('test1.txt', 'w') #打开文件2
    for line in lines:          #对line内容进行遍历
        line = line[::-1]       #对遍历的内容进行反转
        f1.write(line)          #把反转的内容写入文件2
    
    f1.close()
    f.close()
    查看全部
  • 可以把路径先定义到变量path内,后边直接调用path,文件名一定要带后缀
    如果路径不存在,会先创建文件

    path = r'E:\unittest\text.txt'  
    f = open(path,'w')
    f.write('hello,python')
    f.close()
    
    a = open(path,'r')
    b = a.read(2)  #read()括号内的数字表示要读取的字符数量
    print(b)  #输出he
    a.close()  #文件打开后一定要有关闭操作


    readline() #括号内不填写是读取一行的内容,下次执行会读取到下一行
    readlines()#读取多行的内容,返回一个list,不填写参数是返回所有行;有参数的下一次执行会顺着读取后行的内容

    readlines(hint) #1、如果hint参数小于第一行字符数,返回第一行,大于第一行字符数小于(第一行+第二行)字符数,返回第一第二行,以此类推

    2、如果读取完最后一行后又调用带hint的readlines,会返回空列表

    3、重复调用带hint的readlines时,同一行不会读取到两次,下一次的调用一定是从还未读取过的新的一行开始


    eg.

    文件内容

    hello,python
    hello,world
    hello,boys and girls

    a1 = open(path,'r')
    b1 = a1.readlines()  #hint = 12,=>['hello,python\n']
                 #hint = 13,=>['hello,python\n', 'hello,world\n']
                 #hint = 0或者-1或者空,=>['hello,python\n', 'hello,world\n', 'hello,boys and girls']
    print(b1)
    a1.close()
    a1 = open(path,'r')
    b1 = a1.readlines(12)
    b2 = a1.readlines(12)
    print(b1)
    print(b2)
    a1.close()
    
    
    #输出结果:
    #['hello,python\n']
    #['hello,world\n', 'hello,boys and girls'] 
    #b2的hint=11,输出第二行,hint>11,输出第二第三行


    如果readline和readlines同时存在

    a1 = open(path,'r')
    b1 = a1.readlines(12)
    b2 = a1.readlines(11)
    b3 = a1.readline()
    print(b1)  #=>['hello,python\n']
    print(b2)  #=>['hello,world\n']
    print(b3)  #=>hello,boys and girls
    a1.close()


    如果read,readline,readlines同时存在

    a1 = open(path,'r')
    b3 = a1.read(2)
    b1 = a1.readline(30)
    b2 = a1.readlines(11)
    print(b3)
    print(b1)
    print(b2)
    a1.close()
    
    输出结果
    he
    llo,python
    
    ['hello,world\n']

    readline和readlines会从read读取后剩下的字符开始读取,readlines对字符的计数也是从剩下的开始

    查看全部
  • while True:
        s = input('>>> ')
        if s == 'break':  #不输入break,则会一直处于进行计算状态
            break
        result = eval(s)
        print(result)

    eval()

    可以将字符串转化为等值结果

    eval(expression[, globals[, locals]])

    参数

    expression -- 表达式。

    globals -- 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。locals -- 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。


    返回值

    返回表达式计算结果。

    查看全部

举报

0/150
提交
取消
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

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