zoukankan      html  css  js  c++  java
  • 你看看

    Python面试重点(基础篇)

    ### 第一部分 必答题(每题2分)

    1.

    简述列举了解的编程语言及语言间的区别?

    语言分为解释型语言和编译型语言,编译型语言主要的代表有c语言,解释型语言主要代表有python。

    编译型语言一次编译永久执行,不支持跨平台。安全性好。

    解释型语言每次执行都需要执行一遍源代码,安全性比较低,支持跨平台。运行效率低

    2.

    列举Python2和Python3的区别?

    1) print不再是语句,而是函数,比如原来是 print 'abc' 现在是 print('abc')但是 python2.6+ 可以使用 from future import print_function 来实现相同功能>

    2) 在Python 3中,没有旧式类,只有新式类,也就是说不用再像这样 class Foobar(object): pass 显式地子类化object但是最好还是加上. 主要区别在于 old-style 是 classtype 类型而 new-style 是 type类型>

    3) 原来1/2(两个整数相除)结果是0,现在是0.5了python 2.2+ 以上都可以使用 from future import division 实现改特性, 同时注意 // 取代了之前的 / 运算>

    5)

    4) 新的字符串格式化方法format取代%错误, 从 python2.6+ 开始已经在str和unicode中有该方法, 同时 python3依然支持 % 算符>

    6) xrange重命名为range同时更改的还有一系列内置函数及方法, 都返回迭代器对象, 而不是列表或者 元组, 比如 filter, map, dict.items 等>

    3.

    看代码写结果

    v1 = 1 or 2

    v2 = 3 and 7 or 9 and 0

    答:

    1

    7

    4.

    比较以下值有什么不同?

    v1 = [1, 2, 3]

    v2 = [(1), (2), (3)]

    v3 = [(1,), (2,), (3,)]

    v1和v2一样,v3是列表里面套元组

    5.

    用一行代码实现数值交换。

    a = 1

    b = 2

    a,b=b,a

    6.

    Python中单引号、双引号、三引号的区别?

    单引号和双引号都是表示字符串,单双引号嵌套时要交替着用,否则会混淆,并且只能引一行的内容。而三引号可以引多行

    7.

    is和 == 的区别?

    is 是比较地址和内容

    == 是比较内容

    8.

    python里如何实现tuple和list的转化?

    list(tuple)

    tuple(list)

    9.

    如何实现字符串

    name = '老男孩' #的反转?

    name = name[::-1]

    print(name)

    10.

    两个set如何获取交集、并集、差集?

    a=set('abc')

    b=set('bcd')

    c=a&b

    d=a|b

    e=a-b

    print(c,d,e)

    11.

    那些情况下, y != x - (x - y)

    会成立?

    x,y 是集合

    12.

    Python中如何拷贝一个对象?

    copy.copy(拷贝对象) 浅拷贝

    copy.deepcopy(拷贝对象) 深拷贝

    13.

    简述

    赋值、浅拷贝、深拷贝的区别?

    赋值是改变变量的指向

    浅拷贝是和赋值是一样的

    深拷贝是完全的赋值一份,地址和之前的不一样了

    14.

    pass的作用?

    一条空的语句,什么也不执行

    15.

    阅读代码写结果。

    import copy

    a = [1, 2, 4, 5, ['b', 'c']]

    b = a

    c = copy.copy(a)

    d = copy.deepcopy(a)

    a.append(5)

    a[4].append('d')

    print(b) # [1, 2, 4, 5, ['b', 'c','d'],5]

    print(c) # [1, 2, 4, 5, ['b', 'c','d'],5]

    print(a) # [1, 2, 4, 5, ['b', 'c','d'],5]

    16.

    用Python实现9 * 9

    乘法表。

    for i in range(1,10):

    for j in range(1,i+1):

    print(i*j)

  • 相关阅读:
    python面试题总结与分析(一)
    Word2vec ------算法岗面试题
    深度学习(二)-----算法岗面试题
    深度学习(一)-------算法岗面试题
    模型融合和提升的算法------算法面试题
    前后端交互3 发送消息1
    前后端交互2 vuex存储token
    前后端交互1
    4.弹出层组件的实现与封装
    3. 聊天列表页面的实现
  • 原文地址:https://www.cnblogs.com/wing3993/p/12366082.html
Copyright © 2011-2022 走看看