zoukankan      html  css  js  c++  java
  • python小例子(二)

    1.在函数里面修改全局变量的值

    2.合并两个字典、删除字典中的值

     3.python2和python3 range(1000)的区别

    python2返回列表,python3返回迭代器

    4.什么样的语言可以使用装饰器?

    函数可以作为参数传递的语言。

    5.python内置数据类型有哪些?

    整型(Int)、布尔型(bool)、字符串(str)、列表(list)、元组(tuple)、字典(dict)

    6.__init__和__new__的区别?

    (1)__init__时初始化方法,创建对象后,就立刻被默认调用了,可接收参数;

    (2)__new__必须要有一个参数cls,代表当期类,此参数在实例化时由python解释器自动识别;

    (3)__new__必须要有返回值,有两种:super(当前类名,cls).__new__,或Object.__new__(cls)

    (4)如果__new__创建的是当前类的实例,会自动调用__init_函数,通过return语句里的调用的__new__函数的第一个参数是cls来保证是当前类实例,如果是其他类的类名,那么实际创建返回的就是其他类的实例,其实就是不会调用当前类的__init__函数,也不会调用其他类的__init__函数。

    class A(object):
        def __init__(self):
            print("这是init方法",self)
        def __new__(cls, *args, **kwargs):
            print('这是cls的id',id(cls))
            print('这是New方法',object.__new__(cls))
            return super(A,cls).__new__(cls)
    A()
    print('这是类A的id',id(A))

     7.用with方法打开处理文件时帮我们做了什么?

    打开文件进行读写的时候可能出现一些异常情况,如果按照常规的open方法,我们需要用try except finally做异常判断,并且文件不管遇到什么情况,我们都需要执行finally f.close()关闭文件,with方法帮我们实现了finally中f.close()(还有一些其它自定义功能)。

    f=open(" xx.txt","wb")
    try:
        f.write("welcome")
    except:
        pass
    finally:
        f.close()

    8.列表[1,2,3,4,5],使用map()函数输出[1,4,9,16.25],并用列表推导式退出大于10的数,最终输出[16,25]

    ’map(func,list):将list中的每个元素进行func操作,并返回

    a=[1,2,3,4,5]
    b=list(map(lambda x:x*x,a))
    print(b)
    c=[x for x in b if x>10]
    print(c)

    9.生成随机整数、随机小数、0-1之间的数

    import random
    import numpy as np
    #生成10-20之间的一个整数
    a=random.randint(10,20)
    #生成五个随机小数
    b=np.random.randn(5)
    #生成0-1随机小数
    c=random.random()

     10.正则表达式的使用:<div class='name'>中国</div>匹配出"中国"

    import re
    s="<div class='name'>中国</div>"
    tmp="<div class='.*'>(.*?)</div>"
    res=re.findall(tmp,s)
    print(res)

    输出:["中国"]

    11.python中断言(assert),如断言成功,程序继续运行,断言失败,则程序报错

    a=3
    assert(a>1)
    print(‘断言成功,程序运行到这’)

    12.python2和python3的区别?说出五个

    (1)python3 print必须带括号

    (2)python3 range返回迭代器,python2返回列表

    (3)python3默认使用utf-8编码,python2使用ACSII编码

    (4)python3中str表示字符串序列,byte表示字节序列;python2中unicode表示字符串序列,str表示字节序列

    (5)python2中为显示中文,需引入coding声明,python3中不需要;

    (6)python3中输入是input,python2中是raw_input

    13.用lambda实现两个数相乘

     输出:12

    14.对字典按键或值进行排序

     输出:

    [(1, 'd'), (2, 'a'), (3, 'b')]
    [(2, 'a'), (3, 'b'), (1, 'd')]

    15.利用collections中的Counter计算每个元素出现的个数

     输出:Counter({'s': 3, 'd': 3, 'a': 2, 'g': 2, 'c': 1, 'f': 1})

    16.字符串a = "not 404 found 张三 99 深圳",每个词中间是空格,用正则过滤掉英文和数字,最终输出"张三  深圳"

     17.filter函数:传入的第一个值是函数,第二个是列表

     

     输出:[1,3,5]

    18.列表推导式

     输出:[1,3,5]

    19.自定义抛出异常

     输出:数字大于2

    20.正则表达式匹配中,(.*)和(.*?)匹配区别?

    (.*)是贪婪匹配,会把满足正则的尽可能多的往后匹配

    (.*?)是非贪婪匹配,会把满足正则的尽可能少匹配

  • 相关阅读:
    AD域渗透测试笔记
    ctf之WEB练习一
    CTF之crpto练习三
    ctf之WEB练习二
    ctf之WEB练习三
    [转]Ant学习笔记——自己构建Ant编译环境
    [转]【NoSQL】NoSQL入门级资料整理(CAP原理、最终一致性)
    啥叫异步调用
    C++中虚函数的作用是什么?它应该怎么用呢?
    [转]Thrift连接池实现
  • 原文地址:https://www.cnblogs.com/xiximayou/p/11729318.html
Copyright © 2011-2022 走看看