zoukankan      html  css  js  c++  java
  • Python 面试1

    作者: GD_SeHun 
    链接:http://www.imooc.com/article/2367
    来源:慕课网

    1. 

    阅读下面的代码,写出A0,A1至An的最终值。

    A0 = dict(zip(('a','b','c','d','e'),(1,2,3,4,5)))
    A1 = range(10)
    A2 = [i for i in A1 if i in A0]
    A3 = [A0[s] for s in A0]
    A4 = [i for i in A1 if i in A3]
    A5 = {i:i*i for i in A1}
    A6 = [[i,i*i] for i in A1]

    2. 

    这两个参数是什么意思:*args**kwargs?我们为什么要使用它们?

    如果我们不确定要往函数中传入多少个参数,或者我们想往函数中以列表和元组的形式传参数时,那就使要用*args;如果我们不知道要往函数中传入多少个关键词参数,或者想传入字典的值作为关键词参数时,那就要使用**kwargsargskwargs这两个标识符是约定俗成的用法,你当然还可以用*bob**billy,但是这样就并不太妥

     

    3. 

    下面这些是什么意思:@classmethod@staticmethod@property


    这些都是装饰器(decorator)。装饰器是一种特殊的函数,要么接受函数作为输入参数,并返回一个函数,要么接受一个类作为输入参数,并返回一个类。@标记是语法糖(syntactic sugar),可以让你以简单易读得方式装饰目标对象

    @classmethod@staticmethod@property 这三个装饰器的使用对象是在类中定义的函数。下面的例子展示了它们

    4.

    random = [random.random() for i in range(100000)]

    产生 (0-1)内的随机数, 一共 100000 个

    5.

    lambda 函数

    lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数

    lambda函数:首要用途是指点短小的回调函数

    lambda [arguments]:expression

    >>> a=lambdax,y:x+y

    >>> a(3,11)

    6.

    re 模块; regular expression 模块

     


     



  • 相关阅读:
    encodeURIComponent与encodeURI的区别
    css实现强制不换行/自动换行/强制换行
    浏览器的visibilitychange 事件ie10以下不兼容
    判断IE版本的语句 [if lte IE 6]...[endif]
    jQueryr .on方法解析
    js判断IE6(推荐方法一)
    JS判断设备终端(PC,iPad,iPhone,android,winPhone)和浏览器
    js判断手机浏览器
    js数字格式化-四舍五入精简版
    jQuery scroll(滚动)延迟加载
  • 原文地址:https://www.cnblogs.com/morningdew/p/6053936.html
Copyright © 2011-2022 走看看