美文网首页python社区
python面试篇(一)

python面试篇(一)

作者: C语言中文社区 | 来源:发表于2019-03-05 21:25 被阅读67次

    1.代码中要修改不可变数据会出现什么问题? 抛出什么异常?

    代码不会正常运行,抛出TypeError 异常。

    2.a=1,b=2,不用中间变量交换a 和b 的值?

    • 方法一:
    1. a = a+b
    2. b = a-b
    3. a = a-b
    
    • 方法二:
    1. a = a^b
    2. b =b^a
    3. a = a^b
    
    • 方法三:
    1. a,b = b,a
    

    3.print 调用Python 中底层的什么方法?

    print 方法默认调用sys.stdout.write 方法,即往控制台打印字符串。

    4.下面这段代码的输出结果将是什么?请解释?

    class Parent(object):
        x = 1
    class Child1(Parent):
        pass
    class Child2(Parent):
        pass
    print Parent.x, Child1.x, Child2.x
    Child1.x = 2
    print parent.x, Child1.x, Child2.x
    parent.x = 3
    print Parent.x, Child1.x, Child2.x
    

    结果为:
    1 1 1 #继承自父类的类属性x,所以都一样,指向同一块内存地址。
    1 2 1 #更改Child1,Child1 的x 指向了新的内存地址。
    3 2 3 #更改Parent,Parent 的x 指向了新的内存地址。

    5.简述你对input()函数的理解?

    在Python3 中,input()获取用户输入,不论用户输入的是什么,获取到的都是字符串类型的。
    在Python2 中有raw_input()和input(), raw_input()和Python3 中的input()作用是一样的,
    input()输入的是什么数据类型的,获取到的就是什么数据类型的。

    相关文章

      网友评论

        本文标题:python面试篇(一)

        本文链接:https://www.haomeiwen.com/subject/vyrauqtx.html